diff --git a/packages/google-cloud-redis-cluster/README.md b/packages/google-cloud-redis-cluster/README.md index 669e64aa4190..5fc350c1cdda 100644 --- a/packages/google-cloud-redis-cluster/README.md +++ b/packages/google-cloud-redis-cluster/README.md @@ -73,7 +73,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | list clusters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1/cloud_redis_cluster.list_clusters.js) | | reschedule cluster maintenance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1/cloud_redis_cluster.reschedule_cluster_maintenance.js) | | update cluster | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1/cloud_redis_cluster.update_cluster.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1/snippet_metadata_google.cloud.redis.cluster.v1.json) | | backup cluster | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1beta1/cloud_redis_cluster.backup_cluster.js) | | create cluster | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1beta1/cloud_redis_cluster.create_cluster.js) | | delete backup | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1beta1/cloud_redis_cluster.delete_backup.js) | @@ -89,7 +88,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | list clusters | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1beta1/cloud_redis_cluster.list_clusters.js) | | reschedule cluster maintenance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1beta1/cloud_redis_cluster.reschedule_cluster_maintenance.js) | | update cluster | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1beta1/cloud_redis_cluster.update_cluster.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis-cluster/samples/generated/v1beta1/snippet_metadata_google.cloud.redis.cluster.v1beta1.json) | ## Supported Node.js Versions diff --git a/packages/google-cloud-redis-cluster/protos/protos.js b/packages/google-cloud-redis-cluster/protos/protos.js index dd14c18f7240..5cf74fb1f8be 100644 --- a/packages/google-cloud-redis-cluster/protos/protos.js +++ b/packages/google-cloud-redis-cluster/protos/protos.js @@ -738,7 +738,7 @@ function CreateClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -833,9 +833,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateClusterRequest.decode = function decode(reader, length, error) { + CreateClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.CreateClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -851,7 +855,7 @@ break; } case 3: { - message.cluster = $root.google.cloud.redis.cluster.v1.Cluster.decode(reader, reader.uint32()); + message.cluster = $root.google.cloud.redis.cluster.v1.Cluster.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -859,7 +863,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -890,9 +894,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateClusterRequest.verify = function verify(message) { + CreateClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -900,7 +908,7 @@ if (!$util.isString(message.clusterId)) return "clusterId: string expected"; if (message.cluster != null && message.hasOwnProperty("cluster")) { - var error = $root.google.cloud.redis.cluster.v1.Cluster.verify(message.cluster); + var error = $root.google.cloud.redis.cluster.v1.Cluster.verify(message.cluster, long + 1); if (error) return "cluster." + error; } @@ -918,9 +926,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.CreateClusterRequest} CreateClusterRequest */ - CreateClusterRequest.fromObject = function fromObject(object) { + CreateClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.CreateClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.CreateClusterRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -929,7 +941,7 @@ if (object.cluster != null) { if (typeof object.cluster !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CreateClusterRequest.cluster: object expected"); - message.cluster = $root.google.cloud.redis.cluster.v1.Cluster.fromObject(object.cluster); + message.cluster = $root.google.cloud.redis.cluster.v1.Cluster.fromObject(object.cluster, long + 1); } if (object.requestId != null) message.requestId = String(object.requestId); @@ -1017,7 +1029,7 @@ function ListClustersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1102,9 +1114,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListClustersRequest.decode = function decode(reader, length, error) { + ListClustersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ListClustersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1124,7 +1140,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1155,9 +1171,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListClustersRequest.verify = function verify(message) { + ListClustersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -1178,9 +1198,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ListClustersRequest} ListClustersRequest */ - ListClustersRequest.fromObject = function fromObject(object) { + ListClustersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ListClustersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ListClustersRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -1271,7 +1295,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1358,9 +1382,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListClustersResponse.decode = function decode(reader, length, error) { + ListClustersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ListClustersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1370,7 +1398,7 @@ case 1: { if (!(message.clusters && message.clusters.length)) message.clusters = []; - message.clusters.push($root.google.cloud.redis.cluster.v1.Cluster.decode(reader, reader.uint32())); + message.clusters.push($root.google.cloud.redis.cluster.v1.Cluster.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -1384,7 +1412,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1415,14 +1443,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListClustersResponse.verify = function verify(message) { + ListClustersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.clusters != null && message.hasOwnProperty("clusters")) { if (!Array.isArray(message.clusters)) return "clusters: array expected"; for (var i = 0; i < message.clusters.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.Cluster.verify(message.clusters[i]); + var error = $root.google.cloud.redis.cluster.v1.Cluster.verify(message.clusters[i], long + 1); if (error) return "clusters." + error; } @@ -1448,9 +1480,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ListClustersResponse} ListClustersResponse */ - ListClustersResponse.fromObject = function fromObject(object) { + ListClustersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ListClustersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ListClustersResponse(); if (object.clusters) { if (!Array.isArray(object.clusters)) @@ -1459,7 +1495,7 @@ for (var i = 0; i < object.clusters.length; ++i) { if (typeof object.clusters[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ListClustersResponse.clusters: object expected"); - message.clusters[i] = $root.google.cloud.redis.cluster.v1.Cluster.fromObject(object.clusters[i]); + message.clusters[i] = $root.google.cloud.redis.cluster.v1.Cluster.fromObject(object.clusters[i], long + 1); } } if (object.nextPageToken != null) @@ -1559,7 +1595,7 @@ function UpdateClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1644,9 +1680,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateClusterRequest.decode = function decode(reader, length, error) { + UpdateClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.UpdateClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1654,11 +1694,11 @@ break; switch (tag >>> 3) { case 1: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.cluster = $root.google.cloud.redis.cluster.v1.Cluster.decode(reader, reader.uint32()); + message.cluster = $root.google.cloud.redis.cluster.v1.Cluster.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -1666,7 +1706,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1697,16 +1737,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateClusterRequest.verify = function verify(message) { + UpdateClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } if (message.cluster != null && message.hasOwnProperty("cluster")) { - var error = $root.google.cloud.redis.cluster.v1.Cluster.verify(message.cluster); + var error = $root.google.cloud.redis.cluster.v1.Cluster.verify(message.cluster, long + 1); if (error) return "cluster." + error; } @@ -1724,19 +1768,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.UpdateClusterRequest} UpdateClusterRequest */ - UpdateClusterRequest.fromObject = function fromObject(object) { + UpdateClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.UpdateClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.UpdateClusterRequest(); if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.redis.cluster.v1.UpdateClusterRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.cluster != null) { if (typeof object.cluster !== "object") throw TypeError(".google.cloud.redis.cluster.v1.UpdateClusterRequest.cluster: object expected"); - message.cluster = $root.google.cloud.redis.cluster.v1.Cluster.fromObject(object.cluster); + message.cluster = $root.google.cloud.redis.cluster.v1.Cluster.fromObject(object.cluster, long + 1); } if (object.requestId != null) message.requestId = String(object.requestId); @@ -1819,7 +1867,7 @@ function GetClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1884,9 +1932,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetClusterRequest.decode = function decode(reader, length, error) { + GetClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.GetClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1898,7 +1950,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1929,9 +1981,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetClusterRequest.verify = function verify(message) { + GetClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -1946,9 +2002,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.GetClusterRequest} GetClusterRequest */ - GetClusterRequest.fromObject = function fromObject(object) { + GetClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.GetClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.GetClusterRequest(); if (object.name != null) message.name = String(object.name); @@ -2025,7 +2085,7 @@ function DeleteClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2100,9 +2160,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteClusterRequest.decode = function decode(reader, length, error) { + DeleteClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.DeleteClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2118,7 +2182,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2149,9 +2213,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteClusterRequest.verify = function verify(message) { + DeleteClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -2169,9 +2237,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.DeleteClusterRequest} DeleteClusterRequest */ - DeleteClusterRequest.fromObject = function fromObject(object) { + DeleteClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.DeleteClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.DeleteClusterRequest(); if (object.name != null) message.name = String(object.name); @@ -2253,7 +2325,7 @@ function GetClusterCertificateAuthorityRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2318,9 +2390,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetClusterCertificateAuthorityRequest.decode = function decode(reader, length, error) { + GetClusterCertificateAuthorityRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.GetClusterCertificateAuthorityRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2332,7 +2408,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2363,9 +2439,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetClusterCertificateAuthorityRequest.verify = function verify(message) { + GetClusterCertificateAuthorityRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -2380,9 +2460,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.GetClusterCertificateAuthorityRequest} GetClusterCertificateAuthorityRequest */ - GetClusterCertificateAuthorityRequest.fromObject = function fromObject(object) { + GetClusterCertificateAuthorityRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.GetClusterCertificateAuthorityRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.GetClusterCertificateAuthorityRequest(); if (object.name != null) message.name = String(object.name); @@ -2460,7 +2544,7 @@ function ListBackupCollectionsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2545,9 +2629,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBackupCollectionsRequest.decode = function decode(reader, length, error) { + ListBackupCollectionsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ListBackupCollectionsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2567,7 +2655,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2598,9 +2686,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBackupCollectionsRequest.verify = function verify(message) { + ListBackupCollectionsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -2621,9 +2713,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ListBackupCollectionsRequest} ListBackupCollectionsRequest */ - ListBackupCollectionsRequest.fromObject = function fromObject(object) { + ListBackupCollectionsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ListBackupCollectionsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ListBackupCollectionsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -2714,7 +2810,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2801,9 +2897,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBackupCollectionsResponse.decode = function decode(reader, length, error) { + ListBackupCollectionsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ListBackupCollectionsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2813,7 +2913,7 @@ case 1: { if (!(message.backupCollections && message.backupCollections.length)) message.backupCollections = []; - message.backupCollections.push($root.google.cloud.redis.cluster.v1.BackupCollection.decode(reader, reader.uint32())); + message.backupCollections.push($root.google.cloud.redis.cluster.v1.BackupCollection.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -2827,7 +2927,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2858,14 +2958,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBackupCollectionsResponse.verify = function verify(message) { + ListBackupCollectionsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.backupCollections != null && message.hasOwnProperty("backupCollections")) { if (!Array.isArray(message.backupCollections)) return "backupCollections: array expected"; for (var i = 0; i < message.backupCollections.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.BackupCollection.verify(message.backupCollections[i]); + var error = $root.google.cloud.redis.cluster.v1.BackupCollection.verify(message.backupCollections[i], long + 1); if (error) return "backupCollections." + error; } @@ -2891,9 +2995,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ListBackupCollectionsResponse} ListBackupCollectionsResponse */ - ListBackupCollectionsResponse.fromObject = function fromObject(object) { + ListBackupCollectionsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ListBackupCollectionsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ListBackupCollectionsResponse(); if (object.backupCollections) { if (!Array.isArray(object.backupCollections)) @@ -2902,7 +3010,7 @@ for (var i = 0; i < object.backupCollections.length; ++i) { if (typeof object.backupCollections[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ListBackupCollectionsResponse.backupCollections: object expected"); - message.backupCollections[i] = $root.google.cloud.redis.cluster.v1.BackupCollection.fromObject(object.backupCollections[i]); + message.backupCollections[i] = $root.google.cloud.redis.cluster.v1.BackupCollection.fromObject(object.backupCollections[i], long + 1); } } if (object.nextPageToken != null) @@ -3000,7 +3108,7 @@ function GetBackupCollectionRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3065,9 +3173,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBackupCollectionRequest.decode = function decode(reader, length, error) { + GetBackupCollectionRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.GetBackupCollectionRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3079,7 +3191,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3110,9 +3222,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetBackupCollectionRequest.verify = function verify(message) { + GetBackupCollectionRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -3127,9 +3243,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.GetBackupCollectionRequest} GetBackupCollectionRequest */ - GetBackupCollectionRequest.fromObject = function fromObject(object) { + GetBackupCollectionRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.GetBackupCollectionRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.GetBackupCollectionRequest(); if (object.name != null) message.name = String(object.name); @@ -3207,7 +3327,7 @@ function ListBackupsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3292,9 +3412,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBackupsRequest.decode = function decode(reader, length, error) { + ListBackupsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ListBackupsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3314,7 +3438,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3345,9 +3469,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBackupsRequest.verify = function verify(message) { + ListBackupsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -3368,9 +3496,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ListBackupsRequest} ListBackupsRequest */ - ListBackupsRequest.fromObject = function fromObject(object) { + ListBackupsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ListBackupsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ListBackupsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -3461,7 +3593,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3548,9 +3680,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBackupsResponse.decode = function decode(reader, length, error) { + ListBackupsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ListBackupsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3560,7 +3696,7 @@ case 1: { if (!(message.backups && message.backups.length)) message.backups = []; - message.backups.push($root.google.cloud.redis.cluster.v1.Backup.decode(reader, reader.uint32())); + message.backups.push($root.google.cloud.redis.cluster.v1.Backup.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -3574,7 +3710,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3605,14 +3741,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBackupsResponse.verify = function verify(message) { + ListBackupsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.backups != null && message.hasOwnProperty("backups")) { if (!Array.isArray(message.backups)) return "backups: array expected"; for (var i = 0; i < message.backups.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.Backup.verify(message.backups[i]); + var error = $root.google.cloud.redis.cluster.v1.Backup.verify(message.backups[i], long + 1); if (error) return "backups." + error; } @@ -3638,9 +3778,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ListBackupsResponse} ListBackupsResponse */ - ListBackupsResponse.fromObject = function fromObject(object) { + ListBackupsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ListBackupsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ListBackupsResponse(); if (object.backups) { if (!Array.isArray(object.backups)) @@ -3649,7 +3793,7 @@ for (var i = 0; i < object.backups.length; ++i) { if (typeof object.backups[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ListBackupsResponse.backups: object expected"); - message.backups[i] = $root.google.cloud.redis.cluster.v1.Backup.fromObject(object.backups[i]); + message.backups[i] = $root.google.cloud.redis.cluster.v1.Backup.fromObject(object.backups[i], long + 1); } } if (object.nextPageToken != null) @@ -3747,7 +3891,7 @@ function GetBackupRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3812,9 +3956,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBackupRequest.decode = function decode(reader, length, error) { + GetBackupRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.GetBackupRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3826,7 +3974,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3857,9 +4005,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetBackupRequest.verify = function verify(message) { + GetBackupRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -3874,9 +4026,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.GetBackupRequest} GetBackupRequest */ - GetBackupRequest.fromObject = function fromObject(object) { + GetBackupRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.GetBackupRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.GetBackupRequest(); if (object.name != null) message.name = String(object.name); @@ -3953,7 +4109,7 @@ function DeleteBackupRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4028,9 +4184,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteBackupRequest.decode = function decode(reader, length, error) { + DeleteBackupRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.DeleteBackupRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4046,7 +4206,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4077,9 +4237,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteBackupRequest.verify = function verify(message) { + DeleteBackupRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -4097,9 +4261,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.DeleteBackupRequest} DeleteBackupRequest */ - DeleteBackupRequest.fromObject = function fromObject(object) { + DeleteBackupRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.DeleteBackupRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.DeleteBackupRequest(); if (object.name != null) message.name = String(object.name); @@ -4182,7 +4350,7 @@ function ExportBackupRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4271,9 +4439,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportBackupRequest.decode = function decode(reader, length, error) { + ExportBackupRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ExportBackupRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4289,7 +4461,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4320,9 +4492,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportBackupRequest.verify = function verify(message) { + ExportBackupRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsBucket != null && message.hasOwnProperty("gcsBucket")) { properties.destination = 1; @@ -4343,9 +4519,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ExportBackupRequest} ExportBackupRequest */ - ExportBackupRequest.fromObject = function fromObject(object) { + ExportBackupRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ExportBackupRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ExportBackupRequest(); if (object.gcsBucket != null) message.gcsBucket = String(object.gcsBucket); @@ -4430,7 +4610,7 @@ function BackupClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4524,9 +4704,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BackupClusterRequest.decode = function decode(reader, length, error) { + BackupClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.BackupClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4538,7 +4722,7 @@ break; } case 2: { - message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -4546,7 +4730,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4577,15 +4761,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BackupClusterRequest.verify = function verify(message) { + BackupClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.ttl != null && message.hasOwnProperty("ttl")) { - var error = $root.google.protobuf.Duration.verify(message.ttl); + var error = $root.google.protobuf.Duration.verify(message.ttl, long + 1); if (error) return "ttl." + error; } @@ -4605,16 +4793,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.BackupClusterRequest} BackupClusterRequest */ - BackupClusterRequest.fromObject = function fromObject(object) { + BackupClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.BackupClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.BackupClusterRequest(); if (object.name != null) message.name = String(object.name); if (object.ttl != null) { if (typeof object.ttl !== "object") throw TypeError(".google.cloud.redis.cluster.v1.BackupClusterRequest.ttl: object expected"); - message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl); + message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl, long + 1); } if (object.backupId != null) message.backupId = String(object.backupId); @@ -4737,7 +4929,7 @@ this.clusterEndpoints = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5214,9 +5406,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Cluster.decode = function decode(reader, length, error) { + Cluster.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.Cluster(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -5224,11 +5420,11 @@ break; switch (tag >>> 3) { case 34: { - message.gcsSource = $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 35: { - message.managedBackupSource = $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource.decode(reader, reader.uint32()); + message.managedBackupSource = $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -5236,7 +5432,7 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -5270,23 +5466,23 @@ case 15: { if (!(message.pscConfigs && message.pscConfigs.length)) message.pscConfigs = []; - message.pscConfigs.push($root.google.cloud.redis.cluster.v1.PscConfig.decode(reader, reader.uint32())); + message.pscConfigs.push($root.google.cloud.redis.cluster.v1.PscConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 16: { if (!(message.discoveryEndpoints && message.discoveryEndpoints.length)) message.discoveryEndpoints = []; - message.discoveryEndpoints.push($root.google.cloud.redis.cluster.v1.DiscoveryEndpoint.decode(reader, reader.uint32())); + message.discoveryEndpoints.push($root.google.cloud.redis.cluster.v1.DiscoveryEndpoint.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 17: { if (!(message.pscConnections && message.pscConnections.length)) message.pscConnections = []; - message.pscConnections.push($root.google.cloud.redis.cluster.v1.PscConnection.decode(reader, reader.uint32())); + message.pscConnections.push($root.google.cloud.redis.cluster.v1.PscConnection.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 18: { - message.stateInfo = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.decode(reader, reader.uint32()); + message.stateInfo = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -5294,7 +5490,7 @@ break; } case 20: { - message.persistenceConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.decode(reader, reader.uint32()); + message.persistenceConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 21: { @@ -5313,10 +5509,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.redisConfigs, key); message.redisConfigs[key] = value; break; } @@ -5325,11 +5523,11 @@ break; } case 23: { - message.zoneDistributionConfig = $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig.decode(reader, reader.uint32()); + message.zoneDistributionConfig = $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.crossClusterReplicationConfig = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.decode(reader, reader.uint32()); + message.crossClusterReplicationConfig = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { @@ -5337,23 +5535,23 @@ break; } case 26: { - message.maintenancePolicy = $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.decode(reader, reader.uint32()); + message.maintenancePolicy = $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.maintenanceSchedule = $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule.decode(reader, reader.uint32()); + message.maintenanceSchedule = $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 30: { if (!(message.pscServiceAttachments && message.pscServiceAttachments.length)) message.pscServiceAttachments = []; - message.pscServiceAttachments.push($root.google.cloud.redis.cluster.v1.PscServiceAttachment.decode(reader, reader.uint32())); + message.pscServiceAttachments.push($root.google.cloud.redis.cluster.v1.PscServiceAttachment.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 36: { if (!(message.clusterEndpoints && message.clusterEndpoints.length)) message.clusterEndpoints = []; - message.clusterEndpoints.push($root.google.cloud.redis.cluster.v1.ClusterEndpoint.decode(reader, reader.uint32())); + message.clusterEndpoints.push($root.google.cloud.redis.cluster.v1.ClusterEndpoint.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 39: { @@ -5365,11 +5563,11 @@ break; } case 42: { - message.automatedBackupConfig = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.decode(reader, reader.uint32()); + message.automatedBackupConfig = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 43: { - message.encryptionInfo = $root.google.cloud.redis.cluster.v1.EncryptionInfo.decode(reader, reader.uint32()); + message.encryptionInfo = $root.google.cloud.redis.cluster.v1.EncryptionInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 53: { @@ -5385,7 +5583,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5416,14 +5614,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Cluster.verify = function verify(message) { + Cluster.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsSource != null && message.hasOwnProperty("gcsSource")) { properties.importSources = 1; { - var error = $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource.verify(message.gcsSource); + var error = $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -5433,7 +5635,7 @@ return "importSources: multiple values"; properties.importSources = 1; { - var error = $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource.verify(message.managedBackupSource); + var error = $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource.verify(message.managedBackupSource, long + 1); if (error) return "managedBackupSource." + error; } @@ -5442,7 +5644,7 @@ if (!$util.isString(message.name)) return "name: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -5497,7 +5699,7 @@ if (!Array.isArray(message.pscConfigs)) return "pscConfigs: array expected"; for (var i = 0; i < message.pscConfigs.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.PscConfig.verify(message.pscConfigs[i]); + var error = $root.google.cloud.redis.cluster.v1.PscConfig.verify(message.pscConfigs[i], long + 1); if (error) return "pscConfigs." + error; } @@ -5506,7 +5708,7 @@ if (!Array.isArray(message.discoveryEndpoints)) return "discoveryEndpoints: array expected"; for (var i = 0; i < message.discoveryEndpoints.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.DiscoveryEndpoint.verify(message.discoveryEndpoints[i]); + var error = $root.google.cloud.redis.cluster.v1.DiscoveryEndpoint.verify(message.discoveryEndpoints[i], long + 1); if (error) return "discoveryEndpoints." + error; } @@ -5515,13 +5717,13 @@ if (!Array.isArray(message.pscConnections)) return "pscConnections: array expected"; for (var i = 0; i < message.pscConnections.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.PscConnection.verify(message.pscConnections[i]); + var error = $root.google.cloud.redis.cluster.v1.PscConnection.verify(message.pscConnections[i], long + 1); if (error) return "pscConnections." + error; } } if (message.stateInfo != null && message.hasOwnProperty("stateInfo")) { - var error = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.verify(message.stateInfo); + var error = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.verify(message.stateInfo, long + 1); if (error) return "stateInfo." + error; } @@ -5540,7 +5742,7 @@ break; } if (message.persistenceConfig != null && message.hasOwnProperty("persistenceConfig")) { - var error = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.verify(message.persistenceConfig); + var error = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.verify(message.persistenceConfig, long + 1); if (error) return "persistenceConfig." + error; } @@ -5558,12 +5760,12 @@ return "preciseSizeGb: number expected"; } if (message.zoneDistributionConfig != null && message.hasOwnProperty("zoneDistributionConfig")) { - var error = $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig.verify(message.zoneDistributionConfig); + var error = $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig.verify(message.zoneDistributionConfig, long + 1); if (error) return "zoneDistributionConfig." + error; } if (message.crossClusterReplicationConfig != null && message.hasOwnProperty("crossClusterReplicationConfig")) { - var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.verify(message.crossClusterReplicationConfig); + var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.verify(message.crossClusterReplicationConfig, long + 1); if (error) return "crossClusterReplicationConfig." + error; } @@ -5575,7 +5777,7 @@ if (message.maintenancePolicy != null && message.hasOwnProperty("maintenancePolicy")) { properties._maintenancePolicy = 1; { - var error = $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.verify(message.maintenancePolicy); + var error = $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.verify(message.maintenancePolicy, long + 1); if (error) return "maintenancePolicy." + error; } @@ -5583,7 +5785,7 @@ if (message.maintenanceSchedule != null && message.hasOwnProperty("maintenanceSchedule")) { properties._maintenanceSchedule = 1; { - var error = $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule.verify(message.maintenanceSchedule); + var error = $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule.verify(message.maintenanceSchedule, long + 1); if (error) return "maintenanceSchedule." + error; } @@ -5592,7 +5794,7 @@ if (!Array.isArray(message.pscServiceAttachments)) return "pscServiceAttachments: array expected"; for (var i = 0; i < message.pscServiceAttachments.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.PscServiceAttachment.verify(message.pscServiceAttachments[i]); + var error = $root.google.cloud.redis.cluster.v1.PscServiceAttachment.verify(message.pscServiceAttachments[i], long + 1); if (error) return "pscServiceAttachments." + error; } @@ -5601,7 +5803,7 @@ if (!Array.isArray(message.clusterEndpoints)) return "clusterEndpoints: array expected"; for (var i = 0; i < message.clusterEndpoints.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.ClusterEndpoint.verify(message.clusterEndpoints[i]); + var error = $root.google.cloud.redis.cluster.v1.ClusterEndpoint.verify(message.clusterEndpoints[i], long + 1); if (error) return "clusterEndpoints." + error; } @@ -5617,12 +5819,12 @@ return "kmsKey: string expected"; } if (message.automatedBackupConfig != null && message.hasOwnProperty("automatedBackupConfig")) { - var error = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.verify(message.automatedBackupConfig); + var error = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.verify(message.automatedBackupConfig, long + 1); if (error) return "automatedBackupConfig." + error; } if (message.encryptionInfo != null && message.hasOwnProperty("encryptionInfo")) { - var error = $root.google.cloud.redis.cluster.v1.EncryptionInfo.verify(message.encryptionInfo); + var error = $root.google.cloud.redis.cluster.v1.EncryptionInfo.verify(message.encryptionInfo, long + 1); if (error) return "encryptionInfo." + error; } @@ -5659,26 +5861,30 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.Cluster} Cluster */ - Cluster.fromObject = function fromObject(object) { + Cluster.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.Cluster) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.Cluster(); if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource.fromObject(object.gcsSource, long + 1); } if (object.managedBackupSource != null) { if (typeof object.managedBackupSource !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.managedBackupSource: object expected"); - message.managedBackupSource = $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource.fromObject(object.managedBackupSource); + message.managedBackupSource = $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource.fromObject(object.managedBackupSource, long + 1); } if (object.name != null) message.name = String(object.name); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } switch (object.state) { default: @@ -5763,7 +5969,7 @@ for (var i = 0; i < object.pscConfigs.length; ++i) { if (typeof object.pscConfigs[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.pscConfigs: object expected"); - message.pscConfigs[i] = $root.google.cloud.redis.cluster.v1.PscConfig.fromObject(object.pscConfigs[i]); + message.pscConfigs[i] = $root.google.cloud.redis.cluster.v1.PscConfig.fromObject(object.pscConfigs[i], long + 1); } } if (object.discoveryEndpoints) { @@ -5773,7 +5979,7 @@ for (var i = 0; i < object.discoveryEndpoints.length; ++i) { if (typeof object.discoveryEndpoints[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.discoveryEndpoints: object expected"); - message.discoveryEndpoints[i] = $root.google.cloud.redis.cluster.v1.DiscoveryEndpoint.fromObject(object.discoveryEndpoints[i]); + message.discoveryEndpoints[i] = $root.google.cloud.redis.cluster.v1.DiscoveryEndpoint.fromObject(object.discoveryEndpoints[i], long + 1); } } if (object.pscConnections) { @@ -5783,13 +5989,13 @@ for (var i = 0; i < object.pscConnections.length; ++i) { if (typeof object.pscConnections[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.pscConnections: object expected"); - message.pscConnections[i] = $root.google.cloud.redis.cluster.v1.PscConnection.fromObject(object.pscConnections[i]); + message.pscConnections[i] = $root.google.cloud.redis.cluster.v1.PscConnection.fromObject(object.pscConnections[i], long + 1); } } if (object.stateInfo != null) { if (typeof object.stateInfo !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.stateInfo: object expected"); - message.stateInfo = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.fromObject(object.stateInfo); + message.stateInfo = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.fromObject(object.stateInfo, long + 1); } switch (object.nodeType) { default: @@ -5834,38 +6040,41 @@ if (object.persistenceConfig != null) { if (typeof object.persistenceConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.persistenceConfig: object expected"); - message.persistenceConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.fromObject(object.persistenceConfig); + message.persistenceConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.fromObject(object.persistenceConfig, long + 1); } if (object.redisConfigs) { if (typeof object.redisConfigs !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.redisConfigs: object expected"); message.redisConfigs = {}; - for (var keys = Object.keys(object.redisConfigs), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.redisConfigs), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.redisConfigs, keys[i]); message.redisConfigs[keys[i]] = String(object.redisConfigs[keys[i]]); + } } if (object.preciseSizeGb != null) message.preciseSizeGb = Number(object.preciseSizeGb); if (object.zoneDistributionConfig != null) { if (typeof object.zoneDistributionConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.zoneDistributionConfig: object expected"); - message.zoneDistributionConfig = $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig.fromObject(object.zoneDistributionConfig); + message.zoneDistributionConfig = $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig.fromObject(object.zoneDistributionConfig, long + 1); } if (object.crossClusterReplicationConfig != null) { if (typeof object.crossClusterReplicationConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.crossClusterReplicationConfig: object expected"); - message.crossClusterReplicationConfig = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.fromObject(object.crossClusterReplicationConfig); + message.crossClusterReplicationConfig = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.fromObject(object.crossClusterReplicationConfig, long + 1); } if (object.deletionProtectionEnabled != null) message.deletionProtectionEnabled = Boolean(object.deletionProtectionEnabled); if (object.maintenancePolicy != null) { if (typeof object.maintenancePolicy !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.maintenancePolicy: object expected"); - message.maintenancePolicy = $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.fromObject(object.maintenancePolicy); + message.maintenancePolicy = $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.fromObject(object.maintenancePolicy, long + 1); } if (object.maintenanceSchedule != null) { if (typeof object.maintenanceSchedule !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.maintenanceSchedule: object expected"); - message.maintenanceSchedule = $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule.fromObject(object.maintenanceSchedule); + message.maintenanceSchedule = $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule.fromObject(object.maintenanceSchedule, long + 1); } if (object.pscServiceAttachments) { if (!Array.isArray(object.pscServiceAttachments)) @@ -5874,7 +6083,7 @@ for (var i = 0; i < object.pscServiceAttachments.length; ++i) { if (typeof object.pscServiceAttachments[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.pscServiceAttachments: object expected"); - message.pscServiceAttachments[i] = $root.google.cloud.redis.cluster.v1.PscServiceAttachment.fromObject(object.pscServiceAttachments[i]); + message.pscServiceAttachments[i] = $root.google.cloud.redis.cluster.v1.PscServiceAttachment.fromObject(object.pscServiceAttachments[i], long + 1); } } if (object.clusterEndpoints) { @@ -5884,7 +6093,7 @@ for (var i = 0; i < object.clusterEndpoints.length; ++i) { if (typeof object.clusterEndpoints[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.clusterEndpoints: object expected"); - message.clusterEndpoints[i] = $root.google.cloud.redis.cluster.v1.ClusterEndpoint.fromObject(object.clusterEndpoints[i]); + message.clusterEndpoints[i] = $root.google.cloud.redis.cluster.v1.ClusterEndpoint.fromObject(object.clusterEndpoints[i], long + 1); } } if (object.backupCollection != null) @@ -5894,12 +6103,12 @@ if (object.automatedBackupConfig != null) { if (typeof object.automatedBackupConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.automatedBackupConfig: object expected"); - message.automatedBackupConfig = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.fromObject(object.automatedBackupConfig); + message.automatedBackupConfig = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.fromObject(object.automatedBackupConfig, long + 1); } if (object.encryptionInfo != null) { if (typeof object.encryptionInfo !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.encryptionInfo: object expected"); - message.encryptionInfo = $root.google.cloud.redis.cluster.v1.EncryptionInfo.fromObject(object.encryptionInfo); + message.encryptionInfo = $root.google.cloud.redis.cluster.v1.EncryptionInfo.fromObject(object.encryptionInfo, long + 1); } switch (object.serverCaMode) { default: @@ -6020,8 +6229,11 @@ var keys2; if (message.redisConfigs && (keys2 = Object.keys(message.redisConfigs)).length) { object.redisConfigs = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.redisConfigs, keys2[j]); object.redisConfigs[keys2[j]] = message.redisConfigs[keys2[j]]; + } } if (message.preciseSizeGb != null && message.hasOwnProperty("preciseSizeGb")) { object.preciseSizeGb = options.json && !isFinite(message.preciseSizeGb) ? String(message.preciseSizeGb) : message.preciseSizeGb; @@ -6145,7 +6357,7 @@ function StateInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6224,9 +6436,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StateInfo.decode = function decode(reader, length, error) { + StateInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.Cluster.StateInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6234,11 +6450,11 @@ break; switch (tag >>> 3) { case 1: { - message.updateInfo = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo.decode(reader, reader.uint32()); + message.updateInfo = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6269,14 +6485,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StateInfo.verify = function verify(message) { + StateInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.updateInfo != null && message.hasOwnProperty("updateInfo")) { properties.info = 1; { - var error = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo.verify(message.updateInfo); + var error = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo.verify(message.updateInfo, long + 1); if (error) return "updateInfo." + error; } @@ -6292,14 +6512,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.Cluster.StateInfo} StateInfo */ - StateInfo.fromObject = function fromObject(object) { + StateInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.Cluster.StateInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.Cluster.StateInfo(); if (object.updateInfo != null) { if (typeof object.updateInfo !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Cluster.StateInfo.updateInfo: object expected"); - message.updateInfo = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo.fromObject(object.updateInfo); + message.updateInfo = $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo.fromObject(object.updateInfo, long + 1); } return message; }; @@ -6372,7 +6596,7 @@ function UpdateInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6462,9 +6686,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateInfo.decode = function decode(reader, length, error) { + UpdateInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6480,7 +6708,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6511,9 +6739,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateInfo.verify = function verify(message) { + UpdateInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.targetShardCount != null && message.hasOwnProperty("targetShardCount")) { properties._targetShardCount = 1; @@ -6536,9 +6768,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo} UpdateInfo */ - UpdateInfo.fromObject = function fromObject(object) { + UpdateInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.Cluster.StateInfo.UpdateInfo(); if (object.targetShardCount != null) message.targetShardCount = object.targetShardCount | 0; @@ -6626,7 +6862,7 @@ this.uris = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6692,9 +6928,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsBackupSource.decode = function decode(reader, length, error) { + GcsBackupSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6708,7 +6948,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6739,9 +6979,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsBackupSource.verify = function verify(message) { + GcsBackupSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uris != null && message.hasOwnProperty("uris")) { if (!Array.isArray(message.uris)) return "uris: array expected"; @@ -6760,9 +7004,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.Cluster.GcsBackupSource} GcsBackupSource */ - GcsBackupSource.fromObject = function fromObject(object) { + GcsBackupSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.Cluster.GcsBackupSource(); if (object.uris) { if (!Array.isArray(object.uris)) @@ -6846,7 +7094,7 @@ function ManagedBackupSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6911,9 +7159,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ManagedBackupSource.decode = function decode(reader, length, error) { + ManagedBackupSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6925,7 +7177,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6956,9 +7208,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ManagedBackupSource.verify = function verify(message) { + ManagedBackupSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.backup != null && message.hasOwnProperty("backup")) if (!$util.isString(message.backup)) return "backup: string expected"; @@ -6973,9 +7229,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource} ManagedBackupSource */ - ManagedBackupSource.fromObject = function fromObject(object) { + ManagedBackupSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.Cluster.ManagedBackupSource(); if (object.backup != null) message.backup = String(object.backup); @@ -7076,7 +7336,7 @@ function AutomatedBackupConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7181,9 +7441,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AutomatedBackupConfig.decode = function decode(reader, length, error) { + AutomatedBackupConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7191,7 +7455,7 @@ break; switch (tag >>> 3) { case 2: { - message.fixedFrequencySchedule = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule.decode(reader, reader.uint32()); + message.fixedFrequencySchedule = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -7199,11 +7463,11 @@ break; } case 3: { - message.retention = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.retention = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7234,14 +7498,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AutomatedBackupConfig.verify = function verify(message) { + AutomatedBackupConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.fixedFrequencySchedule != null && message.hasOwnProperty("fixedFrequencySchedule")) { properties.schedule = 1; { - var error = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule.verify(message.fixedFrequencySchedule); + var error = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule.verify(message.fixedFrequencySchedule, long + 1); if (error) return "fixedFrequencySchedule." + error; } @@ -7258,7 +7526,7 @@ if (message.retention != null && message.hasOwnProperty("retention")) { properties._retention = 1; { - var error = $root.google.protobuf.Duration.verify(message.retention); + var error = $root.google.protobuf.Duration.verify(message.retention, long + 1); if (error) return "retention." + error; } @@ -7274,14 +7542,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.AutomatedBackupConfig} AutomatedBackupConfig */ - AutomatedBackupConfig.fromObject = function fromObject(object) { + AutomatedBackupConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig(); if (object.fixedFrequencySchedule != null) { if (typeof object.fixedFrequencySchedule !== "object") throw TypeError(".google.cloud.redis.cluster.v1.AutomatedBackupConfig.fixedFrequencySchedule: object expected"); - message.fixedFrequencySchedule = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule.fromObject(object.fixedFrequencySchedule); + message.fixedFrequencySchedule = $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule.fromObject(object.fixedFrequencySchedule, long + 1); } switch (object.automatedBackupMode) { default: @@ -7306,7 +7578,7 @@ if (object.retention != null) { if (typeof object.retention !== "object") throw TypeError(".google.cloud.redis.cluster.v1.AutomatedBackupConfig.retention: object expected"); - message.retention = $root.google.protobuf.Duration.fromObject(object.retention); + message.retention = $root.google.protobuf.Duration.fromObject(object.retention, long + 1); } return message; }; @@ -7387,7 +7659,7 @@ function FixedFrequencySchedule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7461,9 +7733,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FixedFrequencySchedule.decode = function decode(reader, length, error) { + FixedFrequencySchedule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7471,11 +7747,11 @@ break; switch (tag >>> 3) { case 2: { - message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32()); + message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7506,14 +7782,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FixedFrequencySchedule.verify = function verify(message) { + FixedFrequencySchedule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.startTime != null && message.hasOwnProperty("startTime")) { properties._startTime = 1; { - var error = $root.google.type.TimeOfDay.verify(message.startTime); + var error = $root.google.type.TimeOfDay.verify(message.startTime, long + 1); if (error) return "startTime." + error; } @@ -7529,14 +7809,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule} FixedFrequencySchedule */ - FixedFrequencySchedule.fromObject = function fromObject(object) { + FixedFrequencySchedule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.AutomatedBackupConfig.FixedFrequencySchedule.startTime: object expected"); - message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime); + message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime, long + 1); } return message; }; @@ -7634,7 +7918,7 @@ function BackupCollection(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7739,9 +8023,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BackupCollection.decode = function decode(reader, length, error) { + BackupCollection.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.BackupCollection(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7769,7 +8057,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7800,9 +8088,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BackupCollection.verify = function verify(message) { + BackupCollection.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -7829,9 +8121,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.BackupCollection} BackupCollection */ - BackupCollection.fromObject = function fromObject(object) { + BackupCollection.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.BackupCollection) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.BackupCollection(); if (object.name != null) message.name = String(object.name); @@ -7943,7 +8239,7 @@ this.backupFiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8149,9 +8445,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Backup.decode = function decode(reader, length, error) { + Backup.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.Backup(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8163,7 +8463,7 @@ break; } case 2: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -8179,7 +8479,7 @@ break; } case 6: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -8189,7 +8489,7 @@ case 8: { if (!(message.backupFiles && message.backupFiles.length)) message.backupFiles = []; - message.backupFiles.push($root.google.cloud.redis.cluster.v1.BackupFile.decode(reader, reader.uint32())); + message.backupFiles.push($root.google.cloud.redis.cluster.v1.BackupFile.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 9: { @@ -8213,7 +8513,7 @@ break; } case 14: { - message.encryptionInfo = $root.google.cloud.redis.cluster.v1.EncryptionInfo.decode(reader, reader.uint32()); + message.encryptionInfo = $root.google.cloud.redis.cluster.v1.EncryptionInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { @@ -8221,7 +8521,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8252,14 +8552,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Backup.verify = function verify(message) { + Backup.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -8273,7 +8577,7 @@ if (!$util.isInteger(message.totalSizeBytes) && !(message.totalSizeBytes && $util.isInteger(message.totalSizeBytes.low) && $util.isInteger(message.totalSizeBytes.high))) return "totalSizeBytes: integer|Long expected"; if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -8284,7 +8588,7 @@ if (!Array.isArray(message.backupFiles)) return "backupFiles: array expected"; for (var i = 0; i < message.backupFiles.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.BackupFile.verify(message.backupFiles[i]); + var error = $root.google.cloud.redis.cluster.v1.BackupFile.verify(message.backupFiles[i], long + 1); if (error) return "backupFiles." + error; } @@ -8330,7 +8634,7 @@ break; } if (message.encryptionInfo != null && message.hasOwnProperty("encryptionInfo")) { - var error = $root.google.cloud.redis.cluster.v1.EncryptionInfo.verify(message.encryptionInfo); + var error = $root.google.cloud.redis.cluster.v1.EncryptionInfo.verify(message.encryptionInfo, long + 1); if (error) return "encryptionInfo." + error; } @@ -8348,16 +8652,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.Backup} Backup */ - Backup.fromObject = function fromObject(object) { + Backup.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.Backup) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.Backup(); if (object.name != null) message.name = String(object.name); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Backup.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.cluster != null) message.cluster = String(object.cluster); @@ -8375,7 +8683,7 @@ if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Backup.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.engineVersion != null) message.engineVersion = String(object.engineVersion); @@ -8386,7 +8694,7 @@ for (var i = 0; i < object.backupFiles.length; ++i) { if (typeof object.backupFiles[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Backup.backupFiles: object expected"); - message.backupFiles[i] = $root.google.cloud.redis.cluster.v1.BackupFile.fromObject(object.backupFiles[i]); + message.backupFiles[i] = $root.google.cloud.redis.cluster.v1.BackupFile.fromObject(object.backupFiles[i], long + 1); } } switch (object.nodeType) { @@ -8484,7 +8792,7 @@ if (object.encryptionInfo != null) { if (typeof object.encryptionInfo !== "object") throw TypeError(".google.cloud.redis.cluster.v1.Backup.encryptionInfo: object expected"); - message.encryptionInfo = $root.google.cloud.redis.cluster.v1.EncryptionInfo.fromObject(object.encryptionInfo); + message.encryptionInfo = $root.google.cloud.redis.cluster.v1.EncryptionInfo.fromObject(object.encryptionInfo, long + 1); } if (object.uid != null) message.uid = String(object.uid); @@ -8652,7 +8960,7 @@ function BackupFile(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8737,9 +9045,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BackupFile.decode = function decode(reader, length, error) { + BackupFile.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.BackupFile(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8755,11 +9067,11 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8790,9 +9102,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BackupFile.verify = function verify(message) { + BackupFile.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fileName != null && message.hasOwnProperty("fileName")) if (!$util.isString(message.fileName)) return "fileName: string expected"; @@ -8800,7 +9116,7 @@ if (!$util.isInteger(message.sizeBytes) && !(message.sizeBytes && $util.isInteger(message.sizeBytes.low) && $util.isInteger(message.sizeBytes.high))) return "sizeBytes: integer|Long expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -8815,9 +9131,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.BackupFile} BackupFile */ - BackupFile.fromObject = function fromObject(object) { + BackupFile.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.BackupFile) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.BackupFile(); if (object.fileName != null) message.fileName = String(object.fileName); @@ -8833,7 +9153,7 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.BackupFile.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } return message; }; @@ -8922,7 +9242,7 @@ function PscServiceAttachment(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8997,9 +9317,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PscServiceAttachment.decode = function decode(reader, length, error) { + PscServiceAttachment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.PscServiceAttachment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9015,7 +9339,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9046,9 +9370,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PscServiceAttachment.verify = function verify(message) { + PscServiceAttachment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.serviceAttachment != null && message.hasOwnProperty("serviceAttachment")) if (!$util.isString(message.serviceAttachment)) return "serviceAttachment: string expected"; @@ -9073,9 +9401,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.PscServiceAttachment} PscServiceAttachment */ - PscServiceAttachment.fromObject = function fromObject(object) { + PscServiceAttachment.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.PscServiceAttachment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.PscServiceAttachment(); if (object.serviceAttachment != null) message.serviceAttachment = String(object.serviceAttachment); @@ -9184,7 +9516,7 @@ this.secondaryClusters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9290,9 +9622,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CrossClusterReplicationConfig.decode = function decode(reader, length, error) { + CrossClusterReplicationConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9304,25 +9640,25 @@ break; } case 2: { - message.primaryCluster = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32()); + message.primaryCluster = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { if (!(message.secondaryClusters && message.secondaryClusters.length)) message.secondaryClusters = []; - message.secondaryClusters.push($root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32())); + message.secondaryClusters.push($root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.membership = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership.decode(reader, reader.uint32()); + message.membership = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9353,9 +9689,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CrossClusterReplicationConfig.verify = function verify(message) { + CrossClusterReplicationConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.clusterRole != null && message.hasOwnProperty("clusterRole")) switch (message.clusterRole) { default: @@ -9367,7 +9707,7 @@ break; } if (message.primaryCluster != null && message.hasOwnProperty("primaryCluster")) { - var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.verify(message.primaryCluster); + var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.verify(message.primaryCluster, long + 1); if (error) return "primaryCluster." + error; } @@ -9375,18 +9715,18 @@ if (!Array.isArray(message.secondaryClusters)) return "secondaryClusters: array expected"; for (var i = 0; i < message.secondaryClusters.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.verify(message.secondaryClusters[i]); + var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.verify(message.secondaryClusters[i], long + 1); if (error) return "secondaryClusters." + error; } } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.membership != null && message.hasOwnProperty("membership")) { - var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership.verify(message.membership); + var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership.verify(message.membership, long + 1); if (error) return "membership." + error; } @@ -9401,9 +9741,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.CrossClusterReplicationConfig} CrossClusterReplicationConfig */ - CrossClusterReplicationConfig.fromObject = function fromObject(object) { + CrossClusterReplicationConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig(); switch (object.clusterRole) { default: @@ -9432,7 +9776,7 @@ if (object.primaryCluster != null) { if (typeof object.primaryCluster !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.primaryCluster: object expected"); - message.primaryCluster = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.primaryCluster); + message.primaryCluster = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.primaryCluster, long + 1); } if (object.secondaryClusters) { if (!Array.isArray(object.secondaryClusters)) @@ -9441,18 +9785,18 @@ for (var i = 0; i < object.secondaryClusters.length; ++i) { if (typeof object.secondaryClusters[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.secondaryClusters: object expected"); - message.secondaryClusters[i] = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.secondaryClusters[i]); + message.secondaryClusters[i] = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.secondaryClusters[i], long + 1); } } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.membership != null) { if (typeof object.membership !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.membership: object expected"); - message.membership = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership.fromObject(object.membership); + message.membership = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership.fromObject(object.membership, long + 1); } return message; }; @@ -9541,7 +9885,7 @@ function RemoteCluster(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9616,9 +9960,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoteCluster.decode = function decode(reader, length, error) { + RemoteCluster.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9634,7 +9982,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9665,9 +10013,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoteCluster.verify = function verify(message) { + RemoteCluster.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cluster != null && message.hasOwnProperty("cluster")) if (!$util.isString(message.cluster)) return "cluster: string expected"; @@ -9685,9 +10037,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster} RemoteCluster */ - RemoteCluster.fromObject = function fromObject(object) { + RemoteCluster.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster(); if (object.cluster != null) message.cluster = String(object.cluster); @@ -9771,7 +10127,7 @@ this.secondaryClusters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9847,9 +10203,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Membership.decode = function decode(reader, length, error) { + Membership.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9857,17 +10217,17 @@ break; switch (tag >>> 3) { case 1: { - message.primaryCluster = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32()); + message.primaryCluster = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { if (!(message.secondaryClusters && message.secondaryClusters.length)) message.secondaryClusters = []; - message.secondaryClusters.push($root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32())); + message.secondaryClusters.push($root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9898,11 +10258,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Membership.verify = function verify(message) { + Membership.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.primaryCluster != null && message.hasOwnProperty("primaryCluster")) { - var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.verify(message.primaryCluster); + var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.verify(message.primaryCluster, long + 1); if (error) return "primaryCluster." + error; } @@ -9910,7 +10274,7 @@ if (!Array.isArray(message.secondaryClusters)) return "secondaryClusters: array expected"; for (var i = 0; i < message.secondaryClusters.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.verify(message.secondaryClusters[i]); + var error = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.verify(message.secondaryClusters[i], long + 1); if (error) return "secondaryClusters." + error; } @@ -9926,14 +10290,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership} Membership */ - Membership.fromObject = function fromObject(object) { + Membership.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership(); if (object.primaryCluster != null) { if (typeof object.primaryCluster !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership.primaryCluster: object expected"); - message.primaryCluster = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.primaryCluster); + message.primaryCluster = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.primaryCluster, long + 1); } if (object.secondaryClusters) { if (!Array.isArray(object.secondaryClusters)) @@ -9942,7 +10310,7 @@ for (var i = 0; i < object.secondaryClusters.length; ++i) { if (typeof object.secondaryClusters[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.Membership.secondaryClusters: object expected"); - message.secondaryClusters[i] = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.secondaryClusters[i]); + message.secondaryClusters[i] = $root.google.cloud.redis.cluster.v1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.secondaryClusters[i], long + 1); } } return message; @@ -10048,7 +10416,7 @@ this.weeklyMaintenanceWindow = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10134,9 +10502,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterMaintenancePolicy.decode = function decode(reader, length, error) { + ClusterMaintenancePolicy.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10144,21 +10516,21 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { if (!(message.weeklyMaintenanceWindow && message.weeklyMaintenanceWindow.length)) message.weeklyMaintenanceWindow = []; - message.weeklyMaintenanceWindow.push($root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow.decode(reader, reader.uint32())); + message.weeklyMaintenanceWindow.push($root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10189,16 +10561,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterMaintenancePolicy.verify = function verify(message) { + ClusterMaintenancePolicy.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -10206,7 +10582,7 @@ if (!Array.isArray(message.weeklyMaintenanceWindow)) return "weeklyMaintenanceWindow: array expected"; for (var i = 0; i < message.weeklyMaintenanceWindow.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow.verify(message.weeklyMaintenanceWindow[i]); + var error = $root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow.verify(message.weeklyMaintenanceWindow[i], long + 1); if (error) return "weeklyMaintenanceWindow." + error; } @@ -10222,19 +10598,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ClusterMaintenancePolicy} ClusterMaintenancePolicy */ - ClusterMaintenancePolicy.fromObject = function fromObject(object) { + ClusterMaintenancePolicy.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ClusterMaintenancePolicy(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.weeklyMaintenanceWindow) { if (!Array.isArray(object.weeklyMaintenanceWindow)) @@ -10243,7 +10623,7 @@ for (var i = 0; i < object.weeklyMaintenanceWindow.length; ++i) { if (typeof object.weeklyMaintenanceWindow[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterMaintenancePolicy.weeklyMaintenanceWindow: object expected"); - message.weeklyMaintenanceWindow[i] = $root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow.fromObject(object.weeklyMaintenanceWindow[i]); + message.weeklyMaintenanceWindow[i] = $root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow.fromObject(object.weeklyMaintenanceWindow[i], long + 1); } } return message; @@ -10330,7 +10710,7 @@ function ClusterWeeklyMaintenanceWindow(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10405,9 +10785,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterWeeklyMaintenanceWindow.decode = function decode(reader, length, error) { + ClusterWeeklyMaintenanceWindow.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10419,11 +10803,11 @@ break; } case 2: { - message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32()); + message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10454,9 +10838,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterWeeklyMaintenanceWindow.verify = function verify(message) { + ClusterWeeklyMaintenanceWindow.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.day != null && message.hasOwnProperty("day")) switch (message.day) { default: @@ -10472,7 +10860,7 @@ break; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.type.TimeOfDay.verify(message.startTime); + var error = $root.google.type.TimeOfDay.verify(message.startTime, long + 1); if (error) return "startTime." + error; } @@ -10487,9 +10875,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow} ClusterWeeklyMaintenanceWindow */ - ClusterWeeklyMaintenanceWindow.fromObject = function fromObject(object) { + ClusterWeeklyMaintenanceWindow.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow(); switch (object.day) { default: @@ -10534,7 +10926,7 @@ if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterWeeklyMaintenanceWindow.startTime: object expected"); - message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime); + message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime, long + 1); } return message; }; @@ -10613,7 +11005,7 @@ function ClusterMaintenanceSchedule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10688,9 +11080,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterMaintenanceSchedule.decode = function decode(reader, length, error) { + ClusterMaintenanceSchedule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10698,15 +11094,15 @@ break; switch (tag >>> 3) { case 1: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10737,16 +11133,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterMaintenanceSchedule.verify = function verify(message) { + ClusterMaintenanceSchedule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -10761,19 +11161,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule} ClusterMaintenanceSchedule */ - ClusterMaintenanceSchedule.fromObject = function fromObject(object) { + ClusterMaintenanceSchedule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterMaintenanceSchedule.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } return message; }; @@ -10851,7 +11255,7 @@ function PscConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10916,9 +11320,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PscConfig.decode = function decode(reader, length, error) { + PscConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.PscConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10930,7 +11338,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10961,9 +11369,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PscConfig.verify = function verify(message) { + PscConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.network != null && message.hasOwnProperty("network")) if (!$util.isString(message.network)) return "network: string expected"; @@ -10978,9 +11390,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.PscConfig} PscConfig */ - PscConfig.fromObject = function fromObject(object) { + PscConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.PscConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.PscConfig(); if (object.network != null) message.network = String(object.network); @@ -11058,7 +11474,7 @@ function DiscoveryEndpoint(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11143,9 +11559,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DiscoveryEndpoint.decode = function decode(reader, length, error) { + DiscoveryEndpoint.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.DiscoveryEndpoint(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11161,11 +11581,11 @@ break; } case 3: { - message.pscConfig = $root.google.cloud.redis.cluster.v1.PscConfig.decode(reader, reader.uint32()); + message.pscConfig = $root.google.cloud.redis.cluster.v1.PscConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11196,9 +11616,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DiscoveryEndpoint.verify = function verify(message) { + DiscoveryEndpoint.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.address != null && message.hasOwnProperty("address")) if (!$util.isString(message.address)) return "address: string expected"; @@ -11206,7 +11630,7 @@ if (!$util.isInteger(message.port)) return "port: integer expected"; if (message.pscConfig != null && message.hasOwnProperty("pscConfig")) { - var error = $root.google.cloud.redis.cluster.v1.PscConfig.verify(message.pscConfig); + var error = $root.google.cloud.redis.cluster.v1.PscConfig.verify(message.pscConfig, long + 1); if (error) return "pscConfig." + error; } @@ -11221,9 +11645,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.DiscoveryEndpoint} DiscoveryEndpoint */ - DiscoveryEndpoint.fromObject = function fromObject(object) { + DiscoveryEndpoint.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.DiscoveryEndpoint) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.DiscoveryEndpoint(); if (object.address != null) message.address = String(object.address); @@ -11232,7 +11660,7 @@ if (object.pscConfig != null) { if (typeof object.pscConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1.DiscoveryEndpoint.pscConfig: object expected"); - message.pscConfig = $root.google.cloud.redis.cluster.v1.PscConfig.fromObject(object.pscConfig); + message.pscConfig = $root.google.cloud.redis.cluster.v1.PscConfig.fromObject(object.pscConfig, long + 1); } return message; }; @@ -11320,7 +11748,7 @@ function PscConnection(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11455,9 +11883,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PscConnection.decode = function decode(reader, length, error) { + PscConnection.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.PscConnection(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11497,7 +11929,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11528,9 +11960,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PscConnection.verify = function verify(message) { + PscConnection.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pscConnectionId != null && message.hasOwnProperty("pscConnectionId")) if (!$util.isString(message.pscConnectionId)) return "pscConnectionId: string expected"; @@ -11579,9 +12015,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.PscConnection} PscConnection */ - PscConnection.fromObject = function fromObject(object) { + PscConnection.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.PscConnection) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.PscConnection(); if (object.pscConnectionId != null) message.pscConnectionId = String(object.pscConnectionId); @@ -11734,7 +12174,7 @@ this.connections = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11800,9 +12240,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterEndpoint.decode = function decode(reader, length, error) { + ClusterEndpoint.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ClusterEndpoint(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11812,11 +12256,11 @@ case 1: { if (!(message.connections && message.connections.length)) message.connections = []; - message.connections.push($root.google.cloud.redis.cluster.v1.ConnectionDetail.decode(reader, reader.uint32())); + message.connections.push($root.google.cloud.redis.cluster.v1.ConnectionDetail.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11847,14 +12291,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterEndpoint.verify = function verify(message) { + ClusterEndpoint.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.connections != null && message.hasOwnProperty("connections")) { if (!Array.isArray(message.connections)) return "connections: array expected"; for (var i = 0; i < message.connections.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.ConnectionDetail.verify(message.connections[i]); + var error = $root.google.cloud.redis.cluster.v1.ConnectionDetail.verify(message.connections[i], long + 1); if (error) return "connections." + error; } @@ -11870,9 +12318,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ClusterEndpoint} ClusterEndpoint */ - ClusterEndpoint.fromObject = function fromObject(object) { + ClusterEndpoint.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ClusterEndpoint) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ClusterEndpoint(); if (object.connections) { if (!Array.isArray(object.connections)) @@ -11881,7 +12333,7 @@ for (var i = 0; i < object.connections.length; ++i) { if (typeof object.connections[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterEndpoint.connections: object expected"); - message.connections[i] = $root.google.cloud.redis.cluster.v1.ConnectionDetail.fromObject(object.connections[i]); + message.connections[i] = $root.google.cloud.redis.cluster.v1.ConnectionDetail.fromObject(object.connections[i], long + 1); } } return message; @@ -11960,7 +12412,7 @@ function ConnectionDetail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12049,9 +12501,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConnectionDetail.decode = function decode(reader, length, error) { + ConnectionDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ConnectionDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12059,15 +12515,15 @@ break; switch (tag >>> 3) { case 1: { - message.pscAutoConnection = $root.google.cloud.redis.cluster.v1.PscAutoConnection.decode(reader, reader.uint32()); + message.pscAutoConnection = $root.google.cloud.redis.cluster.v1.PscAutoConnection.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.pscConnection = $root.google.cloud.redis.cluster.v1.PscConnection.decode(reader, reader.uint32()); + message.pscConnection = $root.google.cloud.redis.cluster.v1.PscConnection.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12098,14 +12554,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConnectionDetail.verify = function verify(message) { + ConnectionDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.pscAutoConnection != null && message.hasOwnProperty("pscAutoConnection")) { properties.connection = 1; { - var error = $root.google.cloud.redis.cluster.v1.PscAutoConnection.verify(message.pscAutoConnection); + var error = $root.google.cloud.redis.cluster.v1.PscAutoConnection.verify(message.pscAutoConnection, long + 1); if (error) return "pscAutoConnection." + error; } @@ -12115,7 +12575,7 @@ return "connection: multiple values"; properties.connection = 1; { - var error = $root.google.cloud.redis.cluster.v1.PscConnection.verify(message.pscConnection); + var error = $root.google.cloud.redis.cluster.v1.PscConnection.verify(message.pscConnection, long + 1); if (error) return "pscConnection." + error; } @@ -12131,19 +12591,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ConnectionDetail} ConnectionDetail */ - ConnectionDetail.fromObject = function fromObject(object) { + ConnectionDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ConnectionDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ConnectionDetail(); if (object.pscAutoConnection != null) { if (typeof object.pscAutoConnection !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ConnectionDetail.pscAutoConnection: object expected"); - message.pscAutoConnection = $root.google.cloud.redis.cluster.v1.PscAutoConnection.fromObject(object.pscAutoConnection); + message.pscAutoConnection = $root.google.cloud.redis.cluster.v1.PscAutoConnection.fromObject(object.pscAutoConnection, long + 1); } if (object.pscConnection != null) { if (typeof object.pscConnection !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ConnectionDetail.pscConnection: object expected"); - message.pscConnection = $root.google.cloud.redis.cluster.v1.PscConnection.fromObject(object.pscConnection); + message.pscConnection = $root.google.cloud.redis.cluster.v1.PscConnection.fromObject(object.pscConnection, long + 1); } return message; }; @@ -12230,7 +12694,7 @@ function PscAutoConnection(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12365,9 +12829,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PscAutoConnection.decode = function decode(reader, length, error) { + PscAutoConnection.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.PscAutoConnection(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12407,7 +12875,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12438,9 +12906,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PscAutoConnection.verify = function verify(message) { + PscAutoConnection.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pscConnectionId != null && message.hasOwnProperty("pscConnectionId")) if (!$util.isString(message.pscConnectionId)) return "pscConnectionId: string expected"; @@ -12489,9 +12961,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.PscAutoConnection} PscAutoConnection */ - PscAutoConnection.fromObject = function fromObject(object) { + PscAutoConnection.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.PscAutoConnection) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.PscAutoConnection(); if (object.pscConnectionId != null) message.pscConnectionId = String(object.pscConnectionId); @@ -12644,7 +13120,7 @@ function SharedRegionalCertificateAuthority(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12733,9 +13209,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SharedRegionalCertificateAuthority.decode = function decode(reader, length, error) { + SharedRegionalCertificateAuthority.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12743,7 +13223,7 @@ break; switch (tag >>> 3) { case 2: { - message.managedServerCa = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.decode(reader, reader.uint32()); + message.managedServerCa = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -12751,7 +13231,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12782,14 +13262,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SharedRegionalCertificateAuthority.verify = function verify(message) { + SharedRegionalCertificateAuthority.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.managedServerCa != null && message.hasOwnProperty("managedServerCa")) { properties.serverCa = 1; { - var error = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.verify(message.managedServerCa); + var error = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.verify(message.managedServerCa, long + 1); if (error) return "managedServerCa." + error; } @@ -12808,14 +13292,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority} SharedRegionalCertificateAuthority */ - SharedRegionalCertificateAuthority.fromObject = function fromObject(object) { + SharedRegionalCertificateAuthority.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority(); if (object.managedServerCa != null) { if (typeof object.managedServerCa !== "object") throw TypeError(".google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.managedServerCa: object expected"); - message.managedServerCa = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.fromObject(object.managedServerCa); + message.managedServerCa = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.fromObject(object.managedServerCa, long + 1); } if (object.name != null) message.name = String(object.name); @@ -12894,7 +13382,7 @@ this.caCerts = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12960,9 +13448,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegionalManagedCertificateAuthority.decode = function decode(reader, length, error) { + RegionalManagedCertificateAuthority.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12972,11 +13464,11 @@ case 1: { if (!(message.caCerts && message.caCerts.length)) message.caCerts = []; - message.caCerts.push($root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.decode(reader, reader.uint32())); + message.caCerts.push($root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13007,14 +13499,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegionalManagedCertificateAuthority.verify = function verify(message) { + RegionalManagedCertificateAuthority.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.caCerts != null && message.hasOwnProperty("caCerts")) { if (!Array.isArray(message.caCerts)) return "caCerts: array expected"; for (var i = 0; i < message.caCerts.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.verify(message.caCerts[i]); + var error = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.verify(message.caCerts[i], long + 1); if (error) return "caCerts." + error; } @@ -13030,9 +13526,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority} RegionalManagedCertificateAuthority */ - RegionalManagedCertificateAuthority.fromObject = function fromObject(object) { + RegionalManagedCertificateAuthority.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority(); if (object.caCerts) { if (!Array.isArray(object.caCerts)) @@ -13041,7 +13541,7 @@ for (var i = 0; i < object.caCerts.length; ++i) { if (typeof object.caCerts[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.caCerts: object expected"); - message.caCerts[i] = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.fromObject(object.caCerts[i]); + message.caCerts[i] = $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.fromObject(object.caCerts[i], long + 1); } } return message; @@ -13117,7 +13617,7 @@ this.certificates = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13183,9 +13683,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegionalCertChain.decode = function decode(reader, length, error) { + RegionalCertChain.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13199,7 +13703,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13230,9 +13734,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegionalCertChain.verify = function verify(message) { + RegionalCertChain.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.certificates != null && message.hasOwnProperty("certificates")) { if (!Array.isArray(message.certificates)) return "certificates: array expected"; @@ -13251,9 +13759,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain} RegionalCertChain */ - RegionalCertChain.fromObject = function fromObject(object) { + RegionalCertChain.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain(); if (object.certificates) { if (!Array.isArray(object.certificates)) @@ -13343,7 +13855,7 @@ function GetSharedRegionalCertificateAuthorityRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13408,9 +13920,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetSharedRegionalCertificateAuthorityRequest.decode = function decode(reader, length, error) { + GetSharedRegionalCertificateAuthorityRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.GetSharedRegionalCertificateAuthorityRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13422,7 +13938,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13453,9 +13969,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetSharedRegionalCertificateAuthorityRequest.verify = function verify(message) { + GetSharedRegionalCertificateAuthorityRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -13470,9 +13990,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.GetSharedRegionalCertificateAuthorityRequest} GetSharedRegionalCertificateAuthorityRequest */ - GetSharedRegionalCertificateAuthorityRequest.fromObject = function fromObject(object) { + GetSharedRegionalCertificateAuthorityRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.GetSharedRegionalCertificateAuthorityRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.GetSharedRegionalCertificateAuthorityRequest(); if (object.name != null) message.name = String(object.name); @@ -13554,7 +14078,7 @@ function OperationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13679,9 +14203,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationMetadata.decode = function decode(reader, length, error) { + OperationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.OperationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13689,11 +14217,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -13717,7 +14245,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13748,16 +14276,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationMetadata.verify = function verify(message) { + OperationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -13787,19 +14319,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.OperationMetadata} OperationMetadata */ - OperationMetadata.fromObject = function fromObject(object) { + OperationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.OperationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.OperationMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.OperationMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.OperationMetadata.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.target != null) message.target = String(object.target); @@ -13903,7 +14439,7 @@ function CertificateAuthority(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13992,9 +14528,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CertificateAuthority.decode = function decode(reader, length, error) { + CertificateAuthority.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.CertificateAuthority(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14002,7 +14542,7 @@ break; switch (tag >>> 3) { case 1: { - message.managedServerCa = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.decode(reader, reader.uint32()); + message.managedServerCa = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -14010,7 +14550,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14041,14 +14581,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CertificateAuthority.verify = function verify(message) { + CertificateAuthority.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.managedServerCa != null && message.hasOwnProperty("managedServerCa")) { properties.serverCa = 1; { - var error = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.verify(message.managedServerCa); + var error = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.verify(message.managedServerCa, long + 1); if (error) return "managedServerCa." + error; } @@ -14067,14 +14611,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.CertificateAuthority} CertificateAuthority */ - CertificateAuthority.fromObject = function fromObject(object) { + CertificateAuthority.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.CertificateAuthority) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.CertificateAuthority(); if (object.managedServerCa != null) { if (typeof object.managedServerCa !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CertificateAuthority.managedServerCa: object expected"); - message.managedServerCa = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.fromObject(object.managedServerCa); + message.managedServerCa = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.fromObject(object.managedServerCa, long + 1); } if (object.name != null) message.name = String(object.name); @@ -14153,7 +14701,7 @@ this.caCerts = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14219,9 +14767,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ManagedCertificateAuthority.decode = function decode(reader, length, error) { + ManagedCertificateAuthority.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14231,11 +14783,11 @@ case 1: { if (!(message.caCerts && message.caCerts.length)) message.caCerts = []; - message.caCerts.push($root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain.decode(reader, reader.uint32())); + message.caCerts.push($root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14266,14 +14818,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ManagedCertificateAuthority.verify = function verify(message) { + ManagedCertificateAuthority.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.caCerts != null && message.hasOwnProperty("caCerts")) { if (!Array.isArray(message.caCerts)) return "caCerts: array expected"; for (var i = 0; i < message.caCerts.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain.verify(message.caCerts[i]); + var error = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain.verify(message.caCerts[i], long + 1); if (error) return "caCerts." + error; } @@ -14289,9 +14845,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority} ManagedCertificateAuthority */ - ManagedCertificateAuthority.fromObject = function fromObject(object) { + ManagedCertificateAuthority.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority(); if (object.caCerts) { if (!Array.isArray(object.caCerts)) @@ -14300,7 +14860,7 @@ for (var i = 0; i < object.caCerts.length; ++i) { if (typeof object.caCerts[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.caCerts: object expected"); - message.caCerts[i] = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain.fromObject(object.caCerts[i]); + message.caCerts[i] = $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain.fromObject(object.caCerts[i], long + 1); } } return message; @@ -14376,7 +14936,7 @@ this.certificates = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14442,9 +15002,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CertChain.decode = function decode(reader, length, error) { + CertChain.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14458,7 +15022,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14489,9 +15053,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CertChain.verify = function verify(message) { + CertChain.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.certificates != null && message.hasOwnProperty("certificates")) { if (!Array.isArray(message.certificates)) return "certificates: array expected"; @@ -14510,9 +15078,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain} CertChain */ - CertChain.fromObject = function fromObject(object) { + CertChain.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.CertificateAuthority.ManagedCertificateAuthority.CertChain(); if (object.certificates) { if (!Array.isArray(object.certificates)) @@ -14604,7 +15176,7 @@ function ClusterPersistenceConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14689,9 +15261,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterPersistenceConfig.decode = function decode(reader, length, error) { + ClusterPersistenceConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14703,15 +15279,15 @@ break; } case 2: { - message.rdbConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig.decode(reader, reader.uint32()); + message.rdbConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.aofConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig.decode(reader, reader.uint32()); + message.aofConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14742,9 +15318,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterPersistenceConfig.verify = function verify(message) { + ClusterPersistenceConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -14756,12 +15336,12 @@ break; } if (message.rdbConfig != null && message.hasOwnProperty("rdbConfig")) { - var error = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig.verify(message.rdbConfig); + var error = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig.verify(message.rdbConfig, long + 1); if (error) return "rdbConfig." + error; } if (message.aofConfig != null && message.hasOwnProperty("aofConfig")) { - var error = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig.verify(message.aofConfig); + var error = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig.verify(message.aofConfig, long + 1); if (error) return "aofConfig." + error; } @@ -14776,9 +15356,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ClusterPersistenceConfig} ClusterPersistenceConfig */ - ClusterPersistenceConfig.fromObject = function fromObject(object) { + ClusterPersistenceConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig(); switch (object.mode) { default: @@ -14807,12 +15391,12 @@ if (object.rdbConfig != null) { if (typeof object.rdbConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterPersistenceConfig.rdbConfig: object expected"); - message.rdbConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig.fromObject(object.rdbConfig); + message.rdbConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig.fromObject(object.rdbConfig, long + 1); } if (object.aofConfig != null) { if (typeof object.aofConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterPersistenceConfig.aofConfig: object expected"); - message.aofConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig.fromObject(object.aofConfig); + message.aofConfig = $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig.fromObject(object.aofConfig, long + 1); } return message; }; @@ -14891,7 +15475,7 @@ function RDBConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14966,9 +15550,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RDBConfig.decode = function decode(reader, length, error) { + RDBConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14980,11 +15568,11 @@ break; } case 2: { - message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15015,9 +15603,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RDBConfig.verify = function verify(message) { + RDBConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rdbSnapshotPeriod != null && message.hasOwnProperty("rdbSnapshotPeriod")) switch (message.rdbSnapshotPeriod) { default: @@ -15030,7 +15622,7 @@ break; } if (message.rdbSnapshotStartTime != null && message.hasOwnProperty("rdbSnapshotStartTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.rdbSnapshotStartTime); + var error = $root.google.protobuf.Timestamp.verify(message.rdbSnapshotStartTime, long + 1); if (error) return "rdbSnapshotStartTime." + error; } @@ -15045,9 +15637,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig} RDBConfig */ - RDBConfig.fromObject = function fromObject(object) { + RDBConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig(); switch (object.rdbSnapshotPeriod) { default: @@ -15080,7 +15676,7 @@ if (object.rdbSnapshotStartTime != null) { if (typeof object.rdbSnapshotStartTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.ClusterPersistenceConfig.RDBConfig.rdbSnapshotStartTime: object expected"); - message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.fromObject(object.rdbSnapshotStartTime); + message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.fromObject(object.rdbSnapshotStartTime, long + 1); } return message; }; @@ -15178,7 +15774,7 @@ function AOFConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15243,9 +15839,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AOFConfig.decode = function decode(reader, length, error) { + AOFConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15257,7 +15857,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15288,9 +15888,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AOFConfig.verify = function verify(message) { + AOFConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.appendFsync != null && message.hasOwnProperty("appendFsync")) switch (message.appendFsync) { default: @@ -15312,9 +15916,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig} AOFConfig */ - AOFConfig.fromObject = function fromObject(object) { + AOFConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ClusterPersistenceConfig.AOFConfig(); switch (object.appendFsync) { default: @@ -15452,7 +16060,7 @@ function ZoneDistributionConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15527,9 +16135,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ZoneDistributionConfig.decode = function decode(reader, length, error) { + ZoneDistributionConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15545,7 +16157,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15576,9 +16188,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ZoneDistributionConfig.verify = function verify(message) { + ZoneDistributionConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -15602,9 +16218,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.ZoneDistributionConfig} ZoneDistributionConfig */ - ZoneDistributionConfig.fromObject = function fromObject(object) { + ZoneDistributionConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.ZoneDistributionConfig(); switch (object.mode) { default: @@ -15722,7 +16342,7 @@ function RescheduleClusterMaintenanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15807,9 +16427,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RescheduleClusterMaintenanceRequest.decode = function decode(reader, length, error) { + RescheduleClusterMaintenanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.RescheduleClusterMaintenanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15825,11 +16449,11 @@ break; } case 3: { - message.scheduleTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.scheduleTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15860,9 +16484,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RescheduleClusterMaintenanceRequest.verify = function verify(message) { + RescheduleClusterMaintenanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -15876,7 +16504,7 @@ break; } if (message.scheduleTime != null && message.hasOwnProperty("scheduleTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.scheduleTime); + var error = $root.google.protobuf.Timestamp.verify(message.scheduleTime, long + 1); if (error) return "scheduleTime." + error; } @@ -15891,9 +16519,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.RescheduleClusterMaintenanceRequest} RescheduleClusterMaintenanceRequest */ - RescheduleClusterMaintenanceRequest.fromObject = function fromObject(object) { + RescheduleClusterMaintenanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.RescheduleClusterMaintenanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.RescheduleClusterMaintenanceRequest(); if (object.name != null) message.name = String(object.name); @@ -15920,7 +16552,7 @@ if (object.scheduleTime != null) { if (typeof object.scheduleTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.RescheduleClusterMaintenanceRequest.scheduleTime: object expected"); - message.scheduleTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleTime); + message.scheduleTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleTime, long + 1); } return message; }; @@ -16021,7 +16653,7 @@ this.kmsKeyVersions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16117,9 +16749,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EncryptionInfo.decode = function decode(reader, length, error) { + EncryptionInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1.EncryptionInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16141,11 +16777,11 @@ break; } case 4: { - message.lastUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16176,9 +16812,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EncryptionInfo.verify = function verify(message) { + EncryptionInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.encryptionType != null && message.hasOwnProperty("encryptionType")) switch (message.encryptionType) { default: @@ -16211,7 +16851,7 @@ break; } if (message.lastUpdateTime != null && message.hasOwnProperty("lastUpdateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastUpdateTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastUpdateTime, long + 1); if (error) return "lastUpdateTime." + error; } @@ -16226,9 +16866,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1.EncryptionInfo} EncryptionInfo */ - EncryptionInfo.fromObject = function fromObject(object) { + EncryptionInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1.EncryptionInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1.EncryptionInfo(); switch (object.encryptionType) { default: @@ -16304,7 +16948,7 @@ if (object.lastUpdateTime != null) { if (typeof object.lastUpdateTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1.EncryptionInfo.lastUpdateTime: object expected"); - message.lastUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.lastUpdateTime); + message.lastUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.lastUpdateTime, long + 1); } return message; }; @@ -17091,7 +17735,7 @@ function CreateClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17186,9 +17830,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateClusterRequest.decode = function decode(reader, length, error) { + CreateClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.CreateClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17204,7 +17852,7 @@ break; } case 3: { - message.cluster = $root.google.cloud.redis.cluster.v1beta1.Cluster.decode(reader, reader.uint32()); + message.cluster = $root.google.cloud.redis.cluster.v1beta1.Cluster.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -17212,7 +17860,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17243,9 +17891,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateClusterRequest.verify = function verify(message) { + CreateClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -17253,7 +17905,7 @@ if (!$util.isString(message.clusterId)) return "clusterId: string expected"; if (message.cluster != null && message.hasOwnProperty("cluster")) { - var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.verify(message.cluster); + var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.verify(message.cluster, long + 1); if (error) return "cluster." + error; } @@ -17271,9 +17923,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.CreateClusterRequest} CreateClusterRequest */ - CreateClusterRequest.fromObject = function fromObject(object) { + CreateClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.CreateClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.CreateClusterRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -17282,7 +17938,7 @@ if (object.cluster != null) { if (typeof object.cluster !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CreateClusterRequest.cluster: object expected"); - message.cluster = $root.google.cloud.redis.cluster.v1beta1.Cluster.fromObject(object.cluster); + message.cluster = $root.google.cloud.redis.cluster.v1beta1.Cluster.fromObject(object.cluster, long + 1); } if (object.requestId != null) message.requestId = String(object.requestId); @@ -17370,7 +18026,7 @@ function ListClustersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17455,9 +18111,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListClustersRequest.decode = function decode(reader, length, error) { + ListClustersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ListClustersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17477,7 +18137,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17508,9 +18168,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListClustersRequest.verify = function verify(message) { + ListClustersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -17531,9 +18195,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ListClustersRequest} ListClustersRequest */ - ListClustersRequest.fromObject = function fromObject(object) { + ListClustersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ListClustersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ListClustersRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -17624,7 +18292,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17711,9 +18379,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListClustersResponse.decode = function decode(reader, length, error) { + ListClustersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ListClustersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17723,7 +18395,7 @@ case 1: { if (!(message.clusters && message.clusters.length)) message.clusters = []; - message.clusters.push($root.google.cloud.redis.cluster.v1beta1.Cluster.decode(reader, reader.uint32())); + message.clusters.push($root.google.cloud.redis.cluster.v1beta1.Cluster.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -17737,7 +18409,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17768,14 +18440,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListClustersResponse.verify = function verify(message) { + ListClustersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.clusters != null && message.hasOwnProperty("clusters")) { if (!Array.isArray(message.clusters)) return "clusters: array expected"; for (var i = 0; i < message.clusters.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.verify(message.clusters[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.verify(message.clusters[i], long + 1); if (error) return "clusters." + error; } @@ -17801,9 +18477,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ListClustersResponse} ListClustersResponse */ - ListClustersResponse.fromObject = function fromObject(object) { + ListClustersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ListClustersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ListClustersResponse(); if (object.clusters) { if (!Array.isArray(object.clusters)) @@ -17812,7 +18492,7 @@ for (var i = 0; i < object.clusters.length; ++i) { if (typeof object.clusters[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ListClustersResponse.clusters: object expected"); - message.clusters[i] = $root.google.cloud.redis.cluster.v1beta1.Cluster.fromObject(object.clusters[i]); + message.clusters[i] = $root.google.cloud.redis.cluster.v1beta1.Cluster.fromObject(object.clusters[i], long + 1); } } if (object.nextPageToken != null) @@ -17912,7 +18592,7 @@ function UpdateClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17997,9 +18677,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateClusterRequest.decode = function decode(reader, length, error) { + UpdateClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.UpdateClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18007,11 +18691,11 @@ break; switch (tag >>> 3) { case 1: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.cluster = $root.google.cloud.redis.cluster.v1beta1.Cluster.decode(reader, reader.uint32()); + message.cluster = $root.google.cloud.redis.cluster.v1beta1.Cluster.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -18019,7 +18703,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18050,16 +18734,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateClusterRequest.verify = function verify(message) { + UpdateClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } if (message.cluster != null && message.hasOwnProperty("cluster")) { - var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.verify(message.cluster); + var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.verify(message.cluster, long + 1); if (error) return "cluster." + error; } @@ -18077,19 +18765,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.UpdateClusterRequest} UpdateClusterRequest */ - UpdateClusterRequest.fromObject = function fromObject(object) { + UpdateClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.UpdateClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.UpdateClusterRequest(); if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.UpdateClusterRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.cluster != null) { if (typeof object.cluster !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.UpdateClusterRequest.cluster: object expected"); - message.cluster = $root.google.cloud.redis.cluster.v1beta1.Cluster.fromObject(object.cluster); + message.cluster = $root.google.cloud.redis.cluster.v1beta1.Cluster.fromObject(object.cluster, long + 1); } if (object.requestId != null) message.requestId = String(object.requestId); @@ -18172,7 +18864,7 @@ function GetClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18237,9 +18929,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetClusterRequest.decode = function decode(reader, length, error) { + GetClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.GetClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18251,7 +18947,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18282,9 +18978,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetClusterRequest.verify = function verify(message) { + GetClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -18299,9 +18999,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.GetClusterRequest} GetClusterRequest */ - GetClusterRequest.fromObject = function fromObject(object) { + GetClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.GetClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.GetClusterRequest(); if (object.name != null) message.name = String(object.name); @@ -18378,7 +19082,7 @@ function DeleteClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18453,9 +19157,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteClusterRequest.decode = function decode(reader, length, error) { + DeleteClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.DeleteClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18471,7 +19179,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18502,9 +19210,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteClusterRequest.verify = function verify(message) { + DeleteClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -18522,9 +19234,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.DeleteClusterRequest} DeleteClusterRequest */ - DeleteClusterRequest.fromObject = function fromObject(object) { + DeleteClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.DeleteClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.DeleteClusterRequest(); if (object.name != null) message.name = String(object.name); @@ -18606,7 +19322,7 @@ function GetClusterCertificateAuthorityRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18671,9 +19387,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetClusterCertificateAuthorityRequest.decode = function decode(reader, length, error) { + GetClusterCertificateAuthorityRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.GetClusterCertificateAuthorityRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18685,7 +19405,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18716,9 +19436,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetClusterCertificateAuthorityRequest.verify = function verify(message) { + GetClusterCertificateAuthorityRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -18733,9 +19457,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.GetClusterCertificateAuthorityRequest} GetClusterCertificateAuthorityRequest */ - GetClusterCertificateAuthorityRequest.fromObject = function fromObject(object) { + GetClusterCertificateAuthorityRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.GetClusterCertificateAuthorityRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.GetClusterCertificateAuthorityRequest(); if (object.name != null) message.name = String(object.name); @@ -18813,7 +19541,7 @@ function ListBackupCollectionsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18898,9 +19626,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBackupCollectionsRequest.decode = function decode(reader, length, error) { + ListBackupCollectionsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ListBackupCollectionsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18920,7 +19652,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18951,9 +19683,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBackupCollectionsRequest.verify = function verify(message) { + ListBackupCollectionsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -18974,9 +19710,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ListBackupCollectionsRequest} ListBackupCollectionsRequest */ - ListBackupCollectionsRequest.fromObject = function fromObject(object) { + ListBackupCollectionsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ListBackupCollectionsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ListBackupCollectionsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -19067,7 +19807,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19154,9 +19894,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBackupCollectionsResponse.decode = function decode(reader, length, error) { + ListBackupCollectionsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ListBackupCollectionsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19166,7 +19910,7 @@ case 1: { if (!(message.backupCollections && message.backupCollections.length)) message.backupCollections = []; - message.backupCollections.push($root.google.cloud.redis.cluster.v1beta1.BackupCollection.decode(reader, reader.uint32())); + message.backupCollections.push($root.google.cloud.redis.cluster.v1beta1.BackupCollection.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -19180,7 +19924,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19211,14 +19955,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBackupCollectionsResponse.verify = function verify(message) { + ListBackupCollectionsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.backupCollections != null && message.hasOwnProperty("backupCollections")) { if (!Array.isArray(message.backupCollections)) return "backupCollections: array expected"; for (var i = 0; i < message.backupCollections.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.BackupCollection.verify(message.backupCollections[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.BackupCollection.verify(message.backupCollections[i], long + 1); if (error) return "backupCollections." + error; } @@ -19244,9 +19992,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ListBackupCollectionsResponse} ListBackupCollectionsResponse */ - ListBackupCollectionsResponse.fromObject = function fromObject(object) { + ListBackupCollectionsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ListBackupCollectionsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ListBackupCollectionsResponse(); if (object.backupCollections) { if (!Array.isArray(object.backupCollections)) @@ -19255,7 +20007,7 @@ for (var i = 0; i < object.backupCollections.length; ++i) { if (typeof object.backupCollections[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ListBackupCollectionsResponse.backupCollections: object expected"); - message.backupCollections[i] = $root.google.cloud.redis.cluster.v1beta1.BackupCollection.fromObject(object.backupCollections[i]); + message.backupCollections[i] = $root.google.cloud.redis.cluster.v1beta1.BackupCollection.fromObject(object.backupCollections[i], long + 1); } } if (object.nextPageToken != null) @@ -19353,7 +20105,7 @@ function GetBackupCollectionRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19418,9 +20170,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBackupCollectionRequest.decode = function decode(reader, length, error) { + GetBackupCollectionRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.GetBackupCollectionRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19432,7 +20188,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19463,9 +20219,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetBackupCollectionRequest.verify = function verify(message) { + GetBackupCollectionRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -19480,9 +20240,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.GetBackupCollectionRequest} GetBackupCollectionRequest */ - GetBackupCollectionRequest.fromObject = function fromObject(object) { + GetBackupCollectionRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.GetBackupCollectionRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.GetBackupCollectionRequest(); if (object.name != null) message.name = String(object.name); @@ -19560,7 +20324,7 @@ function ListBackupsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19645,9 +20409,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBackupsRequest.decode = function decode(reader, length, error) { + ListBackupsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ListBackupsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19667,7 +20435,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19698,9 +20466,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBackupsRequest.verify = function verify(message) { + ListBackupsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -19721,9 +20493,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ListBackupsRequest} ListBackupsRequest */ - ListBackupsRequest.fromObject = function fromObject(object) { + ListBackupsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ListBackupsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ListBackupsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -19814,7 +20590,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19901,9 +20677,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBackupsResponse.decode = function decode(reader, length, error) { + ListBackupsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ListBackupsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19913,7 +20693,7 @@ case 1: { if (!(message.backups && message.backups.length)) message.backups = []; - message.backups.push($root.google.cloud.redis.cluster.v1beta1.Backup.decode(reader, reader.uint32())); + message.backups.push($root.google.cloud.redis.cluster.v1beta1.Backup.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -19927,7 +20707,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19958,14 +20738,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBackupsResponse.verify = function verify(message) { + ListBackupsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.backups != null && message.hasOwnProperty("backups")) { if (!Array.isArray(message.backups)) return "backups: array expected"; for (var i = 0; i < message.backups.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.Backup.verify(message.backups[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.Backup.verify(message.backups[i], long + 1); if (error) return "backups." + error; } @@ -19991,9 +20775,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ListBackupsResponse} ListBackupsResponse */ - ListBackupsResponse.fromObject = function fromObject(object) { + ListBackupsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ListBackupsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ListBackupsResponse(); if (object.backups) { if (!Array.isArray(object.backups)) @@ -20002,7 +20790,7 @@ for (var i = 0; i < object.backups.length; ++i) { if (typeof object.backups[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ListBackupsResponse.backups: object expected"); - message.backups[i] = $root.google.cloud.redis.cluster.v1beta1.Backup.fromObject(object.backups[i]); + message.backups[i] = $root.google.cloud.redis.cluster.v1beta1.Backup.fromObject(object.backups[i], long + 1); } } if (object.nextPageToken != null) @@ -20100,7 +20888,7 @@ function GetBackupRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20165,9 +20953,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBackupRequest.decode = function decode(reader, length, error) { + GetBackupRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.GetBackupRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20179,7 +20971,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20210,9 +21002,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetBackupRequest.verify = function verify(message) { + GetBackupRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -20227,9 +21023,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.GetBackupRequest} GetBackupRequest */ - GetBackupRequest.fromObject = function fromObject(object) { + GetBackupRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.GetBackupRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.GetBackupRequest(); if (object.name != null) message.name = String(object.name); @@ -20306,7 +21106,7 @@ function DeleteBackupRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20381,9 +21181,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteBackupRequest.decode = function decode(reader, length, error) { + DeleteBackupRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.DeleteBackupRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20399,7 +21203,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20430,9 +21234,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteBackupRequest.verify = function verify(message) { + DeleteBackupRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -20450,9 +21258,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.DeleteBackupRequest} DeleteBackupRequest */ - DeleteBackupRequest.fromObject = function fromObject(object) { + DeleteBackupRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.DeleteBackupRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.DeleteBackupRequest(); if (object.name != null) message.name = String(object.name); @@ -20535,7 +21347,7 @@ function ExportBackupRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20624,9 +21436,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportBackupRequest.decode = function decode(reader, length, error) { + ExportBackupRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ExportBackupRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20642,7 +21458,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20673,9 +21489,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportBackupRequest.verify = function verify(message) { + ExportBackupRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsBucket != null && message.hasOwnProperty("gcsBucket")) { properties.destination = 1; @@ -20696,9 +21516,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ExportBackupRequest} ExportBackupRequest */ - ExportBackupRequest.fromObject = function fromObject(object) { + ExportBackupRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ExportBackupRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ExportBackupRequest(); if (object.gcsBucket != null) message.gcsBucket = String(object.gcsBucket); @@ -20783,7 +21607,7 @@ function BackupClusterRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20877,9 +21701,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BackupClusterRequest.decode = function decode(reader, length, error) { + BackupClusterRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.BackupClusterRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20891,7 +21719,7 @@ break; } case 2: { - message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -20899,7 +21727,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20930,15 +21758,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BackupClusterRequest.verify = function verify(message) { + BackupClusterRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.ttl != null && message.hasOwnProperty("ttl")) { - var error = $root.google.protobuf.Duration.verify(message.ttl); + var error = $root.google.protobuf.Duration.verify(message.ttl, long + 1); if (error) return "ttl." + error; } @@ -20958,16 +21790,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.BackupClusterRequest} BackupClusterRequest */ - BackupClusterRequest.fromObject = function fromObject(object) { + BackupClusterRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.BackupClusterRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.BackupClusterRequest(); if (object.name != null) message.name = String(object.name); if (object.ttl != null) { if (typeof object.ttl !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.BackupClusterRequest.ttl: object expected"); - message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl); + message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl, long + 1); } if (object.backupId != null) message.backupId = String(object.backupId); @@ -21090,7 +21926,7 @@ this.clusterEndpoints = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21567,9 +22403,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Cluster.decode = function decode(reader, length, error) { + Cluster.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.Cluster(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -21577,11 +22417,11 @@ break; switch (tag >>> 3) { case 34: { - message.gcsSource = $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 35: { - message.managedBackupSource = $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource.decode(reader, reader.uint32()); + message.managedBackupSource = $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -21589,7 +22429,7 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -21623,23 +22463,23 @@ case 15: { if (!(message.pscConfigs && message.pscConfigs.length)) message.pscConfigs = []; - message.pscConfigs.push($root.google.cloud.redis.cluster.v1beta1.PscConfig.decode(reader, reader.uint32())); + message.pscConfigs.push($root.google.cloud.redis.cluster.v1beta1.PscConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 16: { if (!(message.discoveryEndpoints && message.discoveryEndpoints.length)) message.discoveryEndpoints = []; - message.discoveryEndpoints.push($root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint.decode(reader, reader.uint32())); + message.discoveryEndpoints.push($root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 17: { if (!(message.pscConnections && message.pscConnections.length)) message.pscConnections = []; - message.pscConnections.push($root.google.cloud.redis.cluster.v1beta1.PscConnection.decode(reader, reader.uint32())); + message.pscConnections.push($root.google.cloud.redis.cluster.v1beta1.PscConnection.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 18: { - message.stateInfo = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.decode(reader, reader.uint32()); + message.stateInfo = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -21647,7 +22487,7 @@ break; } case 20: { - message.persistenceConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.decode(reader, reader.uint32()); + message.persistenceConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 21: { @@ -21666,10 +22506,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.redisConfigs, key); message.redisConfigs[key] = value; break; } @@ -21678,11 +22520,11 @@ break; } case 23: { - message.zoneDistributionConfig = $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig.decode(reader, reader.uint32()); + message.zoneDistributionConfig = $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.crossClusterReplicationConfig = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.decode(reader, reader.uint32()); + message.crossClusterReplicationConfig = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { @@ -21690,23 +22532,23 @@ break; } case 26: { - message.maintenancePolicy = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.decode(reader, reader.uint32()); + message.maintenancePolicy = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.maintenanceSchedule = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule.decode(reader, reader.uint32()); + message.maintenanceSchedule = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 30: { if (!(message.pscServiceAttachments && message.pscServiceAttachments.length)) message.pscServiceAttachments = []; - message.pscServiceAttachments.push($root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment.decode(reader, reader.uint32())); + message.pscServiceAttachments.push($root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 36: { if (!(message.clusterEndpoints && message.clusterEndpoints.length)) message.clusterEndpoints = []; - message.clusterEndpoints.push($root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint.decode(reader, reader.uint32())); + message.clusterEndpoints.push($root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 39: { @@ -21718,11 +22560,11 @@ break; } case 42: { - message.automatedBackupConfig = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.decode(reader, reader.uint32()); + message.automatedBackupConfig = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 43: { - message.encryptionInfo = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.decode(reader, reader.uint32()); + message.encryptionInfo = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 53: { @@ -21738,7 +22580,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21769,14 +22611,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Cluster.verify = function verify(message) { + Cluster.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsSource != null && message.hasOwnProperty("gcsSource")) { properties.importSources = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource.verify(message.gcsSource); + var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -21786,7 +22632,7 @@ return "importSources: multiple values"; properties.importSources = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource.verify(message.managedBackupSource); + var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource.verify(message.managedBackupSource, long + 1); if (error) return "managedBackupSource." + error; } @@ -21795,7 +22641,7 @@ if (!$util.isString(message.name)) return "name: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -21850,7 +22696,7 @@ if (!Array.isArray(message.pscConfigs)) return "pscConfigs: array expected"; for (var i = 0; i < message.pscConfigs.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.PscConfig.verify(message.pscConfigs[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.PscConfig.verify(message.pscConfigs[i], long + 1); if (error) return "pscConfigs." + error; } @@ -21859,7 +22705,7 @@ if (!Array.isArray(message.discoveryEndpoints)) return "discoveryEndpoints: array expected"; for (var i = 0; i < message.discoveryEndpoints.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint.verify(message.discoveryEndpoints[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint.verify(message.discoveryEndpoints[i], long + 1); if (error) return "discoveryEndpoints." + error; } @@ -21868,13 +22714,13 @@ if (!Array.isArray(message.pscConnections)) return "pscConnections: array expected"; for (var i = 0; i < message.pscConnections.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.PscConnection.verify(message.pscConnections[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.PscConnection.verify(message.pscConnections[i], long + 1); if (error) return "pscConnections." + error; } } if (message.stateInfo != null && message.hasOwnProperty("stateInfo")) { - var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.verify(message.stateInfo); + var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.verify(message.stateInfo, long + 1); if (error) return "stateInfo." + error; } @@ -21893,7 +22739,7 @@ break; } if (message.persistenceConfig != null && message.hasOwnProperty("persistenceConfig")) { - var error = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.verify(message.persistenceConfig); + var error = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.verify(message.persistenceConfig, long + 1); if (error) return "persistenceConfig." + error; } @@ -21911,12 +22757,12 @@ return "preciseSizeGb: number expected"; } if (message.zoneDistributionConfig != null && message.hasOwnProperty("zoneDistributionConfig")) { - var error = $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig.verify(message.zoneDistributionConfig); + var error = $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig.verify(message.zoneDistributionConfig, long + 1); if (error) return "zoneDistributionConfig." + error; } if (message.crossClusterReplicationConfig != null && message.hasOwnProperty("crossClusterReplicationConfig")) { - var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.verify(message.crossClusterReplicationConfig); + var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.verify(message.crossClusterReplicationConfig, long + 1); if (error) return "crossClusterReplicationConfig." + error; } @@ -21928,7 +22774,7 @@ if (message.maintenancePolicy != null && message.hasOwnProperty("maintenancePolicy")) { properties._maintenancePolicy = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.verify(message.maintenancePolicy); + var error = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.verify(message.maintenancePolicy, long + 1); if (error) return "maintenancePolicy." + error; } @@ -21936,7 +22782,7 @@ if (message.maintenanceSchedule != null && message.hasOwnProperty("maintenanceSchedule")) { properties._maintenanceSchedule = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule.verify(message.maintenanceSchedule); + var error = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule.verify(message.maintenanceSchedule, long + 1); if (error) return "maintenanceSchedule." + error; } @@ -21945,7 +22791,7 @@ if (!Array.isArray(message.pscServiceAttachments)) return "pscServiceAttachments: array expected"; for (var i = 0; i < message.pscServiceAttachments.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment.verify(message.pscServiceAttachments[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment.verify(message.pscServiceAttachments[i], long + 1); if (error) return "pscServiceAttachments." + error; } @@ -21954,7 +22800,7 @@ if (!Array.isArray(message.clusterEndpoints)) return "clusterEndpoints: array expected"; for (var i = 0; i < message.clusterEndpoints.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint.verify(message.clusterEndpoints[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint.verify(message.clusterEndpoints[i], long + 1); if (error) return "clusterEndpoints." + error; } @@ -21970,12 +22816,12 @@ return "kmsKey: string expected"; } if (message.automatedBackupConfig != null && message.hasOwnProperty("automatedBackupConfig")) { - var error = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.verify(message.automatedBackupConfig); + var error = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.verify(message.automatedBackupConfig, long + 1); if (error) return "automatedBackupConfig." + error; } if (message.encryptionInfo != null && message.hasOwnProperty("encryptionInfo")) { - var error = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.verify(message.encryptionInfo); + var error = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.verify(message.encryptionInfo, long + 1); if (error) return "encryptionInfo." + error; } @@ -22012,26 +22858,30 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.Cluster} Cluster */ - Cluster.fromObject = function fromObject(object) { + Cluster.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.Cluster) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.Cluster(); if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource.fromObject(object.gcsSource, long + 1); } if (object.managedBackupSource != null) { if (typeof object.managedBackupSource !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.managedBackupSource: object expected"); - message.managedBackupSource = $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource.fromObject(object.managedBackupSource); + message.managedBackupSource = $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource.fromObject(object.managedBackupSource, long + 1); } if (object.name != null) message.name = String(object.name); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } switch (object.state) { default: @@ -22116,7 +22966,7 @@ for (var i = 0; i < object.pscConfigs.length; ++i) { if (typeof object.pscConfigs[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.pscConfigs: object expected"); - message.pscConfigs[i] = $root.google.cloud.redis.cluster.v1beta1.PscConfig.fromObject(object.pscConfigs[i]); + message.pscConfigs[i] = $root.google.cloud.redis.cluster.v1beta1.PscConfig.fromObject(object.pscConfigs[i], long + 1); } } if (object.discoveryEndpoints) { @@ -22126,7 +22976,7 @@ for (var i = 0; i < object.discoveryEndpoints.length; ++i) { if (typeof object.discoveryEndpoints[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.discoveryEndpoints: object expected"); - message.discoveryEndpoints[i] = $root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint.fromObject(object.discoveryEndpoints[i]); + message.discoveryEndpoints[i] = $root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint.fromObject(object.discoveryEndpoints[i], long + 1); } } if (object.pscConnections) { @@ -22136,13 +22986,13 @@ for (var i = 0; i < object.pscConnections.length; ++i) { if (typeof object.pscConnections[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.pscConnections: object expected"); - message.pscConnections[i] = $root.google.cloud.redis.cluster.v1beta1.PscConnection.fromObject(object.pscConnections[i]); + message.pscConnections[i] = $root.google.cloud.redis.cluster.v1beta1.PscConnection.fromObject(object.pscConnections[i], long + 1); } } if (object.stateInfo != null) { if (typeof object.stateInfo !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.stateInfo: object expected"); - message.stateInfo = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.fromObject(object.stateInfo); + message.stateInfo = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.fromObject(object.stateInfo, long + 1); } switch (object.nodeType) { default: @@ -22187,38 +23037,41 @@ if (object.persistenceConfig != null) { if (typeof object.persistenceConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.persistenceConfig: object expected"); - message.persistenceConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.fromObject(object.persistenceConfig); + message.persistenceConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.fromObject(object.persistenceConfig, long + 1); } if (object.redisConfigs) { if (typeof object.redisConfigs !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.redisConfigs: object expected"); message.redisConfigs = {}; - for (var keys = Object.keys(object.redisConfigs), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.redisConfigs), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.redisConfigs, keys[i]); message.redisConfigs[keys[i]] = String(object.redisConfigs[keys[i]]); + } } if (object.preciseSizeGb != null) message.preciseSizeGb = Number(object.preciseSizeGb); if (object.zoneDistributionConfig != null) { if (typeof object.zoneDistributionConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.zoneDistributionConfig: object expected"); - message.zoneDistributionConfig = $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig.fromObject(object.zoneDistributionConfig); + message.zoneDistributionConfig = $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig.fromObject(object.zoneDistributionConfig, long + 1); } if (object.crossClusterReplicationConfig != null) { if (typeof object.crossClusterReplicationConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.crossClusterReplicationConfig: object expected"); - message.crossClusterReplicationConfig = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.fromObject(object.crossClusterReplicationConfig); + message.crossClusterReplicationConfig = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.fromObject(object.crossClusterReplicationConfig, long + 1); } if (object.deletionProtectionEnabled != null) message.deletionProtectionEnabled = Boolean(object.deletionProtectionEnabled); if (object.maintenancePolicy != null) { if (typeof object.maintenancePolicy !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.maintenancePolicy: object expected"); - message.maintenancePolicy = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.fromObject(object.maintenancePolicy); + message.maintenancePolicy = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.fromObject(object.maintenancePolicy, long + 1); } if (object.maintenanceSchedule != null) { if (typeof object.maintenanceSchedule !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.maintenanceSchedule: object expected"); - message.maintenanceSchedule = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule.fromObject(object.maintenanceSchedule); + message.maintenanceSchedule = $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule.fromObject(object.maintenanceSchedule, long + 1); } if (object.pscServiceAttachments) { if (!Array.isArray(object.pscServiceAttachments)) @@ -22227,7 +23080,7 @@ for (var i = 0; i < object.pscServiceAttachments.length; ++i) { if (typeof object.pscServiceAttachments[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.pscServiceAttachments: object expected"); - message.pscServiceAttachments[i] = $root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment.fromObject(object.pscServiceAttachments[i]); + message.pscServiceAttachments[i] = $root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment.fromObject(object.pscServiceAttachments[i], long + 1); } } if (object.clusterEndpoints) { @@ -22237,7 +23090,7 @@ for (var i = 0; i < object.clusterEndpoints.length; ++i) { if (typeof object.clusterEndpoints[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.clusterEndpoints: object expected"); - message.clusterEndpoints[i] = $root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint.fromObject(object.clusterEndpoints[i]); + message.clusterEndpoints[i] = $root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint.fromObject(object.clusterEndpoints[i], long + 1); } } if (object.backupCollection != null) @@ -22247,12 +23100,12 @@ if (object.automatedBackupConfig != null) { if (typeof object.automatedBackupConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.automatedBackupConfig: object expected"); - message.automatedBackupConfig = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.fromObject(object.automatedBackupConfig); + message.automatedBackupConfig = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.fromObject(object.automatedBackupConfig, long + 1); } if (object.encryptionInfo != null) { if (typeof object.encryptionInfo !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.encryptionInfo: object expected"); - message.encryptionInfo = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.fromObject(object.encryptionInfo); + message.encryptionInfo = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.fromObject(object.encryptionInfo, long + 1); } switch (object.serverCaMode) { default: @@ -22373,8 +23226,11 @@ var keys2; if (message.redisConfigs && (keys2 = Object.keys(message.redisConfigs)).length) { object.redisConfigs = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.redisConfigs, keys2[j]); object.redisConfigs[keys2[j]] = message.redisConfigs[keys2[j]]; + } } if (message.preciseSizeGb != null && message.hasOwnProperty("preciseSizeGb")) { object.preciseSizeGb = options.json && !isFinite(message.preciseSizeGb) ? String(message.preciseSizeGb) : message.preciseSizeGb; @@ -22498,7 +23354,7 @@ function StateInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22577,9 +23433,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StateInfo.decode = function decode(reader, length, error) { + StateInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22587,11 +23447,11 @@ break; switch (tag >>> 3) { case 1: { - message.updateInfo = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo.decode(reader, reader.uint32()); + message.updateInfo = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22622,14 +23482,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StateInfo.verify = function verify(message) { + StateInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.updateInfo != null && message.hasOwnProperty("updateInfo")) { properties.info = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo.verify(message.updateInfo); + var error = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo.verify(message.updateInfo, long + 1); if (error) return "updateInfo." + error; } @@ -22645,14 +23509,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.Cluster.StateInfo} StateInfo */ - StateInfo.fromObject = function fromObject(object) { + StateInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo(); if (object.updateInfo != null) { if (typeof object.updateInfo !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.updateInfo: object expected"); - message.updateInfo = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo.fromObject(object.updateInfo); + message.updateInfo = $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo.fromObject(object.updateInfo, long + 1); } return message; }; @@ -22725,7 +23593,7 @@ function UpdateInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22815,9 +23683,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateInfo.decode = function decode(reader, length, error) { + UpdateInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22833,7 +23705,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22864,9 +23736,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateInfo.verify = function verify(message) { + UpdateInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.targetShardCount != null && message.hasOwnProperty("targetShardCount")) { properties._targetShardCount = 1; @@ -22889,9 +23765,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo} UpdateInfo */ - UpdateInfo.fromObject = function fromObject(object) { + UpdateInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.Cluster.StateInfo.UpdateInfo(); if (object.targetShardCount != null) message.targetShardCount = object.targetShardCount | 0; @@ -22979,7 +23859,7 @@ this.uris = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23045,9 +23925,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsBackupSource.decode = function decode(reader, length, error) { + GcsBackupSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23061,7 +23945,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23092,9 +23976,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsBackupSource.verify = function verify(message) { + GcsBackupSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uris != null && message.hasOwnProperty("uris")) { if (!Array.isArray(message.uris)) return "uris: array expected"; @@ -23113,9 +24001,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource} GcsBackupSource */ - GcsBackupSource.fromObject = function fromObject(object) { + GcsBackupSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.Cluster.GcsBackupSource(); if (object.uris) { if (!Array.isArray(object.uris)) @@ -23199,7 +24091,7 @@ function ManagedBackupSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23264,9 +24156,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ManagedBackupSource.decode = function decode(reader, length, error) { + ManagedBackupSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23278,7 +24174,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23309,9 +24205,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ManagedBackupSource.verify = function verify(message) { + ManagedBackupSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.backup != null && message.hasOwnProperty("backup")) if (!$util.isString(message.backup)) return "backup: string expected"; @@ -23326,9 +24226,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource} ManagedBackupSource */ - ManagedBackupSource.fromObject = function fromObject(object) { + ManagedBackupSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.Cluster.ManagedBackupSource(); if (object.backup != null) message.backup = String(object.backup); @@ -23429,7 +24333,7 @@ function AutomatedBackupConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23534,9 +24438,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AutomatedBackupConfig.decode = function decode(reader, length, error) { + AutomatedBackupConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23544,7 +24452,7 @@ break; switch (tag >>> 3) { case 2: { - message.fixedFrequencySchedule = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule.decode(reader, reader.uint32()); + message.fixedFrequencySchedule = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -23552,11 +24460,11 @@ break; } case 3: { - message.retention = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.retention = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23587,14 +24495,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AutomatedBackupConfig.verify = function verify(message) { + AutomatedBackupConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.fixedFrequencySchedule != null && message.hasOwnProperty("fixedFrequencySchedule")) { properties.schedule = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule.verify(message.fixedFrequencySchedule); + var error = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule.verify(message.fixedFrequencySchedule, long + 1); if (error) return "fixedFrequencySchedule." + error; } @@ -23611,7 +24523,7 @@ if (message.retention != null && message.hasOwnProperty("retention")) { properties._retention = 1; { - var error = $root.google.protobuf.Duration.verify(message.retention); + var error = $root.google.protobuf.Duration.verify(message.retention, long + 1); if (error) return "retention." + error; } @@ -23627,14 +24539,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig} AutomatedBackupConfig */ - AutomatedBackupConfig.fromObject = function fromObject(object) { + AutomatedBackupConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig(); if (object.fixedFrequencySchedule != null) { if (typeof object.fixedFrequencySchedule !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.fixedFrequencySchedule: object expected"); - message.fixedFrequencySchedule = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule.fromObject(object.fixedFrequencySchedule); + message.fixedFrequencySchedule = $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule.fromObject(object.fixedFrequencySchedule, long + 1); } switch (object.automatedBackupMode) { default: @@ -23659,7 +24575,7 @@ if (object.retention != null) { if (typeof object.retention !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.retention: object expected"); - message.retention = $root.google.protobuf.Duration.fromObject(object.retention); + message.retention = $root.google.protobuf.Duration.fromObject(object.retention, long + 1); } return message; }; @@ -23740,7 +24656,7 @@ function FixedFrequencySchedule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23814,9 +24730,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FixedFrequencySchedule.decode = function decode(reader, length, error) { + FixedFrequencySchedule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23824,11 +24744,11 @@ break; switch (tag >>> 3) { case 2: { - message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32()); + message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23859,14 +24779,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FixedFrequencySchedule.verify = function verify(message) { + FixedFrequencySchedule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.startTime != null && message.hasOwnProperty("startTime")) { properties._startTime = 1; { - var error = $root.google.type.TimeOfDay.verify(message.startTime); + var error = $root.google.type.TimeOfDay.verify(message.startTime, long + 1); if (error) return "startTime." + error; } @@ -23882,14 +24806,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule} FixedFrequencySchedule */ - FixedFrequencySchedule.fromObject = function fromObject(object) { + FixedFrequencySchedule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.AutomatedBackupConfig.FixedFrequencySchedule.startTime: object expected"); - message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime); + message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime, long + 1); } return message; }; @@ -23987,7 +24915,7 @@ function BackupCollection(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24092,9 +25020,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BackupCollection.decode = function decode(reader, length, error) { + BackupCollection.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.BackupCollection(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24122,7 +25054,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24153,9 +25085,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BackupCollection.verify = function verify(message) { + BackupCollection.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -24182,9 +25118,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.BackupCollection} BackupCollection */ - BackupCollection.fromObject = function fromObject(object) { + BackupCollection.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.BackupCollection) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.BackupCollection(); if (object.name != null) message.name = String(object.name); @@ -24296,7 +25236,7 @@ this.backupFiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24502,9 +25442,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Backup.decode = function decode(reader, length, error) { + Backup.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.Backup(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24516,7 +25460,7 @@ break; } case 2: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -24532,7 +25476,7 @@ break; } case 6: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -24542,7 +25486,7 @@ case 8: { if (!(message.backupFiles && message.backupFiles.length)) message.backupFiles = []; - message.backupFiles.push($root.google.cloud.redis.cluster.v1beta1.BackupFile.decode(reader, reader.uint32())); + message.backupFiles.push($root.google.cloud.redis.cluster.v1beta1.BackupFile.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 9: { @@ -24566,7 +25510,7 @@ break; } case 14: { - message.encryptionInfo = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.decode(reader, reader.uint32()); + message.encryptionInfo = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { @@ -24574,7 +25518,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24605,14 +25549,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Backup.verify = function verify(message) { + Backup.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -24626,7 +25574,7 @@ if (!$util.isInteger(message.totalSizeBytes) && !(message.totalSizeBytes && $util.isInteger(message.totalSizeBytes.low) && $util.isInteger(message.totalSizeBytes.high))) return "totalSizeBytes: integer|Long expected"; if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -24637,7 +25585,7 @@ if (!Array.isArray(message.backupFiles)) return "backupFiles: array expected"; for (var i = 0; i < message.backupFiles.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.BackupFile.verify(message.backupFiles[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.BackupFile.verify(message.backupFiles[i], long + 1); if (error) return "backupFiles." + error; } @@ -24683,7 +25631,7 @@ break; } if (message.encryptionInfo != null && message.hasOwnProperty("encryptionInfo")) { - var error = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.verify(message.encryptionInfo); + var error = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.verify(message.encryptionInfo, long + 1); if (error) return "encryptionInfo." + error; } @@ -24701,16 +25649,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.Backup} Backup */ - Backup.fromObject = function fromObject(object) { + Backup.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.Backup) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.Backup(); if (object.name != null) message.name = String(object.name); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Backup.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.cluster != null) message.cluster = String(object.cluster); @@ -24728,7 +25680,7 @@ if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Backup.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.engineVersion != null) message.engineVersion = String(object.engineVersion); @@ -24739,7 +25691,7 @@ for (var i = 0; i < object.backupFiles.length; ++i) { if (typeof object.backupFiles[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Backup.backupFiles: object expected"); - message.backupFiles[i] = $root.google.cloud.redis.cluster.v1beta1.BackupFile.fromObject(object.backupFiles[i]); + message.backupFiles[i] = $root.google.cloud.redis.cluster.v1beta1.BackupFile.fromObject(object.backupFiles[i], long + 1); } } switch (object.nodeType) { @@ -24837,7 +25789,7 @@ if (object.encryptionInfo != null) { if (typeof object.encryptionInfo !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.Backup.encryptionInfo: object expected"); - message.encryptionInfo = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.fromObject(object.encryptionInfo); + message.encryptionInfo = $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo.fromObject(object.encryptionInfo, long + 1); } if (object.uid != null) message.uid = String(object.uid); @@ -25005,7 +25957,7 @@ function BackupFile(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25090,9 +26042,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BackupFile.decode = function decode(reader, length, error) { + BackupFile.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.BackupFile(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25108,11 +26064,11 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25143,9 +26099,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BackupFile.verify = function verify(message) { + BackupFile.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fileName != null && message.hasOwnProperty("fileName")) if (!$util.isString(message.fileName)) return "fileName: string expected"; @@ -25153,7 +26113,7 @@ if (!$util.isInteger(message.sizeBytes) && !(message.sizeBytes && $util.isInteger(message.sizeBytes.low) && $util.isInteger(message.sizeBytes.high))) return "sizeBytes: integer|Long expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -25168,9 +26128,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.BackupFile} BackupFile */ - BackupFile.fromObject = function fromObject(object) { + BackupFile.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.BackupFile) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.BackupFile(); if (object.fileName != null) message.fileName = String(object.fileName); @@ -25186,7 +26150,7 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.BackupFile.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } return message; }; @@ -25275,7 +26239,7 @@ function PscServiceAttachment(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25350,9 +26314,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PscServiceAttachment.decode = function decode(reader, length, error) { + PscServiceAttachment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25368,7 +26336,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25399,9 +26367,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PscServiceAttachment.verify = function verify(message) { + PscServiceAttachment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.serviceAttachment != null && message.hasOwnProperty("serviceAttachment")) if (!$util.isString(message.serviceAttachment)) return "serviceAttachment: string expected"; @@ -25426,9 +26398,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.PscServiceAttachment} PscServiceAttachment */ - PscServiceAttachment.fromObject = function fromObject(object) { + PscServiceAttachment.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.PscServiceAttachment(); if (object.serviceAttachment != null) message.serviceAttachment = String(object.serviceAttachment); @@ -25537,7 +26513,7 @@ this.secondaryClusters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25643,9 +26619,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CrossClusterReplicationConfig.decode = function decode(reader, length, error) { + CrossClusterReplicationConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25657,25 +26637,25 @@ break; } case 2: { - message.primaryCluster = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32()); + message.primaryCluster = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { if (!(message.secondaryClusters && message.secondaryClusters.length)) message.secondaryClusters = []; - message.secondaryClusters.push($root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32())); + message.secondaryClusters.push($root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.membership = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership.decode(reader, reader.uint32()); + message.membership = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25706,9 +26686,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CrossClusterReplicationConfig.verify = function verify(message) { + CrossClusterReplicationConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.clusterRole != null && message.hasOwnProperty("clusterRole")) switch (message.clusterRole) { default: @@ -25720,7 +26704,7 @@ break; } if (message.primaryCluster != null && message.hasOwnProperty("primaryCluster")) { - var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.verify(message.primaryCluster); + var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.verify(message.primaryCluster, long + 1); if (error) return "primaryCluster." + error; } @@ -25728,18 +26712,18 @@ if (!Array.isArray(message.secondaryClusters)) return "secondaryClusters: array expected"; for (var i = 0; i < message.secondaryClusters.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.verify(message.secondaryClusters[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.verify(message.secondaryClusters[i], long + 1); if (error) return "secondaryClusters." + error; } } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.membership != null && message.hasOwnProperty("membership")) { - var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership.verify(message.membership); + var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership.verify(message.membership, long + 1); if (error) return "membership." + error; } @@ -25754,9 +26738,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig} CrossClusterReplicationConfig */ - CrossClusterReplicationConfig.fromObject = function fromObject(object) { + CrossClusterReplicationConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig(); switch (object.clusterRole) { default: @@ -25785,7 +26773,7 @@ if (object.primaryCluster != null) { if (typeof object.primaryCluster !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.primaryCluster: object expected"); - message.primaryCluster = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.primaryCluster); + message.primaryCluster = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.primaryCluster, long + 1); } if (object.secondaryClusters) { if (!Array.isArray(object.secondaryClusters)) @@ -25794,18 +26782,18 @@ for (var i = 0; i < object.secondaryClusters.length; ++i) { if (typeof object.secondaryClusters[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.secondaryClusters: object expected"); - message.secondaryClusters[i] = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.secondaryClusters[i]); + message.secondaryClusters[i] = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.secondaryClusters[i], long + 1); } } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.membership != null) { if (typeof object.membership !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.membership: object expected"); - message.membership = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership.fromObject(object.membership); + message.membership = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership.fromObject(object.membership, long + 1); } return message; }; @@ -25894,7 +26882,7 @@ function RemoteCluster(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25969,9 +26957,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoteCluster.decode = function decode(reader, length, error) { + RemoteCluster.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25987,7 +26979,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26018,9 +27010,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoteCluster.verify = function verify(message) { + RemoteCluster.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.cluster != null && message.hasOwnProperty("cluster")) if (!$util.isString(message.cluster)) return "cluster: string expected"; @@ -26038,9 +27034,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster} RemoteCluster */ - RemoteCluster.fromObject = function fromObject(object) { + RemoteCluster.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster(); if (object.cluster != null) message.cluster = String(object.cluster); @@ -26124,7 +27124,7 @@ this.secondaryClusters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26200,9 +27200,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Membership.decode = function decode(reader, length, error) { + Membership.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26210,17 +27214,17 @@ break; switch (tag >>> 3) { case 1: { - message.primaryCluster = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32()); + message.primaryCluster = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { if (!(message.secondaryClusters && message.secondaryClusters.length)) message.secondaryClusters = []; - message.secondaryClusters.push($root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32())); + message.secondaryClusters.push($root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26251,11 +27255,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Membership.verify = function verify(message) { + Membership.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.primaryCluster != null && message.hasOwnProperty("primaryCluster")) { - var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.verify(message.primaryCluster); + var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.verify(message.primaryCluster, long + 1); if (error) return "primaryCluster." + error; } @@ -26263,7 +27271,7 @@ if (!Array.isArray(message.secondaryClusters)) return "secondaryClusters: array expected"; for (var i = 0; i < message.secondaryClusters.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.verify(message.secondaryClusters[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.verify(message.secondaryClusters[i], long + 1); if (error) return "secondaryClusters." + error; } @@ -26279,14 +27287,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership} Membership */ - Membership.fromObject = function fromObject(object) { + Membership.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership(); if (object.primaryCluster != null) { if (typeof object.primaryCluster !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership.primaryCluster: object expected"); - message.primaryCluster = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.primaryCluster); + message.primaryCluster = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.primaryCluster, long + 1); } if (object.secondaryClusters) { if (!Array.isArray(object.secondaryClusters)) @@ -26295,7 +27307,7 @@ for (var i = 0; i < object.secondaryClusters.length; ++i) { if (typeof object.secondaryClusters[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.Membership.secondaryClusters: object expected"); - message.secondaryClusters[i] = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.secondaryClusters[i]); + message.secondaryClusters[i] = $root.google.cloud.redis.cluster.v1beta1.CrossClusterReplicationConfig.RemoteCluster.fromObject(object.secondaryClusters[i], long + 1); } } return message; @@ -26401,7 +27413,7 @@ this.weeklyMaintenanceWindow = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26487,9 +27499,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterMaintenancePolicy.decode = function decode(reader, length, error) { + ClusterMaintenancePolicy.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26497,21 +27513,21 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { if (!(message.weeklyMaintenanceWindow && message.weeklyMaintenanceWindow.length)) message.weeklyMaintenanceWindow = []; - message.weeklyMaintenanceWindow.push($root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow.decode(reader, reader.uint32())); + message.weeklyMaintenanceWindow.push($root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26542,16 +27558,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterMaintenancePolicy.verify = function verify(message) { + ClusterMaintenancePolicy.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -26559,7 +27579,7 @@ if (!Array.isArray(message.weeklyMaintenanceWindow)) return "weeklyMaintenanceWindow: array expected"; for (var i = 0; i < message.weeklyMaintenanceWindow.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow.verify(message.weeklyMaintenanceWindow[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow.verify(message.weeklyMaintenanceWindow[i], long + 1); if (error) return "weeklyMaintenanceWindow." + error; } @@ -26575,19 +27595,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy} ClusterMaintenancePolicy */ - ClusterMaintenancePolicy.fromObject = function fromObject(object) { + ClusterMaintenancePolicy.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.weeklyMaintenanceWindow) { if (!Array.isArray(object.weeklyMaintenanceWindow)) @@ -26596,7 +27620,7 @@ for (var i = 0; i < object.weeklyMaintenanceWindow.length; ++i) { if (typeof object.weeklyMaintenanceWindow[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterMaintenancePolicy.weeklyMaintenanceWindow: object expected"); - message.weeklyMaintenanceWindow[i] = $root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow.fromObject(object.weeklyMaintenanceWindow[i]); + message.weeklyMaintenanceWindow[i] = $root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow.fromObject(object.weeklyMaintenanceWindow[i], long + 1); } } return message; @@ -26683,7 +27707,7 @@ function ClusterWeeklyMaintenanceWindow(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26758,9 +27782,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterWeeklyMaintenanceWindow.decode = function decode(reader, length, error) { + ClusterWeeklyMaintenanceWindow.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26772,11 +27800,11 @@ break; } case 2: { - message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32()); + message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26807,9 +27835,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterWeeklyMaintenanceWindow.verify = function verify(message) { + ClusterWeeklyMaintenanceWindow.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.day != null && message.hasOwnProperty("day")) switch (message.day) { default: @@ -26825,7 +27857,7 @@ break; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.type.TimeOfDay.verify(message.startTime); + var error = $root.google.type.TimeOfDay.verify(message.startTime, long + 1); if (error) return "startTime." + error; } @@ -26840,9 +27872,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow} ClusterWeeklyMaintenanceWindow */ - ClusterWeeklyMaintenanceWindow.fromObject = function fromObject(object) { + ClusterWeeklyMaintenanceWindow.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow(); switch (object.day) { default: @@ -26887,7 +27923,7 @@ if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterWeeklyMaintenanceWindow.startTime: object expected"); - message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime); + message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime, long + 1); } return message; }; @@ -26966,7 +28002,7 @@ function ClusterMaintenanceSchedule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27041,9 +28077,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterMaintenanceSchedule.decode = function decode(reader, length, error) { + ClusterMaintenanceSchedule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27051,15 +28091,15 @@ break; switch (tag >>> 3) { case 1: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27090,16 +28130,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterMaintenanceSchedule.verify = function verify(message) { + ClusterMaintenanceSchedule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -27114,19 +28158,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule} ClusterMaintenanceSchedule */ - ClusterMaintenanceSchedule.fromObject = function fromObject(object) { + ClusterMaintenanceSchedule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterMaintenanceSchedule.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } return message; }; @@ -27204,7 +28252,7 @@ function PscConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27269,9 +28317,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PscConfig.decode = function decode(reader, length, error) { + PscConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.PscConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27283,7 +28335,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27314,9 +28366,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PscConfig.verify = function verify(message) { + PscConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.network != null && message.hasOwnProperty("network")) if (!$util.isString(message.network)) return "network: string expected"; @@ -27331,9 +28387,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.PscConfig} PscConfig */ - PscConfig.fromObject = function fromObject(object) { + PscConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.PscConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.PscConfig(); if (object.network != null) message.network = String(object.network); @@ -27411,7 +28471,7 @@ function DiscoveryEndpoint(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27496,9 +28556,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DiscoveryEndpoint.decode = function decode(reader, length, error) { + DiscoveryEndpoint.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27514,11 +28578,11 @@ break; } case 3: { - message.pscConfig = $root.google.cloud.redis.cluster.v1beta1.PscConfig.decode(reader, reader.uint32()); + message.pscConfig = $root.google.cloud.redis.cluster.v1beta1.PscConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27549,9 +28613,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DiscoveryEndpoint.verify = function verify(message) { + DiscoveryEndpoint.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.address != null && message.hasOwnProperty("address")) if (!$util.isString(message.address)) return "address: string expected"; @@ -27559,7 +28627,7 @@ if (!$util.isInteger(message.port)) return "port: integer expected"; if (message.pscConfig != null && message.hasOwnProperty("pscConfig")) { - var error = $root.google.cloud.redis.cluster.v1beta1.PscConfig.verify(message.pscConfig); + var error = $root.google.cloud.redis.cluster.v1beta1.PscConfig.verify(message.pscConfig, long + 1); if (error) return "pscConfig." + error; } @@ -27574,9 +28642,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint} DiscoveryEndpoint */ - DiscoveryEndpoint.fromObject = function fromObject(object) { + DiscoveryEndpoint.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint(); if (object.address != null) message.address = String(object.address); @@ -27585,7 +28657,7 @@ if (object.pscConfig != null) { if (typeof object.pscConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.DiscoveryEndpoint.pscConfig: object expected"); - message.pscConfig = $root.google.cloud.redis.cluster.v1beta1.PscConfig.fromObject(object.pscConfig); + message.pscConfig = $root.google.cloud.redis.cluster.v1beta1.PscConfig.fromObject(object.pscConfig, long + 1); } return message; }; @@ -27673,7 +28745,7 @@ function PscConnection(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27808,9 +28880,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PscConnection.decode = function decode(reader, length, error) { + PscConnection.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.PscConnection(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27850,7 +28926,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27881,9 +28957,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PscConnection.verify = function verify(message) { + PscConnection.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pscConnectionId != null && message.hasOwnProperty("pscConnectionId")) if (!$util.isString(message.pscConnectionId)) return "pscConnectionId: string expected"; @@ -27932,9 +29012,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.PscConnection} PscConnection */ - PscConnection.fromObject = function fromObject(object) { + PscConnection.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.PscConnection) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.PscConnection(); if (object.pscConnectionId != null) message.pscConnectionId = String(object.pscConnectionId); @@ -28087,7 +29171,7 @@ this.connections = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28153,9 +29237,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterEndpoint.decode = function decode(reader, length, error) { + ClusterEndpoint.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28165,11 +29253,11 @@ case 1: { if (!(message.connections && message.connections.length)) message.connections = []; - message.connections.push($root.google.cloud.redis.cluster.v1beta1.ConnectionDetail.decode(reader, reader.uint32())); + message.connections.push($root.google.cloud.redis.cluster.v1beta1.ConnectionDetail.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28200,14 +29288,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterEndpoint.verify = function verify(message) { + ClusterEndpoint.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.connections != null && message.hasOwnProperty("connections")) { if (!Array.isArray(message.connections)) return "connections: array expected"; for (var i = 0; i < message.connections.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.ConnectionDetail.verify(message.connections[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.ConnectionDetail.verify(message.connections[i], long + 1); if (error) return "connections." + error; } @@ -28223,9 +29315,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ClusterEndpoint} ClusterEndpoint */ - ClusterEndpoint.fromObject = function fromObject(object) { + ClusterEndpoint.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ClusterEndpoint(); if (object.connections) { if (!Array.isArray(object.connections)) @@ -28234,7 +29330,7 @@ for (var i = 0; i < object.connections.length; ++i) { if (typeof object.connections[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterEndpoint.connections: object expected"); - message.connections[i] = $root.google.cloud.redis.cluster.v1beta1.ConnectionDetail.fromObject(object.connections[i]); + message.connections[i] = $root.google.cloud.redis.cluster.v1beta1.ConnectionDetail.fromObject(object.connections[i], long + 1); } } return message; @@ -28313,7 +29409,7 @@ function ConnectionDetail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28402,9 +29498,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConnectionDetail.decode = function decode(reader, length, error) { + ConnectionDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ConnectionDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28412,15 +29512,15 @@ break; switch (tag >>> 3) { case 1: { - message.pscAutoConnection = $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection.decode(reader, reader.uint32()); + message.pscAutoConnection = $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.pscConnection = $root.google.cloud.redis.cluster.v1beta1.PscConnection.decode(reader, reader.uint32()); + message.pscConnection = $root.google.cloud.redis.cluster.v1beta1.PscConnection.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28451,14 +29551,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConnectionDetail.verify = function verify(message) { + ConnectionDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.pscAutoConnection != null && message.hasOwnProperty("pscAutoConnection")) { properties.connection = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection.verify(message.pscAutoConnection); + var error = $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection.verify(message.pscAutoConnection, long + 1); if (error) return "pscAutoConnection." + error; } @@ -28468,7 +29572,7 @@ return "connection: multiple values"; properties.connection = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.PscConnection.verify(message.pscConnection); + var error = $root.google.cloud.redis.cluster.v1beta1.PscConnection.verify(message.pscConnection, long + 1); if (error) return "pscConnection." + error; } @@ -28484,19 +29588,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ConnectionDetail} ConnectionDetail */ - ConnectionDetail.fromObject = function fromObject(object) { + ConnectionDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ConnectionDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ConnectionDetail(); if (object.pscAutoConnection != null) { if (typeof object.pscAutoConnection !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ConnectionDetail.pscAutoConnection: object expected"); - message.pscAutoConnection = $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection.fromObject(object.pscAutoConnection); + message.pscAutoConnection = $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection.fromObject(object.pscAutoConnection, long + 1); } if (object.pscConnection != null) { if (typeof object.pscConnection !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ConnectionDetail.pscConnection: object expected"); - message.pscConnection = $root.google.cloud.redis.cluster.v1beta1.PscConnection.fromObject(object.pscConnection); + message.pscConnection = $root.google.cloud.redis.cluster.v1beta1.PscConnection.fromObject(object.pscConnection, long + 1); } return message; }; @@ -28583,7 +29691,7 @@ function PscAutoConnection(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28718,9 +29826,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PscAutoConnection.decode = function decode(reader, length, error) { + PscAutoConnection.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28760,7 +29872,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28791,9 +29903,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PscAutoConnection.verify = function verify(message) { + PscAutoConnection.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pscConnectionId != null && message.hasOwnProperty("pscConnectionId")) if (!$util.isString(message.pscConnectionId)) return "pscConnectionId: string expected"; @@ -28842,9 +29958,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.PscAutoConnection} PscAutoConnection */ - PscAutoConnection.fromObject = function fromObject(object) { + PscAutoConnection.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.PscAutoConnection(); if (object.pscConnectionId != null) message.pscConnectionId = String(object.pscConnectionId); @@ -28997,7 +30117,7 @@ function SharedRegionalCertificateAuthority(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29086,9 +30206,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SharedRegionalCertificateAuthority.decode = function decode(reader, length, error) { + SharedRegionalCertificateAuthority.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29096,7 +30220,7 @@ break; switch (tag >>> 3) { case 2: { - message.managedServerCa = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.decode(reader, reader.uint32()); + message.managedServerCa = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -29104,7 +30228,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29135,14 +30259,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SharedRegionalCertificateAuthority.verify = function verify(message) { + SharedRegionalCertificateAuthority.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.managedServerCa != null && message.hasOwnProperty("managedServerCa")) { properties.serverCa = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.verify(message.managedServerCa); + var error = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.verify(message.managedServerCa, long + 1); if (error) return "managedServerCa." + error; } @@ -29161,14 +30289,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority} SharedRegionalCertificateAuthority */ - SharedRegionalCertificateAuthority.fromObject = function fromObject(object) { + SharedRegionalCertificateAuthority.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority(); if (object.managedServerCa != null) { if (typeof object.managedServerCa !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.managedServerCa: object expected"); - message.managedServerCa = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.fromObject(object.managedServerCa); + message.managedServerCa = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.fromObject(object.managedServerCa, long + 1); } if (object.name != null) message.name = String(object.name); @@ -29247,7 +30379,7 @@ this.caCerts = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29313,9 +30445,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegionalManagedCertificateAuthority.decode = function decode(reader, length, error) { + RegionalManagedCertificateAuthority.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29325,11 +30461,11 @@ case 1: { if (!(message.caCerts && message.caCerts.length)) message.caCerts = []; - message.caCerts.push($root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.decode(reader, reader.uint32())); + message.caCerts.push($root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29360,14 +30496,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegionalManagedCertificateAuthority.verify = function verify(message) { + RegionalManagedCertificateAuthority.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.caCerts != null && message.hasOwnProperty("caCerts")) { if (!Array.isArray(message.caCerts)) return "caCerts: array expected"; for (var i = 0; i < message.caCerts.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.verify(message.caCerts[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.verify(message.caCerts[i], long + 1); if (error) return "caCerts." + error; } @@ -29383,9 +30523,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority} RegionalManagedCertificateAuthority */ - RegionalManagedCertificateAuthority.fromObject = function fromObject(object) { + RegionalManagedCertificateAuthority.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority(); if (object.caCerts) { if (!Array.isArray(object.caCerts)) @@ -29394,7 +30538,7 @@ for (var i = 0; i < object.caCerts.length; ++i) { if (typeof object.caCerts[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.caCerts: object expected"); - message.caCerts[i] = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.fromObject(object.caCerts[i]); + message.caCerts[i] = $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain.fromObject(object.caCerts[i], long + 1); } } return message; @@ -29470,7 +30614,7 @@ this.certificates = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29536,9 +30680,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RegionalCertChain.decode = function decode(reader, length, error) { + RegionalCertChain.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29552,7 +30700,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29583,9 +30731,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RegionalCertChain.verify = function verify(message) { + RegionalCertChain.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.certificates != null && message.hasOwnProperty("certificates")) { if (!Array.isArray(message.certificates)) return "certificates: array expected"; @@ -29604,9 +30756,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain} RegionalCertChain */ - RegionalCertChain.fromObject = function fromObject(object) { + RegionalCertChain.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.SharedRegionalCertificateAuthority.RegionalManagedCertificateAuthority.RegionalCertChain(); if (object.certificates) { if (!Array.isArray(object.certificates)) @@ -29696,7 +30852,7 @@ function GetSharedRegionalCertificateAuthorityRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29761,9 +30917,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetSharedRegionalCertificateAuthorityRequest.decode = function decode(reader, length, error) { + GetSharedRegionalCertificateAuthorityRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.GetSharedRegionalCertificateAuthorityRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29775,7 +30935,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29806,9 +30966,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetSharedRegionalCertificateAuthorityRequest.verify = function verify(message) { + GetSharedRegionalCertificateAuthorityRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -29823,9 +30987,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.GetSharedRegionalCertificateAuthorityRequest} GetSharedRegionalCertificateAuthorityRequest */ - GetSharedRegionalCertificateAuthorityRequest.fromObject = function fromObject(object) { + GetSharedRegionalCertificateAuthorityRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.GetSharedRegionalCertificateAuthorityRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.GetSharedRegionalCertificateAuthorityRequest(); if (object.name != null) message.name = String(object.name); @@ -29907,7 +31075,7 @@ function OperationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30032,9 +31200,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationMetadata.decode = function decode(reader, length, error) { + OperationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.OperationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30042,11 +31214,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -30070,7 +31242,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30101,16 +31273,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationMetadata.verify = function verify(message) { + OperationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -30140,19 +31316,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.OperationMetadata} OperationMetadata */ - OperationMetadata.fromObject = function fromObject(object) { + OperationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.OperationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.OperationMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.OperationMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.OperationMetadata.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.target != null) message.target = String(object.target); @@ -30256,7 +31436,7 @@ function CertificateAuthority(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30345,9 +31525,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CertificateAuthority.decode = function decode(reader, length, error) { + CertificateAuthority.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30355,7 +31539,7 @@ break; switch (tag >>> 3) { case 1: { - message.managedServerCa = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.decode(reader, reader.uint32()); + message.managedServerCa = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -30363,7 +31547,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30394,14 +31578,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CertificateAuthority.verify = function verify(message) { + CertificateAuthority.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.managedServerCa != null && message.hasOwnProperty("managedServerCa")) { properties.serverCa = 1; { - var error = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.verify(message.managedServerCa); + var error = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.verify(message.managedServerCa, long + 1); if (error) return "managedServerCa." + error; } @@ -30420,14 +31608,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.CertificateAuthority} CertificateAuthority */ - CertificateAuthority.fromObject = function fromObject(object) { + CertificateAuthority.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority(); if (object.managedServerCa != null) { if (typeof object.managedServerCa !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CertificateAuthority.managedServerCa: object expected"); - message.managedServerCa = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.fromObject(object.managedServerCa); + message.managedServerCa = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.fromObject(object.managedServerCa, long + 1); } if (object.name != null) message.name = String(object.name); @@ -30506,7 +31698,7 @@ this.caCerts = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30572,9 +31764,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ManagedCertificateAuthority.decode = function decode(reader, length, error) { + ManagedCertificateAuthority.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30584,11 +31780,11 @@ case 1: { if (!(message.caCerts && message.caCerts.length)) message.caCerts = []; - message.caCerts.push($root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain.decode(reader, reader.uint32())); + message.caCerts.push($root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30619,14 +31815,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ManagedCertificateAuthority.verify = function verify(message) { + ManagedCertificateAuthority.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.caCerts != null && message.hasOwnProperty("caCerts")) { if (!Array.isArray(message.caCerts)) return "caCerts: array expected"; for (var i = 0; i < message.caCerts.length; ++i) { - var error = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain.verify(message.caCerts[i]); + var error = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain.verify(message.caCerts[i], long + 1); if (error) return "caCerts." + error; } @@ -30642,9 +31842,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority} ManagedCertificateAuthority */ - ManagedCertificateAuthority.fromObject = function fromObject(object) { + ManagedCertificateAuthority.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority(); if (object.caCerts) { if (!Array.isArray(object.caCerts)) @@ -30653,7 +31857,7 @@ for (var i = 0; i < object.caCerts.length; ++i) { if (typeof object.caCerts[i] !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.caCerts: object expected"); - message.caCerts[i] = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain.fromObject(object.caCerts[i]); + message.caCerts[i] = $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain.fromObject(object.caCerts[i], long + 1); } } return message; @@ -30729,7 +31933,7 @@ this.certificates = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30795,9 +31999,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CertChain.decode = function decode(reader, length, error) { + CertChain.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30811,7 +32019,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30842,9 +32050,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CertChain.verify = function verify(message) { + CertChain.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.certificates != null && message.hasOwnProperty("certificates")) { if (!Array.isArray(message.certificates)) return "certificates: array expected"; @@ -30863,9 +32075,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain} CertChain */ - CertChain.fromObject = function fromObject(object) { + CertChain.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.CertificateAuthority.ManagedCertificateAuthority.CertChain(); if (object.certificates) { if (!Array.isArray(object.certificates)) @@ -30957,7 +32173,7 @@ function ClusterPersistenceConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31042,9 +32258,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClusterPersistenceConfig.decode = function decode(reader, length, error) { + ClusterPersistenceConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31056,15 +32276,15 @@ break; } case 2: { - message.rdbConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig.decode(reader, reader.uint32()); + message.rdbConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.aofConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig.decode(reader, reader.uint32()); + message.aofConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31095,9 +32315,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClusterPersistenceConfig.verify = function verify(message) { + ClusterPersistenceConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -31109,12 +32333,12 @@ break; } if (message.rdbConfig != null && message.hasOwnProperty("rdbConfig")) { - var error = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig.verify(message.rdbConfig); + var error = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig.verify(message.rdbConfig, long + 1); if (error) return "rdbConfig." + error; } if (message.aofConfig != null && message.hasOwnProperty("aofConfig")) { - var error = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig.verify(message.aofConfig); + var error = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig.verify(message.aofConfig, long + 1); if (error) return "aofConfig." + error; } @@ -31129,9 +32353,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig} ClusterPersistenceConfig */ - ClusterPersistenceConfig.fromObject = function fromObject(object) { + ClusterPersistenceConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig(); switch (object.mode) { default: @@ -31160,12 +32388,12 @@ if (object.rdbConfig != null) { if (typeof object.rdbConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.rdbConfig: object expected"); - message.rdbConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig.fromObject(object.rdbConfig); + message.rdbConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig.fromObject(object.rdbConfig, long + 1); } if (object.aofConfig != null) { if (typeof object.aofConfig !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.aofConfig: object expected"); - message.aofConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig.fromObject(object.aofConfig); + message.aofConfig = $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig.fromObject(object.aofConfig, long + 1); } return message; }; @@ -31244,7 +32472,7 @@ function RDBConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31319,9 +32547,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RDBConfig.decode = function decode(reader, length, error) { + RDBConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31333,11 +32565,11 @@ break; } case 2: { - message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31368,9 +32600,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RDBConfig.verify = function verify(message) { + RDBConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rdbSnapshotPeriod != null && message.hasOwnProperty("rdbSnapshotPeriod")) switch (message.rdbSnapshotPeriod) { default: @@ -31383,7 +32619,7 @@ break; } if (message.rdbSnapshotStartTime != null && message.hasOwnProperty("rdbSnapshotStartTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.rdbSnapshotStartTime); + var error = $root.google.protobuf.Timestamp.verify(message.rdbSnapshotStartTime, long + 1); if (error) return "rdbSnapshotStartTime." + error; } @@ -31398,9 +32634,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig} RDBConfig */ - RDBConfig.fromObject = function fromObject(object) { + RDBConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig(); switch (object.rdbSnapshotPeriod) { default: @@ -31433,7 +32673,7 @@ if (object.rdbSnapshotStartTime != null) { if (typeof object.rdbSnapshotStartTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.RDBConfig.rdbSnapshotStartTime: object expected"); - message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.fromObject(object.rdbSnapshotStartTime); + message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.fromObject(object.rdbSnapshotStartTime, long + 1); } return message; }; @@ -31531,7 +32771,7 @@ function AOFConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31596,9 +32836,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AOFConfig.decode = function decode(reader, length, error) { + AOFConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31610,7 +32854,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31641,9 +32885,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AOFConfig.verify = function verify(message) { + AOFConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.appendFsync != null && message.hasOwnProperty("appendFsync")) switch (message.appendFsync) { default: @@ -31665,9 +32913,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig} AOFConfig */ - AOFConfig.fromObject = function fromObject(object) { + AOFConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ClusterPersistenceConfig.AOFConfig(); switch (object.appendFsync) { default: @@ -31805,7 +33057,7 @@ function ZoneDistributionConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31880,9 +33132,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ZoneDistributionConfig.decode = function decode(reader, length, error) { + ZoneDistributionConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31898,7 +33154,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31929,9 +33185,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ZoneDistributionConfig.verify = function verify(message) { + ZoneDistributionConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -31955,9 +33215,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig} ZoneDistributionConfig */ - ZoneDistributionConfig.fromObject = function fromObject(object) { + ZoneDistributionConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.ZoneDistributionConfig(); switch (object.mode) { default: @@ -32075,7 +33339,7 @@ function RescheduleClusterMaintenanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32160,9 +33424,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RescheduleClusterMaintenanceRequest.decode = function decode(reader, length, error) { + RescheduleClusterMaintenanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.RescheduleClusterMaintenanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32178,11 +33446,11 @@ break; } case 3: { - message.scheduleTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.scheduleTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32213,9 +33481,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RescheduleClusterMaintenanceRequest.verify = function verify(message) { + RescheduleClusterMaintenanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -32229,7 +33501,7 @@ break; } if (message.scheduleTime != null && message.hasOwnProperty("scheduleTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.scheduleTime); + var error = $root.google.protobuf.Timestamp.verify(message.scheduleTime, long + 1); if (error) return "scheduleTime." + error; } @@ -32244,9 +33516,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.RescheduleClusterMaintenanceRequest} RescheduleClusterMaintenanceRequest */ - RescheduleClusterMaintenanceRequest.fromObject = function fromObject(object) { + RescheduleClusterMaintenanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.RescheduleClusterMaintenanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.RescheduleClusterMaintenanceRequest(); if (object.name != null) message.name = String(object.name); @@ -32273,7 +33549,7 @@ if (object.scheduleTime != null) { if (typeof object.scheduleTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.RescheduleClusterMaintenanceRequest.scheduleTime: object expected"); - message.scheduleTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleTime); + message.scheduleTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleTime, long + 1); } return message; }; @@ -32374,7 +33650,7 @@ this.kmsKeyVersions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32470,9 +33746,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EncryptionInfo.decode = function decode(reader, length, error) { + EncryptionInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32494,11 +33774,11 @@ break; } case 4: { - message.lastUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastUpdateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32529,9 +33809,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EncryptionInfo.verify = function verify(message) { + EncryptionInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.encryptionType != null && message.hasOwnProperty("encryptionType")) switch (message.encryptionType) { default: @@ -32564,7 +33848,7 @@ break; } if (message.lastUpdateTime != null && message.hasOwnProperty("lastUpdateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastUpdateTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastUpdateTime, long + 1); if (error) return "lastUpdateTime." + error; } @@ -32579,9 +33863,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.cluster.v1beta1.EncryptionInfo} EncryptionInfo */ - EncryptionInfo.fromObject = function fromObject(object) { + EncryptionInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.cluster.v1beta1.EncryptionInfo(); switch (object.encryptionType) { default: @@ -32657,7 +33945,7 @@ if (object.lastUpdateTime != null) { if (typeof object.lastUpdateTime !== "object") throw TypeError(".google.cloud.redis.cluster.v1beta1.EncryptionInfo.lastUpdateTime: object expected"); - message.lastUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.lastUpdateTime); + message.lastUpdateTime = $root.google.protobuf.Timestamp.fromObject(object.lastUpdateTime, long + 1); } return message; }; @@ -32812,7 +34100,7 @@ this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32888,9 +34176,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length, error) { + Http.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32900,7 +34192,7 @@ case 1: { if (!(message.rules && message.rules.length)) message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -32908,7 +34200,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32939,14 +34231,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + Http.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rules != null && message.hasOwnProperty("rules")) { if (!Array.isArray(message.rules)) return "rules: array expected"; for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); + var error = $root.google.api.HttpRule.verify(message.rules[i], long + 1); if (error) return "rules." + error; } @@ -32965,9 +34261,13 @@ * @param {Object.} object Plain object * @returns {google.api.Http} Http */ - Http.fromObject = function fromObject(object) { + Http.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Http) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Http(); if (object.rules) { if (!Array.isArray(object.rules)) @@ -32976,7 +34276,7 @@ for (var i = 0; i < object.rules.length; ++i) { if (typeof object.rules[i] !== "object") throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i], long + 1); } } if (object.fullyDecodeReservedExpansion != null) @@ -33070,7 +34370,7 @@ this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33240,9 +34540,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length, error) { + HttpRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33274,7 +34578,7 @@ break; } case 8: { - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -33288,11 +34592,11 @@ case 11: { if (!(message.additionalBindings && message.additionalBindings.length)) message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33323,9 +34627,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpRule.verify = function verify(message) { + HttpRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) @@ -33368,7 +34676,7 @@ return "pattern: multiple values"; properties.pattern = 1; { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); + var error = $root.google.api.CustomHttpPattern.verify(message.custom, long + 1); if (error) return "custom." + error; } @@ -33383,7 +34691,7 @@ if (!Array.isArray(message.additionalBindings)) return "additionalBindings: array expected"; for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i], long + 1); if (error) return "additionalBindings." + error; } @@ -33399,9 +34707,13 @@ * @param {Object.} object Plain object * @returns {google.api.HttpRule} HttpRule */ - HttpRule.fromObject = function fromObject(object) { + HttpRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.HttpRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.HttpRule(); if (object.selector != null) message.selector = String(object.selector); @@ -33418,7 +34730,7 @@ if (object.custom != null) { if (typeof object.custom !== "object") throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom, long + 1); } if (object.body != null) message.body = String(object.body); @@ -33431,7 +34743,7 @@ for (var i = 0; i < object.additionalBindings.length; ++i) { if (typeof object.additionalBindings[i] !== "object") throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i], long + 1); } } return message; @@ -33551,7 +34863,7 @@ function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33626,9 +34938,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length, error) { + CustomHttpPattern.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33644,7 +34960,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33675,9 +34991,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) if (!$util.isString(message.kind)) return "kind: string expected"; @@ -33695,9 +35015,13 @@ * @param {Object.} object Plain object * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - CustomHttpPattern.fromObject = function fromObject(object) { + CustomHttpPattern.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CustomHttpPattern) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CustomHttpPattern(); if (object.kind != null) message.kind = String(object.kind); @@ -33782,7 +35106,7 @@ this.destinations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33871,9 +35195,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CommonLanguageSettings.decode = function decode(reader, length, error) { + CommonLanguageSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CommonLanguageSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33896,11 +35224,11 @@ break; } case 3: { - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32()); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33931,9 +35259,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CommonLanguageSettings.verify = function verify(message) { + CommonLanguageSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.referenceDocsUri != null && message.hasOwnProperty("referenceDocsUri")) if (!$util.isString(message.referenceDocsUri)) return "referenceDocsUri: string expected"; @@ -33951,7 +35283,7 @@ } } if (message.selectiveGapicGeneration != null && message.hasOwnProperty("selectiveGapicGeneration")) { - var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration); + var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration, long + 1); if (error) return "selectiveGapicGeneration." + error; } @@ -33966,9 +35298,13 @@ * @param {Object.} object Plain object * @returns {google.api.CommonLanguageSettings} CommonLanguageSettings */ - CommonLanguageSettings.fromObject = function fromObject(object) { + CommonLanguageSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CommonLanguageSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CommonLanguageSettings(); if (object.referenceDocsUri != null) message.referenceDocsUri = String(object.referenceDocsUri); @@ -34000,7 +35336,7 @@ if (object.selectiveGapicGeneration != null) { if (typeof object.selectiveGapicGeneration !== "object") throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected"); - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration, long + 1); } return message; }; @@ -34095,7 +35431,7 @@ function ClientLibrarySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34260,9 +35596,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClientLibrarySettings.decode = function decode(reader, length, error) { + ClientLibrarySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ClientLibrarySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34282,39 +35622,39 @@ break; } case 21: { - message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32()); + message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32()); + message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { - message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32()); + message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32()); + message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32()); + message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { - message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32()); + message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32()); + message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32()); + message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34345,9 +35685,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClientLibrarySettings.verify = function verify(message) { + ClientLibrarySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isString(message.version)) return "version: string expected"; @@ -34369,42 +35713,42 @@ if (typeof message.restNumericEnums !== "boolean") return "restNumericEnums: boolean expected"; if (message.javaSettings != null && message.hasOwnProperty("javaSettings")) { - var error = $root.google.api.JavaSettings.verify(message.javaSettings); + var error = $root.google.api.JavaSettings.verify(message.javaSettings, long + 1); if (error) return "javaSettings." + error; } if (message.cppSettings != null && message.hasOwnProperty("cppSettings")) { - var error = $root.google.api.CppSettings.verify(message.cppSettings); + var error = $root.google.api.CppSettings.verify(message.cppSettings, long + 1); if (error) return "cppSettings." + error; } if (message.phpSettings != null && message.hasOwnProperty("phpSettings")) { - var error = $root.google.api.PhpSettings.verify(message.phpSettings); + var error = $root.google.api.PhpSettings.verify(message.phpSettings, long + 1); if (error) return "phpSettings." + error; } if (message.pythonSettings != null && message.hasOwnProperty("pythonSettings")) { - var error = $root.google.api.PythonSettings.verify(message.pythonSettings); + var error = $root.google.api.PythonSettings.verify(message.pythonSettings, long + 1); if (error) return "pythonSettings." + error; } if (message.nodeSettings != null && message.hasOwnProperty("nodeSettings")) { - var error = $root.google.api.NodeSettings.verify(message.nodeSettings); + var error = $root.google.api.NodeSettings.verify(message.nodeSettings, long + 1); if (error) return "nodeSettings." + error; } if (message.dotnetSettings != null && message.hasOwnProperty("dotnetSettings")) { - var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings); + var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings, long + 1); if (error) return "dotnetSettings." + error; } if (message.rubySettings != null && message.hasOwnProperty("rubySettings")) { - var error = $root.google.api.RubySettings.verify(message.rubySettings); + var error = $root.google.api.RubySettings.verify(message.rubySettings, long + 1); if (error) return "rubySettings." + error; } if (message.goSettings != null && message.hasOwnProperty("goSettings")) { - var error = $root.google.api.GoSettings.verify(message.goSettings); + var error = $root.google.api.GoSettings.verify(message.goSettings, long + 1); if (error) return "goSettings." + error; } @@ -34419,9 +35763,13 @@ * @param {Object.} object Plain object * @returns {google.api.ClientLibrarySettings} ClientLibrarySettings */ - ClientLibrarySettings.fromObject = function fromObject(object) { + ClientLibrarySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ClientLibrarySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ClientLibrarySettings(); if (object.version != null) message.version = String(object.version); @@ -34470,42 +35818,42 @@ if (object.javaSettings != null) { if (typeof object.javaSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected"); - message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings); + message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings, long + 1); } if (object.cppSettings != null) { if (typeof object.cppSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected"); - message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings); + message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings, long + 1); } if (object.phpSettings != null) { if (typeof object.phpSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected"); - message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings); + message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings, long + 1); } if (object.pythonSettings != null) { if (typeof object.pythonSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected"); - message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings); + message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings, long + 1); } if (object.nodeSettings != null) { if (typeof object.nodeSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected"); - message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings); + message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings, long + 1); } if (object.dotnetSettings != null) { if (typeof object.dotnetSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected"); - message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings); + message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings, long + 1); } if (object.rubySettings != null) { if (typeof object.rubySettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected"); - message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings); + message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings, long + 1); } if (object.goSettings != null) { if (typeof object.goSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected"); - message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings); + message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings, long + 1); } return message; }; @@ -34623,7 +35971,7 @@ this.librarySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34791,9 +36139,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Publishing.decode = function decode(reader, length, error) { + Publishing.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Publishing(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34803,7 +36155,7 @@ case 2: { if (!(message.methodSettings && message.methodSettings.length)) message.methodSettings = []; - message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32())); + message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 101: { @@ -34839,7 +36191,7 @@ case 109: { if (!(message.librarySettings && message.librarySettings.length)) message.librarySettings = []; - message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32())); + message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 110: { @@ -34851,7 +36203,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34882,14 +36234,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Publishing.verify = function verify(message) { + Publishing.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methodSettings != null && message.hasOwnProperty("methodSettings")) { if (!Array.isArray(message.methodSettings)) return "methodSettings: array expected"; for (var i = 0; i < message.methodSettings.length; ++i) { - var error = $root.google.api.MethodSettings.verify(message.methodSettings[i]); + var error = $root.google.api.MethodSettings.verify(message.methodSettings[i], long + 1); if (error) return "methodSettings." + error; } @@ -34934,7 +36290,7 @@ if (!Array.isArray(message.librarySettings)) return "librarySettings: array expected"; for (var i = 0; i < message.librarySettings.length; ++i) { - var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i]); + var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i], long + 1); if (error) return "librarySettings." + error; } @@ -34956,9 +36312,13 @@ * @param {Object.} object Plain object * @returns {google.api.Publishing} Publishing */ - Publishing.fromObject = function fromObject(object) { + Publishing.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Publishing) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Publishing(); if (object.methodSettings) { if (!Array.isArray(object.methodSettings)) @@ -34967,7 +36327,7 @@ for (var i = 0; i < object.methodSettings.length; ++i) { if (typeof object.methodSettings[i] !== "object") throw TypeError(".google.api.Publishing.methodSettings: object expected"); - message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i]); + message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i], long + 1); } } if (object.newIssueUri != null) @@ -35034,7 +36394,7 @@ for (var i = 0; i < object.librarySettings.length; ++i) { if (typeof object.librarySettings[i] !== "object") throw TypeError(".google.api.Publishing.librarySettings: object expected"); - message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]); + message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i], long + 1); } } if (object.protoReferenceDocumentationUri != null) @@ -35158,7 +36518,7 @@ this.serviceClassNames = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35244,9 +36604,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - JavaSettings.decode = function decode(reader, length, error) { + JavaSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.JavaSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -35273,19 +36637,21 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.serviceClassNames, key); message.serviceClassNames[key] = value; break; } case 3: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35316,9 +36682,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - JavaSettings.verify = function verify(message) { + JavaSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.libraryPackage != null && message.hasOwnProperty("libraryPackage")) if (!$util.isString(message.libraryPackage)) return "libraryPackage: string expected"; @@ -35331,7 +36701,7 @@ return "serviceClassNames: string{k:string} expected"; } if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -35346,9 +36716,13 @@ * @param {Object.} object Plain object * @returns {google.api.JavaSettings} JavaSettings */ - JavaSettings.fromObject = function fromObject(object) { + JavaSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.JavaSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.JavaSettings(); if (object.libraryPackage != null) message.libraryPackage = String(object.libraryPackage); @@ -35356,13 +36730,16 @@ if (typeof object.serviceClassNames !== "object") throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected"); message.serviceClassNames = {}; - for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.serviceClassNames, keys[i]); message.serviceClassNames[keys[i]] = String(object.serviceClassNames[keys[i]]); + } } if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.JavaSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -35391,8 +36768,11 @@ var keys2; if (message.serviceClassNames && (keys2 = Object.keys(message.serviceClassNames)).length) { object.serviceClassNames = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.serviceClassNames, keys2[j]); object.serviceClassNames[keys2[j]] = message.serviceClassNames[keys2[j]]; + } } if (message.common != null && message.hasOwnProperty("common")) object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options); @@ -35448,7 +36828,7 @@ function CppSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35513,9 +36893,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CppSettings.decode = function decode(reader, length, error) { + CppSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CppSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35523,11 +36907,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35558,11 +36942,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CppSettings.verify = function verify(message) { + CppSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -35577,14 +36965,18 @@ * @param {Object.} object Plain object * @returns {google.api.CppSettings} CppSettings */ - CppSettings.fromObject = function fromObject(object) { + CppSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CppSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CppSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.CppSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -35658,7 +37050,7 @@ function PhpSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35723,9 +37115,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PhpSettings.decode = function decode(reader, length, error) { + PhpSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PhpSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35733,11 +37129,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35768,11 +37164,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PhpSettings.verify = function verify(message) { + PhpSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -35787,14 +37187,18 @@ * @param {Object.} object Plain object * @returns {google.api.PhpSettings} PhpSettings */ - PhpSettings.fromObject = function fromObject(object) { + PhpSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PhpSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PhpSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PhpSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -35869,7 +37273,7 @@ function PythonSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35944,9 +37348,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PythonSettings.decode = function decode(reader, length, error) { + PythonSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35954,15 +37362,15 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32()); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35993,16 +37401,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PythonSettings.verify = function verify(message) { + PythonSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } if (message.experimentalFeatures != null && message.hasOwnProperty("experimentalFeatures")) { - var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures); + var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures, long + 1); if (error) return "experimentalFeatures." + error; } @@ -36017,19 +37429,23 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings} PythonSettings */ - PythonSettings.fromObject = function fromObject(object) { + PythonSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PythonSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.experimentalFeatures != null) { if (typeof object.experimentalFeatures !== "object") throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected"); - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures, long + 1); } return message; }; @@ -36106,7 +37522,7 @@ function ExperimentalFeatures(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36191,9 +37607,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentalFeatures.decode = function decode(reader, length, error) { + ExperimentalFeatures.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings.ExperimentalFeatures(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36213,7 +37633,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36244,9 +37664,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentalFeatures.verify = function verify(message) { + ExperimentalFeatures.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.restAsyncIoEnabled != null && message.hasOwnProperty("restAsyncIoEnabled")) if (typeof message.restAsyncIoEnabled !== "boolean") return "restAsyncIoEnabled: boolean expected"; @@ -36267,9 +37691,13 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings.ExperimentalFeatures} ExperimentalFeatures */ - ExperimentalFeatures.fromObject = function fromObject(object) { + ExperimentalFeatures.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings.ExperimentalFeatures) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings.ExperimentalFeatures(); if (object.restAsyncIoEnabled != null) message.restAsyncIoEnabled = Boolean(object.restAsyncIoEnabled); @@ -36359,7 +37787,7 @@ function NodeSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36424,9 +37852,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeSettings.decode = function decode(reader, length, error) { + NodeSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.NodeSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36434,11 +37866,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36469,11 +37901,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeSettings.verify = function verify(message) { + NodeSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -36488,14 +37924,18 @@ * @param {Object.} object Plain object * @returns {google.api.NodeSettings} NodeSettings */ - NodeSettings.fromObject = function fromObject(object) { + NodeSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.NodeSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.NodeSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.NodeSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -36579,7 +38019,7 @@ this.handwrittenSignatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36699,9 +38139,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DotnetSettings.decode = function decode(reader, length, error) { + DotnetSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -36709,7 +38153,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -36728,10 +38172,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } @@ -36751,10 +38197,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedResources, key); message.renamedResources[key] = value; break; } @@ -36777,7 +38225,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36808,11 +38256,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DotnetSettings.verify = function verify(message) { + DotnetSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -36864,28 +38316,38 @@ * @param {Object.} object Plain object * @returns {google.api.DotnetSettings} DotnetSettings */ - DotnetSettings.fromObject = function fromObject(object) { + DotnetSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.DotnetSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.DotnetSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.DotnetSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.DotnetSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } if (object.renamedResources) { if (typeof object.renamedResources !== "object") throw TypeError(".google.api.DotnetSettings.renamedResources: object expected"); message.renamedResources = {}; - for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedResources, keys[i]); message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]); + } } if (object.ignoredResources) { if (!Array.isArray(object.ignoredResources)) @@ -36940,13 +38402,19 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) { object.renamedResources = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedResources, keys2[j]); object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]]; + } } if (message.ignoredResources && message.ignoredResources.length) { object.ignoredResources = []; @@ -37015,7 +38483,7 @@ function RubySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37080,9 +38548,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RubySettings.decode = function decode(reader, length, error) { + RubySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RubySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37090,11 +38562,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37125,11 +38597,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RubySettings.verify = function verify(message) { + RubySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -37144,14 +38620,18 @@ * @param {Object.} object Plain object * @returns {google.api.RubySettings} RubySettings */ - RubySettings.fromObject = function fromObject(object) { + RubySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RubySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RubySettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.RubySettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -37227,7 +38707,7 @@ this.renamedServices = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37303,9 +38783,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoSettings.decode = function decode(reader, length, error) { + GoSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.GoSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -37313,7 +38797,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -37332,15 +38816,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37371,11 +38857,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoSettings.verify = function verify(message) { + GoSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -37398,21 +38888,28 @@ * @param {Object.} object Plain object * @returns {google.api.GoSettings} GoSettings */ - GoSettings.fromObject = function fromObject(object) { + GoSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.GoSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.GoSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.GoSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.GoSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } return message; }; @@ -37439,8 +38936,11 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } return object; }; @@ -37497,7 +38997,7 @@ this.autoPopulatedFields = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37583,9 +39083,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodSettings.decode = function decode(reader, length, error) { + MethodSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37597,7 +39101,7 @@ break; } case 2: { - message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32()); + message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -37607,7 +39111,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37638,14 +39142,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodSettings.verify = function verify(message) { + MethodSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) return "selector: string expected"; if (message.longRunning != null && message.hasOwnProperty("longRunning")) { - var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning); + var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning, long + 1); if (error) return "longRunning." + error; } @@ -37667,16 +39175,20 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings} MethodSettings */ - MethodSettings.fromObject = function fromObject(object) { + MethodSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings(); if (object.selector != null) message.selector = String(object.selector); if (object.longRunning != null) { if (typeof object.longRunning !== "object") throw TypeError(".google.api.MethodSettings.longRunning: object expected"); - message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning); + message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning, long + 1); } if (object.autoPopulatedFields) { if (!Array.isArray(object.autoPopulatedFields)) @@ -37768,7 +39280,7 @@ function LongRunning(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37863,9 +39375,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LongRunning.decode = function decode(reader, length, error) { + LongRunning.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings.LongRunning(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37873,7 +39389,7 @@ break; switch (tag >>> 3) { case 1: { - message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -37881,15 +39397,15 @@ break; } case 3: { - message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37920,11 +39436,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LongRunning.verify = function verify(message) { + LongRunning.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.initialPollDelay != null && message.hasOwnProperty("initialPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.initialPollDelay); + var error = $root.google.protobuf.Duration.verify(message.initialPollDelay, long + 1); if (error) return "initialPollDelay." + error; } @@ -37932,12 +39452,12 @@ if (typeof message.pollDelayMultiplier !== "number") return "pollDelayMultiplier: number expected"; if (message.maxPollDelay != null && message.hasOwnProperty("maxPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.maxPollDelay); + var error = $root.google.protobuf.Duration.verify(message.maxPollDelay, long + 1); if (error) return "maxPollDelay." + error; } if (message.totalPollTimeout != null && message.hasOwnProperty("totalPollTimeout")) { - var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout); + var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout, long + 1); if (error) return "totalPollTimeout." + error; } @@ -37952,26 +39472,30 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings.LongRunning} LongRunning */ - LongRunning.fromObject = function fromObject(object) { + LongRunning.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings.LongRunning) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings.LongRunning(); if (object.initialPollDelay != null) { if (typeof object.initialPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected"); - message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay); + message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay, long + 1); } if (object.pollDelayMultiplier != null) message.pollDelayMultiplier = Number(object.pollDelayMultiplier); if (object.maxPollDelay != null) { if (typeof object.maxPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected"); - message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay); + message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay, long + 1); } if (object.totalPollTimeout != null) { if (typeof object.totalPollTimeout !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected"); - message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout); + message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout, long + 1); } return message; }; @@ -38102,7 +39626,7 @@ this.methods = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38178,9 +39702,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectiveGapicGeneration.decode = function decode(reader, length, error) { + SelectiveGapicGeneration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.SelectiveGapicGeneration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38198,7 +39726,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38229,9 +39757,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectiveGapicGeneration.verify = function verify(message) { + SelectiveGapicGeneration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methods != null && message.hasOwnProperty("methods")) { if (!Array.isArray(message.methods)) return "methods: array expected"; @@ -38253,9 +39785,13 @@ * @param {Object.} object Plain object * @returns {google.api.SelectiveGapicGeneration} SelectiveGapicGeneration */ - SelectiveGapicGeneration.fromObject = function fromObject(object) { + SelectiveGapicGeneration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.SelectiveGapicGeneration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.SelectiveGapicGeneration(); if (object.methods) { if (!Array.isArray(object.methods)) @@ -38401,7 +39937,7 @@ this.referencedTypes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38477,9 +40013,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldInfo.decode = function decode(reader, length, error) { + FieldInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.FieldInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38493,11 +40033,11 @@ case 2: { if (!(message.referencedTypes && message.referencedTypes.length)) message.referencedTypes = []; - message.referencedTypes.push($root.google.api.TypeReference.decode(reader, reader.uint32())); + message.referencedTypes.push($root.google.api.TypeReference.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38528,9 +40068,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldInfo.verify = function verify(message) { + FieldInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.format != null && message.hasOwnProperty("format")) switch (message.format) { default: @@ -38546,7 +40090,7 @@ if (!Array.isArray(message.referencedTypes)) return "referencedTypes: array expected"; for (var i = 0; i < message.referencedTypes.length; ++i) { - var error = $root.google.api.TypeReference.verify(message.referencedTypes[i]); + var error = $root.google.api.TypeReference.verify(message.referencedTypes[i], long + 1); if (error) return "referencedTypes." + error; } @@ -38562,9 +40106,13 @@ * @param {Object.} object Plain object * @returns {google.api.FieldInfo} FieldInfo */ - FieldInfo.fromObject = function fromObject(object) { + FieldInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.FieldInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.FieldInfo(); switch (object.format) { default: @@ -38601,7 +40149,7 @@ for (var i = 0; i < object.referencedTypes.length; ++i) { if (typeof object.referencedTypes[i] !== "object") throw TypeError(".google.api.FieldInfo.referencedTypes: object expected"); - message.referencedTypes[i] = $root.google.api.TypeReference.fromObject(object.referencedTypes[i]); + message.referencedTypes[i] = $root.google.api.TypeReference.fromObject(object.referencedTypes[i], long + 1); } } return message; @@ -38703,7 +40251,7 @@ function TypeReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38768,9 +40316,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TypeReference.decode = function decode(reader, length, error) { + TypeReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.TypeReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38782,7 +40334,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38813,9 +40365,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TypeReference.verify = function verify(message) { + TypeReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.typeName != null && message.hasOwnProperty("typeName")) if (!$util.isString(message.typeName)) return "typeName: string expected"; @@ -38830,9 +40386,13 @@ * @param {Object.} object Plain object * @returns {google.api.TypeReference} TypeReference */ - TypeReference.fromObject = function fromObject(object) { + TypeReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.TypeReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.TypeReference(); if (object.typeName != null) message.typeName = String(object.typeName); @@ -38916,7 +40476,7 @@ this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39046,9 +40606,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length, error) { + ResourceDescriptor.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39093,7 +40657,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39124,9 +40688,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -39178,9 +40746,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - ResourceDescriptor.fromObject = function fromObject(object) { + ResourceDescriptor.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceDescriptor) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceDescriptor(); if (object.type != null) message.type = String(object.type); @@ -39368,7 +40940,7 @@ function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39443,9 +41015,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length, error) { + ResourceReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39461,7 +41037,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39492,9 +41068,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + ResourceReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -39512,9 +41092,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceReference} ResourceReference */ - ResourceReference.fromObject = function fromObject(object) { + ResourceReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceReference(); if (object.type != null) message.type = String(object.type); @@ -39609,7 +41193,7 @@ this.file = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39675,9 +41259,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorSet.decode = function decode(reader, length, error) { + FileDescriptorSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39687,11 +41275,11 @@ case 1: { if (!(message.file && message.file.length)) message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39722,14 +41310,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorSet.verify = function verify(message) { + FileDescriptorSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.file != null && message.hasOwnProperty("file")) { if (!Array.isArray(message.file)) return "file: array expected"; for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i], long + 1); if (error) return "file." + error; } @@ -39745,9 +41337,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet */ - FileDescriptorSet.fromObject = function fromObject(object) { + FileDescriptorSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorSet(); if (object.file) { if (!Array.isArray(object.file)) @@ -39756,7 +41352,7 @@ for (var i = 0; i < object.file.length; ++i) { if (typeof object.file[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i], long + 1); } } return message; @@ -39889,7 +41485,7 @@ this.extension = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40092,9 +41688,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorProto.decode = function decode(reader, length, error) { + FileDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40146,33 +41746,33 @@ case 4: { if (!(message.messageType && message.messageType.length)) message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.service && message.service.length)) message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -40184,7 +41784,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40215,9 +41815,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorProto.verify = function verify(message) { + FileDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -40256,7 +41860,7 @@ if (!Array.isArray(message.messageType)) return "messageType: array expected"; for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i], long + 1); if (error) return "messageType." + error; } @@ -40265,7 +41869,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -40274,7 +41878,7 @@ if (!Array.isArray(message.service)) return "service: array expected"; for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i], long + 1); if (error) return "service." + error; } @@ -40283,18 +41887,18 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); + var error = $root.google.protobuf.FileOptions.verify(message.options, long + 1); if (error) return "options." + error; } if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo, long + 1); if (error) return "sourceCodeInfo." + error; } @@ -40330,9 +41934,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto */ - FileDescriptorProto.fromObject = function fromObject(object) { + FileDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -40373,7 +41981,7 @@ for (var i = 0; i < object.messageType.length; ++i) { if (typeof object.messageType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i], long + 1); } } if (object.enumType) { @@ -40383,7 +41991,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.service) { @@ -40393,7 +42001,7 @@ for (var i = 0; i < object.service.length; ++i) { if (typeof object.service[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i], long + 1); } } if (object.extension) { @@ -40403,18 +42011,18 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options, long + 1); } if (object.sourceCodeInfo != null) { if (typeof object.sourceCodeInfo !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo, long + 1); } if (object.syntax != null) message.syntax = String(object.syntax); @@ -40630,7 +42238,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40803,9 +42411,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DescriptorProto.decode = function decode(reader, length, error) { + DescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40819,47 +42431,47 @@ case 2: { if (!(message.field && message.field.length)) message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.nestedType && message.nestedType.length)) message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.extensionRange && message.extensionRange.length)) message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { if (!(message.oneofDecl && message.oneofDecl.length)) message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 10: { @@ -40873,7 +42485,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40904,9 +42516,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DescriptorProto.verify = function verify(message) { + DescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -40914,7 +42530,7 @@ if (!Array.isArray(message.field)) return "field: array expected"; for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i], long + 1); if (error) return "field." + error; } @@ -40923,7 +42539,7 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } @@ -40932,7 +42548,7 @@ if (!Array.isArray(message.nestedType)) return "nestedType: array expected"; for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i], long + 1); if (error) return "nestedType." + error; } @@ -40941,7 +42557,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -40950,7 +42566,7 @@ if (!Array.isArray(message.extensionRange)) return "extensionRange: array expected"; for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i], long + 1); if (error) return "extensionRange." + error; } @@ -40959,13 +42575,13 @@ if (!Array.isArray(message.oneofDecl)) return "oneofDecl: array expected"; for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i], long + 1); if (error) return "oneofDecl." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); + var error = $root.google.protobuf.MessageOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -40973,7 +42589,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -41005,9 +42621,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto} DescriptorProto */ - DescriptorProto.fromObject = function fromObject(object) { + DescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -41018,7 +42638,7 @@ for (var i = 0; i < object.field.length; ++i) { if (typeof object.field[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i], long + 1); } } if (object.extension) { @@ -41028,7 +42648,7 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.nestedType) { @@ -41038,7 +42658,7 @@ for (var i = 0; i < object.nestedType.length; ++i) { if (typeof object.nestedType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i], long + 1); } } if (object.enumType) { @@ -41048,7 +42668,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.extensionRange) { @@ -41058,7 +42678,7 @@ for (var i = 0; i < object.extensionRange.length; ++i) { if (typeof object.extensionRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i], long + 1); } } if (object.oneofDecl) { @@ -41068,13 +42688,13 @@ for (var i = 0; i < object.oneofDecl.length; ++i) { if (typeof object.oneofDecl[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -41083,7 +42703,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -41241,7 +42861,7 @@ function ExtensionRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41326,9 +42946,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRange.decode = function decode(reader, length, error) { + ExtensionRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41344,11 +42968,11 @@ break; } case 3: { - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41379,9 +43003,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRange.verify = function verify(message) { + ExtensionRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -41389,7 +43017,7 @@ if (!$util.isInteger(message.end)) return "end: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -41404,9 +43032,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange */ - ExtensionRange.fromObject = function fromObject(object) { + ExtensionRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); if (object.start != null) message.start = object.start | 0; @@ -41415,7 +43047,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options, long + 1); } return message; }; @@ -41497,7 +43129,7 @@ function ReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41572,9 +43204,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReservedRange.decode = function decode(reader, length, error) { + ReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41590,7 +43226,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41621,9 +43257,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReservedRange.verify = function verify(message) { + ReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -41641,9 +43281,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange */ - ReservedRange.fromObject = function fromObject(object) { + ReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -41733,7 +43377,7 @@ this.declaration = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41830,9 +43474,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRangeOptions.decode = function decode(reader, length, error) { + ExtensionRangeOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41842,17 +43490,17 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.declaration && message.declaration.length)) message.declaration = []; - message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32())); + message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -41860,7 +43508,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41891,14 +43539,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRangeOptions.verify = function verify(message) { + ExtensionRangeOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -41907,13 +43559,13 @@ if (!Array.isArray(message.declaration)) return "declaration: array expected"; for (var i = 0; i < message.declaration.length; ++i) { - var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]); + var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i], long + 1); if (error) return "declaration." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -41936,9 +43588,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions */ - ExtensionRangeOptions.fromObject = function fromObject(object) { + ExtensionRangeOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions(); if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -41947,7 +43603,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object.declaration) { @@ -41957,13 +43613,13 @@ for (var i = 0; i < object.declaration.length; ++i) { if (typeof object.declaration[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected"); - message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]); + message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } switch (object.verification) { case "DECLARATION": @@ -42072,7 +43728,7 @@ function Declaration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42177,9 +43833,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Declaration.decode = function decode(reader, length, error) { + Declaration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42207,7 +43867,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42238,9 +43898,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Declaration.verify = function verify(message) { + Declaration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.number != null && message.hasOwnProperty("number")) if (!$util.isInteger(message.number)) return "number: integer expected"; @@ -42267,9 +43931,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration */ - Declaration.fromObject = function fromObject(object) { + Declaration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); if (object.number != null) message.number = object.number | 0; @@ -42393,7 +44061,7 @@ function FieldDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42558,9 +44226,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldDescriptorProto.decode = function decode(reader, length, error) { + FieldDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42604,7 +44276,7 @@ break; } case 8: { - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -42612,7 +44284,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42643,9 +44315,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldDescriptorProto.verify = function verify(message) { + FieldDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -42701,7 +44377,7 @@ if (!$util.isString(message.jsonName)) return "jsonName: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); + var error = $root.google.protobuf.FieldOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -42719,9 +44395,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto */ - FieldDescriptorProto.fromObject = function fromObject(object) { + FieldDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -42840,7 +44520,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options, long + 1); } if (object.proto3Optional != null) message.proto3Optional = Boolean(object.proto3Optional); @@ -43010,7 +44690,7 @@ function OneofDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43085,9 +44765,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofDescriptorProto.decode = function decode(reader, length, error) { + OneofDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43099,11 +44783,11 @@ break; } case 2: { - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43134,14 +44818,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofDescriptorProto.verify = function verify(message) { + OneofDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); + var error = $root.google.protobuf.OneofOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -43156,16 +44844,20 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto */ - OneofDescriptorProto.fromObject = function fromObject(object) { + OneofDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofDescriptorProto(); if (object.name != null) message.name = String(object.name); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options, long + 1); } return message; }; @@ -43251,7 +44943,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43369,9 +45061,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumDescriptorProto.decode = function decode(reader, length, error) { + EnumDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43385,17 +45081,17 @@ case 2: { if (!(message.value && message.value.length)) message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -43409,7 +45105,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43440,9 +45136,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumDescriptorProto.verify = function verify(message) { + EnumDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -43450,13 +45150,13 @@ if (!Array.isArray(message.value)) return "value: array expected"; for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i], long + 1); if (error) return "value." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); + var error = $root.google.protobuf.EnumOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -43464,7 +45164,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -43496,9 +45196,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto */ - EnumDescriptorProto.fromObject = function fromObject(object) { + EnumDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -43509,13 +45213,13 @@ for (var i = 0; i < object.value.length; ++i) { if (typeof object.value[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -43524,7 +45228,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -43651,7 +45355,7 @@ function EnumReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43726,9 +45430,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumReservedRange.decode = function decode(reader, length, error) { + EnumReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43744,7 +45452,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43775,9 +45483,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumReservedRange.verify = function verify(message) { + EnumReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -43795,9 +45507,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange */ - EnumReservedRange.fromObject = function fromObject(object) { + EnumReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -43884,7 +45600,7 @@ function EnumValueDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43969,9 +45685,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueDescriptorProto.decode = function decode(reader, length, error) { + EnumValueDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43987,11 +45707,11 @@ break; } case 3: { - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44022,9 +45742,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueDescriptorProto.verify = function verify(message) { + EnumValueDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -44032,7 +45756,7 @@ if (!$util.isInteger(message.number)) return "number: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + var error = $root.google.protobuf.EnumValueOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -44047,9 +45771,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { + EnumValueDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -44058,7 +45786,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options, long + 1); } return message; }; @@ -44142,7 +45870,7 @@ this.method = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44228,9 +45956,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceDescriptorProto.decode = function decode(reader, length, error) { + ServiceDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44244,15 +45976,15 @@ case 2: { if (!(message.method && message.method.length)) message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44283,9 +46015,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceDescriptorProto.verify = function verify(message) { + ServiceDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -44293,13 +46029,13 @@ if (!Array.isArray(message.method)) return "method: array expected"; for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i], long + 1); if (error) return "method." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); + var error = $root.google.protobuf.ServiceOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -44314,9 +46050,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto */ - ServiceDescriptorProto.fromObject = function fromObject(object) { + ServiceDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -44327,13 +46067,13 @@ for (var i = 0; i < object.method.length; ++i) { if (typeof object.method[i] !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options, long + 1); } return message; }; @@ -44423,7 +46163,7 @@ function MethodDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44538,9 +46278,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodDescriptorProto.decode = function decode(reader, length, error) { + MethodDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44560,7 +46304,7 @@ break; } case 4: { - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -44572,7 +46316,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44603,9 +46347,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodDescriptorProto.verify = function verify(message) { + MethodDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -44616,7 +46364,7 @@ if (!$util.isString(message.outputType)) return "outputType: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); + var error = $root.google.protobuf.MethodOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -44637,9 +46385,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto */ - MethodDescriptorProto.fromObject = function fromObject(object) { + MethodDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -44650,7 +46402,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options, long + 1); } if (object.clientStreaming != null) message.clientStreaming = Boolean(object.clientStreaming); @@ -44767,7 +46519,7 @@ this[".google.api.resourceDefinition"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45044,9 +46796,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileOptions.decode = function decode(reader, length, error) { + FileOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45130,23 +46886,23 @@ break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45177,9 +46933,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileOptions.verify = function verify(message) { + FileOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) if (!$util.isString(message.javaPackage)) return "javaPackage: string expected"; @@ -45244,7 +47004,7 @@ if (!$util.isString(message.rubyPackage)) return "rubyPackage: string expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -45252,7 +47012,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -45261,7 +47021,7 @@ if (!Array.isArray(message[".google.api.resourceDefinition"])) return ".google.api.resourceDefinition: array expected"; for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i], long + 1); if (error) return ".google.api.resourceDefinition." + error; } @@ -45277,9 +47037,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileOptions} FileOptions */ - FileOptions.fromObject = function fromObject(object) { + FileOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileOptions(); if (object.javaPackage != null) message.javaPackage = String(object.javaPackage); @@ -45340,7 +47104,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FileOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -45349,7 +47113,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resourceDefinition"]) { @@ -45359,7 +47123,7 @@ for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { if (typeof object[".google.api.resourceDefinition"][i] !== "object") throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i], long + 1); } } return message; @@ -45530,7 +47294,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45666,9 +47430,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageOptions.decode = function decode(reader, length, error) { + MessageOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45696,21 +47464,21 @@ break; } case 12: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45741,9 +47509,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MessageOptions.verify = function verify(message) { + MessageOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) if (typeof message.messageSetWireFormat !== "boolean") return "messageSetWireFormat: boolean expected"; @@ -45760,7 +47532,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -45768,13 +47540,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"], long + 1); if (error) return ".google.api.resource." + error; } @@ -45789,9 +47561,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MessageOptions} MessageOptions */ - MessageOptions.fromObject = function fromObject(object) { + MessageOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MessageOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MessageOptions(); if (object.messageSetWireFormat != null) message.messageSetWireFormat = Boolean(object.messageSetWireFormat); @@ -45806,7 +47582,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MessageOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -45815,13 +47591,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resource"] != null) { if (typeof object[".google.api.resource"] !== "object") throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"], long + 1); } return message; }; @@ -45941,7 +47717,7 @@ this[".google.api.fieldBehavior"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46170,9 +47946,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decode = function decode(reader, length, error) { + FieldOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46229,21 +48009,21 @@ case 20: { if (!(message.editionDefaults && message.editionDefaults.length)) message.editionDefaults = []; - message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32())); + message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1052: { @@ -46258,15 +48038,15 @@ break; } case 291403980: { - message[".google.api.fieldInfo"] = $root.google.api.FieldInfo.decode(reader, reader.uint32()); + message[".google.api.fieldInfo"] = $root.google.api.FieldInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1055: { - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46297,9 +48077,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldOptions.verify = function verify(message) { + FieldOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ctype != null && message.hasOwnProperty("ctype")) switch (message.ctype) { default: @@ -46369,18 +48153,18 @@ if (!Array.isArray(message.editionDefaults)) return "editionDefaults: array expected"; for (var i = 0; i < message.editionDefaults.length; ++i) { - var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]); + var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i], long + 1); if (error) return "editionDefaults." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -46388,7 +48172,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -46413,12 +48197,12 @@ } } if (message[".google.api.fieldInfo"] != null && message.hasOwnProperty(".google.api.fieldInfo")) { - var error = $root.google.api.FieldInfo.verify(message[".google.api.fieldInfo"]); + var error = $root.google.api.FieldInfo.verify(message[".google.api.fieldInfo"], long + 1); if (error) return ".google.api.fieldInfo." + error; } if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"], long + 1); if (error) return ".google.api.resourceReference." + error; } @@ -46433,9 +48217,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions} FieldOptions */ - FieldOptions.fromObject = function fromObject(object) { + FieldOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions(); switch (object.ctype) { default: @@ -46569,18 +48357,18 @@ for (var i = 0; i < object.editionDefaults.length; ++i) { if (typeof object.editionDefaults[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected"); - message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]); + message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FieldOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -46589,7 +48377,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.fieldBehavior"]) { @@ -46644,12 +48432,12 @@ if (object[".google.api.fieldInfo"] != null) { if (typeof object[".google.api.fieldInfo"] !== "object") throw TypeError(".google.protobuf.FieldOptions..google.api.fieldInfo: object expected"); - message[".google.api.fieldInfo"] = $root.google.api.FieldInfo.fromObject(object[".google.api.fieldInfo"]); + message[".google.api.fieldInfo"] = $root.google.api.FieldInfo.fromObject(object[".google.api.fieldInfo"], long + 1); } if (object[".google.api.resourceReference"] != null) { if (typeof object[".google.api.resourceReference"] !== "object") throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"], long + 1); } return message; }; @@ -46862,7 +48650,7 @@ function EditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46937,9 +48725,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EditionDefault.decode = function decode(reader, length, error) { + EditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46955,7 +48747,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46986,9 +48778,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EditionDefault.verify = function verify(message) { + EditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -47021,9 +48817,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault */ - EditionDefault.fromObject = function fromObject(object) { + EditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.EditionDefault(); switch (object.edition) { default: @@ -47162,7 +48962,7 @@ function FeatureSupport(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47257,9 +49057,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSupport.decode = function decode(reader, length, error) { + FeatureSupport.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.FeatureSupport(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47283,7 +49087,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47314,9 +49118,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSupport.verify = function verify(message) { + FeatureSupport.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.editionIntroduced != null && message.hasOwnProperty("editionIntroduced")) switch (message.editionIntroduced) { default: @@ -47385,9 +49193,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.FeatureSupport} FeatureSupport */ - FeatureSupport.fromObject = function fromObject(object) { + FeatureSupport.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.FeatureSupport) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.FeatureSupport(); switch (object.editionIntroduced) { default: @@ -47646,7 +49458,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47722,9 +49534,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decode = function decode(reader, length, error) { + OneofOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47732,17 +49548,17 @@ break; switch (tag >>> 3) { case 1: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47773,11 +49589,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofOptions.verify = function verify(message) { + OneofOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -47785,7 +49605,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -47801,14 +49621,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofOptions} OneofOptions */ - OneofOptions.fromObject = function fromObject(object) { + OneofOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.OneofOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -47817,7 +49641,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -47904,7 +49728,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48010,9 +49834,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decode = function decode(reader, length, error) { + EnumOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48032,17 +49860,17 @@ break; } case 7: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48073,9 +49901,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumOptions.verify = function verify(message) { + EnumOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) if (typeof message.allowAlias !== "boolean") return "allowAlias: boolean expected"; @@ -48086,7 +49918,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -48094,7 +49926,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -48110,9 +49942,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumOptions} EnumOptions */ - EnumOptions.fromObject = function fromObject(object) { + EnumOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumOptions(); if (object.allowAlias != null) message.allowAlias = Boolean(object.allowAlias); @@ -48123,7 +49959,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -48132,7 +49968,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -48229,7 +50065,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48335,9 +50171,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decode = function decode(reader, length, error) { + EnumValueOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48349,7 +50189,7 @@ break; } case 2: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -48357,17 +50197,17 @@ break; } case 4: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48398,14 +50238,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueOptions.verify = function verify(message) { + EnumValueOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -48413,7 +50257,7 @@ if (typeof message.debugRedact !== "boolean") return "debugRedact: boolean expected"; if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -48421,7 +50265,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -48437,23 +50281,27 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueOptions} EnumValueOptions */ - EnumValueOptions.fromObject = function fromObject(object) { + EnumValueOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumValueOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.debugRedact != null) message.debugRedact = Boolean(object.debugRedact); if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -48462,7 +50310,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -48560,7 +50408,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48676,9 +50524,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decode = function decode(reader, length, error) { + ServiceOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48686,7 +50538,7 @@ break; switch (tag >>> 3) { case 34: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 33: { @@ -48696,7 +50548,7 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1049: { @@ -48712,7 +50564,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48743,11 +50595,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceOptions.verify = function verify(message) { + ServiceOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -48758,7 +50614,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -48783,14 +50639,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceOptions} ServiceOptions */ - ServiceOptions.fromObject = function fromObject(object) { + ServiceOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ServiceOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -48801,7 +50661,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.defaultHost"] != null) @@ -48910,7 +50770,7 @@ this[".google.api.methodSignature"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49037,9 +50897,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decode = function decode(reader, length, error) { + MethodOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49055,17 +50919,17 @@ break; } case 35: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 72295728: { - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1051: { @@ -49075,11 +50939,11 @@ break; } case 1049: { - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49110,9 +50974,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodOptions.verify = function verify(message) { + MethodOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; @@ -49126,7 +50994,7 @@ break; } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -49134,13 +51002,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + var error = $root.google.api.HttpRule.verify(message[".google.api.http"], long + 1); if (error) return ".google.api.http." + error; } @@ -49152,7 +51020,7 @@ return ".google.api.methodSignature: string[] expected"; } if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { - var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); + var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"], long + 1); if (error) return ".google.longrunning.operationInfo." + error; } @@ -49167,9 +51035,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodOptions} MethodOptions */ - MethodOptions.fromObject = function fromObject(object) { + MethodOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -49196,7 +51068,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MethodOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -49205,13 +51077,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.http"] != null) { if (typeof object[".google.api.http"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"], long + 1); } if (object[".google.api.methodSignature"]) { if (!Array.isArray(object[".google.api.methodSignature"])) @@ -49223,7 +51095,7 @@ if (object[".google.longrunning.operationInfo"] != null) { if (typeof object[".google.longrunning.operationInfo"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"], long + 1); } return message; }; @@ -49347,7 +51219,7 @@ this.name = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49473,9 +51345,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.decode = function decode(reader, length, error) { + UninterpretedOption.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49485,7 +51361,7 @@ case 2: { if (!(message.name && message.name.length)) message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -49513,7 +51389,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49544,14 +51420,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UninterpretedOption.verify = function verify(message) { + UninterpretedOption.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) { if (!Array.isArray(message.name)) return "name: array expected"; for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i], long + 1); if (error) return "name." + error; } @@ -49585,9 +51465,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption} UninterpretedOption */ - UninterpretedOption.fromObject = function fromObject(object) { + UninterpretedOption.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption(); if (object.name) { if (!Array.isArray(object.name)) @@ -49596,7 +51480,7 @@ for (var i = 0; i < object.name.length; ++i) { if (typeof object.name[i] !== "object") throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i], long + 1); } } if (object.identifierValue != null) @@ -49741,7 +51625,7 @@ function NamePart(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49814,9 +51698,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NamePart.decode = function decode(reader, length, error) { + NamePart.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49832,7 +51720,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49867,9 +51755,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NamePart.verify = function verify(message) { + NamePart.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (!$util.isString(message.namePart)) return "namePart: string expected"; if (typeof message.isExtension !== "boolean") @@ -49885,9 +51777,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart */ - NamePart.fromObject = function fromObject(object) { + NamePart.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption.NamePart(); if (object.namePart != null) message.namePart = String(object.namePart); @@ -49979,7 +51875,7 @@ function FeatureSet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50114,9 +52010,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSet.decode = function decode(reader, length, error) { + FeatureSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50156,7 +52056,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50187,9 +52087,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSet.verify = function verify(message) { + FeatureSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence")) switch (message.fieldPresence) { default: @@ -50276,9 +52180,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet} FeatureSet */ - FeatureSet.fromObject = function fromObject(object) { + FeatureSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSet(); switch (object.fieldPresence) { default: @@ -50656,7 +52564,7 @@ function VisibilityFeature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50711,9 +52619,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VisibilityFeature.decode = function decode(reader, length, error) { + VisibilityFeature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet.VisibilityFeature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50721,7 +52633,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50752,9 +52664,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VisibilityFeature.verify = function verify(message) { + VisibilityFeature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -50766,9 +52682,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet.VisibilityFeature} VisibilityFeature */ - VisibilityFeature.fromObject = function fromObject(object) { + VisibilityFeature.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.FeatureSet.VisibilityFeature(); }; @@ -50860,7 +52780,7 @@ this.defaults = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50946,9 +52866,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetDefaults.decode = function decode(reader, length, error) { + FeatureSetDefaults.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50958,7 +52882,7 @@ case 1: { if (!(message.defaults && message.defaults.length)) message.defaults = []; - message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32())); + message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -50970,7 +52894,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51001,14 +52925,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetDefaults.verify = function verify(message) { + FeatureSetDefaults.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.defaults != null && message.hasOwnProperty("defaults")) { if (!Array.isArray(message.defaults)) return "defaults: array expected"; for (var i = 0; i < message.defaults.length; ++i) { - var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]); + var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i], long + 1); if (error) return "defaults." + error; } @@ -51060,9 +52988,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults */ - FeatureSetDefaults.fromObject = function fromObject(object) { + FeatureSetDefaults.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults(); if (object.defaults) { if (!Array.isArray(object.defaults)) @@ -51071,7 +53003,7 @@ for (var i = 0; i < object.defaults.length; ++i) { if (typeof object.defaults[i] !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected"); - message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]); + message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i], long + 1); } } switch (object.minimumEdition) { @@ -51268,7 +53200,7 @@ function FeatureSetEditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51353,9 +53285,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetEditionDefault.decode = function decode(reader, length, error) { + FeatureSetEditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51367,15 +53303,15 @@ break; } case 4: { - message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51406,9 +53342,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetEditionDefault.verify = function verify(message) { + FeatureSetEditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -51428,12 +53368,12 @@ break; } if (message.overridableFeatures != null && message.hasOwnProperty("overridableFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures, long + 1); if (error) return "overridableFeatures." + error; } if (message.fixedFeatures != null && message.hasOwnProperty("fixedFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures, long + 1); if (error) return "fixedFeatures." + error; } @@ -51448,9 +53388,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault */ - FeatureSetEditionDefault.fromObject = function fromObject(object) { + FeatureSetEditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); switch (object.edition) { default: @@ -51511,12 +53455,12 @@ if (object.overridableFeatures != null) { if (typeof object.overridableFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected"); - message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures); + message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures, long + 1); } if (object.fixedFeatures != null) { if (typeof object.fixedFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected"); - message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures); + message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures, long + 1); } return message; }; @@ -51601,7 +53545,7 @@ this.location = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51667,9 +53611,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decode = function decode(reader, length, error) { + SourceCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51679,11 +53627,11 @@ case 1: { if (!(message.location && message.location.length)) message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51714,14 +53662,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCodeInfo.verify = function verify(message) { + SourceCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.location != null && message.hasOwnProperty("location")) { if (!Array.isArray(message.location)) return "location: array expected"; for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i], long + 1); if (error) return "location." + error; } @@ -51737,9 +53689,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo */ - SourceCodeInfo.fromObject = function fromObject(object) { + SourceCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo(); if (object.location) { if (!Array.isArray(object.location)) @@ -51748,7 +53704,7 @@ for (var i = 0; i < object.location.length; ++i) { if (typeof object.location[i] !== "object") throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i], long + 1); } } return message; @@ -51830,7 +53786,7 @@ this.leadingDetachedComments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51944,9 +53900,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Location.decode = function decode(reader, length, error) { + Location.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51990,7 +53950,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52021,9 +53981,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Location.verify = function verify(message) { + Location.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -52062,9 +54026,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo.Location} Location */ - Location.fromObject = function fromObject(object) { + Location.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo.Location(); if (object.path) { if (!Array.isArray(object.path)) @@ -52191,7 +54159,7 @@ this.annotation = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52257,9 +54225,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GeneratedCodeInfo.decode = function decode(reader, length, error) { + GeneratedCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52269,11 +54241,11 @@ case 1: { if (!(message.annotation && message.annotation.length)) message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52304,14 +54276,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GeneratedCodeInfo.verify = function verify(message) { + GeneratedCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.annotation != null && message.hasOwnProperty("annotation")) { if (!Array.isArray(message.annotation)) return "annotation: array expected"; for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i], long + 1); if (error) return "annotation." + error; } @@ -52327,9 +54303,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo */ - GeneratedCodeInfo.fromObject = function fromObject(object) { + GeneratedCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo(); if (object.annotation) { if (!Array.isArray(object.annotation)) @@ -52338,7 +54318,7 @@ for (var i = 0; i < object.annotation.length; ++i) { if (typeof object.annotation[i] !== "object") throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i], long + 1); } } return message; @@ -52418,7 +54398,7 @@ this.path = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52527,9 +54507,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decode = function decode(reader, length, error) { + Annotation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52564,7 +54548,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52595,9 +54579,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Annotation.verify = function verify(message) { + Annotation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -52634,9 +54622,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation */ - Annotation.fromObject = function fromObject(object) { + Annotation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); if (object.path) { if (!Array.isArray(object.path)) @@ -52796,7 +54788,7 @@ function Duration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52871,9 +54863,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decode = function decode(reader, length, error) { + Duration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Duration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52889,7 +54885,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52920,9 +54916,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Duration.verify = function verify(message) { + Duration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -52940,9 +54940,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Duration} Duration */ - Duration.fromObject = function fromObject(object) { + Duration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Duration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Duration(); if (object.seconds != null) if ($util.Long) @@ -53039,7 +55043,7 @@ function Any(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53114,9 +55118,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decode = function decode(reader, length, error) { + Any.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53132,7 +55140,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53163,9 +55171,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Any.verify = function verify(message) { + Any.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type_url != null && message.hasOwnProperty("type_url")) if (!$util.isString(message.type_url)) return "type_url: string expected"; @@ -53183,9 +55195,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Any} Any */ - Any.fromObject = function fromObject(object) { + Any.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Any) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Any(); if (object.type_url != null) message.type_url = String(object.type_url); @@ -53275,7 +55291,7 @@ function Empty(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53330,9 +55346,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length, error) { + Empty.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53340,7 +55360,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53371,9 +55391,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Empty.verify = function verify(message) { + Empty.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -53385,9 +55409,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Empty} Empty */ - Empty.fromObject = function fromObject(object) { + Empty.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Empty) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.Empty(); }; @@ -53454,7 +55482,7 @@ this.paths = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53520,9 +55548,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decode = function decode(reader, length, error) { + FieldMask.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldMask(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53536,7 +55568,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53567,9 +55599,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldMask.verify = function verify(message) { + FieldMask.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.paths != null && message.hasOwnProperty("paths")) { if (!Array.isArray(message.paths)) return "paths: array expected"; @@ -53588,9 +55624,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldMask} FieldMask */ - FieldMask.fromObject = function fromObject(object) { + FieldMask.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldMask) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldMask(); if (object.paths) { if (!Array.isArray(object.paths)) @@ -53675,7 +55715,7 @@ function Timestamp(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53750,9 +55790,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decode = function decode(reader, length, error) { + Timestamp.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53768,7 +55812,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53799,9 +55843,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Timestamp.verify = function verify(message) { + Timestamp.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -53819,9 +55867,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Timestamp} Timestamp */ - Timestamp.fromObject = function fromObject(object) { + Timestamp.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Timestamp) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Timestamp(); if (object.seconds != null) if ($util.Long) @@ -54133,7 +56185,7 @@ function Operation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54252,9 +56304,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Operation.decode = function decode(reader, length, error) { + Operation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.Operation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54266,7 +56322,7 @@ break; } case 2: { - message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -54274,15 +56330,15 @@ break; } case 4: { - message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.error = $root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.response = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54313,15 +56369,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Operation.verify = function verify(message) { + Operation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.google.protobuf.Any.verify(message.metadata); + var error = $root.google.protobuf.Any.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -54331,7 +56391,7 @@ if (message.error != null && message.hasOwnProperty("error")) { properties.result = 1; { - var error = $root.google.rpc.Status.verify(message.error); + var error = $root.google.rpc.Status.verify(message.error, long + 1); if (error) return "error." + error; } @@ -54341,7 +56401,7 @@ return "result: multiple values"; properties.result = 1; { - var error = $root.google.protobuf.Any.verify(message.response); + var error = $root.google.protobuf.Any.verify(message.response, long + 1); if (error) return "response." + error; } @@ -54357,28 +56417,32 @@ * @param {Object.} object Plain object * @returns {google.longrunning.Operation} Operation */ - Operation.fromObject = function fromObject(object) { + Operation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.Operation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.Operation(); if (object.name != null) message.name = String(object.name); if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".google.longrunning.Operation.metadata: object expected"); - message.metadata = $root.google.protobuf.Any.fromObject(object.metadata); + message.metadata = $root.google.protobuf.Any.fromObject(object.metadata, long + 1); } if (object.done != null) message.done = Boolean(object.done); if (object.error != null) { if (typeof object.error !== "object") throw TypeError(".google.longrunning.Operation.error: object expected"); - message.error = $root.google.rpc.Status.fromObject(object.error); + message.error = $root.google.rpc.Status.fromObject(object.error, long + 1); } if (object.response != null) { if (typeof object.response !== "object") throw TypeError(".google.longrunning.Operation.response: object expected"); - message.response = $root.google.protobuf.Any.fromObject(object.response); + message.response = $root.google.protobuf.Any.fromObject(object.response, long + 1); } return message; }; @@ -54469,7 +56533,7 @@ function GetOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54534,9 +56598,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOperationRequest.decode = function decode(reader, length, error) { + GetOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.GetOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54548,7 +56616,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54579,9 +56647,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOperationRequest.verify = function verify(message) { + GetOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -54596,9 +56668,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.GetOperationRequest} GetOperationRequest */ - GetOperationRequest.fromObject = function fromObject(object) { + GetOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.GetOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.GetOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -54677,7 +56753,7 @@ function ListOperationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54772,9 +56848,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsRequest.decode = function decode(reader, length, error) { + ListOperationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54798,7 +56878,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54829,9 +56909,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsRequest.verify = function verify(message) { + ListOperationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -54855,9 +56939,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest */ - ListOperationsRequest.fromObject = function fromObject(object) { + ListOperationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsRequest(); if (object.name != null) message.name = String(object.name); @@ -54951,7 +57039,7 @@ this.operations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55027,9 +57115,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsResponse.decode = function decode(reader, length, error) { + ListOperationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55039,7 +57131,7 @@ case 1: { if (!(message.operations && message.operations.length)) message.operations = []; - message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); + message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -55047,7 +57139,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55078,14 +57170,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsResponse.verify = function verify(message) { + ListOperationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.operations != null && message.hasOwnProperty("operations")) { if (!Array.isArray(message.operations)) return "operations: array expected"; for (var i = 0; i < message.operations.length; ++i) { - var error = $root.google.longrunning.Operation.verify(message.operations[i]); + var error = $root.google.longrunning.Operation.verify(message.operations[i], long + 1); if (error) return "operations." + error; } @@ -55104,9 +57200,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse */ - ListOperationsResponse.fromObject = function fromObject(object) { + ListOperationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsResponse(); if (object.operations) { if (!Array.isArray(object.operations)) @@ -55115,7 +57215,7 @@ for (var i = 0; i < object.operations.length; ++i) { if (typeof object.operations[i] !== "object") throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected"); - message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i]); + message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i], long + 1); } } if (object.nextPageToken != null) @@ -55199,7 +57299,7 @@ function CancelOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55264,9 +57364,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CancelOperationRequest.decode = function decode(reader, length, error) { + CancelOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.CancelOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55278,7 +57382,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55309,9 +57413,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CancelOperationRequest.verify = function verify(message) { + CancelOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -55326,9 +57434,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest */ - CancelOperationRequest.fromObject = function fromObject(object) { + CancelOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.CancelOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.CancelOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -55404,7 +57516,7 @@ function DeleteOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55469,9 +57581,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteOperationRequest.decode = function decode(reader, length, error) { + DeleteOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.DeleteOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55483,7 +57599,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55514,9 +57630,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteOperationRequest.verify = function verify(message) { + DeleteOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -55531,9 +57651,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest */ - DeleteOperationRequest.fromObject = function fromObject(object) { + DeleteOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.DeleteOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.DeleteOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -55610,7 +57734,7 @@ function WaitOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55685,9 +57809,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WaitOperationRequest.decode = function decode(reader, length, error) { + WaitOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.WaitOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55699,11 +57827,11 @@ break; } case 2: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55734,14 +57862,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WaitOperationRequest.verify = function verify(message) { + WaitOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -55756,16 +57888,20 @@ * @param {Object.} object Plain object * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest */ - WaitOperationRequest.fromObject = function fromObject(object) { + WaitOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.WaitOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.WaitOperationRequest(); if (object.name != null) message.name = String(object.name); if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } return message; }; @@ -55844,7 +57980,7 @@ function OperationInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55919,9 +58055,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationInfo.decode = function decode(reader, length, error) { + OperationInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.OperationInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55937,7 +58077,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55968,9 +58108,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationInfo.verify = function verify(message) { + OperationInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.responseType != null && message.hasOwnProperty("responseType")) if (!$util.isString(message.responseType)) return "responseType: string expected"; @@ -55988,9 +58132,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.OperationInfo} OperationInfo */ - OperationInfo.fromObject = function fromObject(object) { + OperationInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.OperationInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.OperationInfo(); if (object.responseType != null) message.responseType = String(object.responseType); @@ -56087,7 +58235,7 @@ this.details = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56173,9 +58321,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Status.decode = function decode(reader, length, error) { + Status.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.rpc.Status(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56193,11 +58345,11 @@ case 3: { if (!(message.details && message.details.length)) message.details = []; - message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56228,9 +58380,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Status.verify = function verify(message) { + Status.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isInteger(message.code)) return "code: integer expected"; @@ -56241,7 +58397,7 @@ if (!Array.isArray(message.details)) return "details: array expected"; for (var i = 0; i < message.details.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.details[i]); + var error = $root.google.protobuf.Any.verify(message.details[i], long + 1); if (error) return "details." + error; } @@ -56257,9 +58413,13 @@ * @param {Object.} object Plain object * @returns {google.rpc.Status} Status */ - Status.fromObject = function fromObject(object) { + Status.fromObject = function fromObject(object, long) { if (object instanceof $root.google.rpc.Status) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.rpc.Status(); if (object.code != null) message.code = object.code | 0; @@ -56272,7 +58432,7 @@ for (var i = 0; i < object.details.length; ++i) { if (typeof object.details[i] !== "object") throw TypeError(".google.rpc.Status.details: object expected"); - message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]); + message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i], long + 1); } } return message; @@ -56399,7 +58559,7 @@ function TimeOfDay(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56494,9 +58654,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TimeOfDay.decode = function decode(reader, length, error) { + TimeOfDay.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.type.TimeOfDay(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56520,7 +58684,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56551,9 +58715,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TimeOfDay.verify = function verify(message) { + TimeOfDay.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.hours != null && message.hasOwnProperty("hours")) if (!$util.isInteger(message.hours)) return "hours: integer expected"; @@ -56577,9 +58745,13 @@ * @param {Object.} object Plain object * @returns {google.type.TimeOfDay} TimeOfDay */ - TimeOfDay.fromObject = function fromObject(object) { + TimeOfDay.fromObject = function fromObject(object, long) { if (object instanceof $root.google.type.TimeOfDay) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.type.TimeOfDay(); if (object.hours != null) message.hours = object.hours | 0; diff --git a/packages/google-cloud-redis/README.md b/packages/google-cloud-redis/README.md index 405962c6ee7b..50d70fa0515a 100644 --- a/packages/google-cloud-redis/README.md +++ b/packages/google-cloud-redis/README.md @@ -69,7 +69,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | reschedule maintenance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1/cloud_redis.reschedule_maintenance.js) | | update instance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1/cloud_redis.update_instance.js) | | upgrade instance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1/cloud_redis.upgrade_instance.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1/snippet_metadata_google.cloud.redis.v1.json) | | create instance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1beta1/cloud_redis.create_instance.js) | | delete instance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1beta1/cloud_redis.delete_instance.js) | | export instance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1beta1/cloud_redis.export_instance.js) | @@ -81,7 +80,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | reschedule maintenance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1beta1/cloud_redis.reschedule_maintenance.js) | | update instance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1beta1/cloud_redis.update_instance.js) | | upgrade instance | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1beta1/cloud_redis.upgrade_instance.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-redis/samples/generated/v1beta1/snippet_metadata_google.cloud.redis.v1beta1.json) | ## Supported Node.js Versions diff --git a/packages/google-cloud-redis/protos/protos.js b/packages/google-cloud-redis/protos/protos.js index c28f353482de..1afd7f22ed0c 100644 --- a/packages/google-cloud-redis/protos/protos.js +++ b/packages/google-cloud-redis/protos/protos.js @@ -485,7 +485,7 @@ function NodeInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -560,9 +560,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeInfo.decode = function decode(reader, length, error) { + NodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.NodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -578,7 +582,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -609,9 +613,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeInfo.verify = function verify(message) { + NodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -629,9 +637,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.NodeInfo} NodeInfo */ - NodeInfo.fromObject = function fromObject(object) { + NodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.NodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.NodeInfo(); if (object.id != null) message.id = String(object.id); @@ -753,7 +765,7 @@ this.availableMaintenanceVersions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1167,9 +1179,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Instance.decode = function decode(reader, length, error) { + Instance.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.Instance(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -1200,10 +1216,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -1240,7 +1258,7 @@ break; } case 13: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { @@ -1267,10 +1285,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.redisConfigs, key); message.redisConfigs[key] = value; break; } @@ -1301,7 +1321,7 @@ case 25: { if (!(message.serverCaCerts && message.serverCaCerts.length)) message.serverCaCerts = []; - message.serverCaCerts.push($root.google.cloud.redis.v1.TlsCertificate.decode(reader, reader.uint32())); + message.serverCaCerts.push($root.google.cloud.redis.v1.TlsCertificate.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 26: { @@ -1309,11 +1329,11 @@ break; } case 27: { - message.maintenancePolicy = $root.google.cloud.redis.v1.MaintenancePolicy.decode(reader, reader.uint32()); + message.maintenancePolicy = $root.google.cloud.redis.v1.MaintenancePolicy.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.maintenanceSchedule = $root.google.cloud.redis.v1.MaintenanceSchedule.decode(reader, reader.uint32()); + message.maintenanceSchedule = $root.google.cloud.redis.v1.MaintenanceSchedule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 31: { @@ -1323,7 +1343,7 @@ case 32: { if (!(message.nodes && message.nodes.length)) message.nodes = []; - message.nodes.push($root.google.cloud.redis.v1.NodeInfo.decode(reader, reader.uint32())); + message.nodes.push($root.google.cloud.redis.v1.NodeInfo.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 33: { @@ -1343,7 +1363,7 @@ break; } case 37: { - message.persistenceConfig = $root.google.cloud.redis.v1.PersistenceConfig.decode(reader, reader.uint32()); + message.persistenceConfig = $root.google.cloud.redis.v1.PersistenceConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 38: { @@ -1368,7 +1388,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1399,9 +1419,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Instance.verify = function verify(message) { + Instance.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -1441,7 +1465,7 @@ if (!$util.isString(message.currentLocationId)) return "currentLocationId: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -1505,7 +1529,7 @@ if (!Array.isArray(message.serverCaCerts)) return "serverCaCerts: array expected"; for (var i = 0; i < message.serverCaCerts.length; ++i) { - var error = $root.google.cloud.redis.v1.TlsCertificate.verify(message.serverCaCerts[i]); + var error = $root.google.cloud.redis.v1.TlsCertificate.verify(message.serverCaCerts[i], long + 1); if (error) return "serverCaCerts." + error; } @@ -1520,12 +1544,12 @@ break; } if (message.maintenancePolicy != null && message.hasOwnProperty("maintenancePolicy")) { - var error = $root.google.cloud.redis.v1.MaintenancePolicy.verify(message.maintenancePolicy); + var error = $root.google.cloud.redis.v1.MaintenancePolicy.verify(message.maintenancePolicy, long + 1); if (error) return "maintenancePolicy." + error; } if (message.maintenanceSchedule != null && message.hasOwnProperty("maintenanceSchedule")) { - var error = $root.google.cloud.redis.v1.MaintenanceSchedule.verify(message.maintenanceSchedule); + var error = $root.google.cloud.redis.v1.MaintenanceSchedule.verify(message.maintenanceSchedule, long + 1); if (error) return "maintenanceSchedule." + error; } @@ -1536,7 +1560,7 @@ if (!Array.isArray(message.nodes)) return "nodes: array expected"; for (var i = 0; i < message.nodes.length; ++i) { - var error = $root.google.cloud.redis.v1.NodeInfo.verify(message.nodes[i]); + var error = $root.google.cloud.redis.v1.NodeInfo.verify(message.nodes[i], long + 1); if (error) return "nodes." + error; } @@ -1560,7 +1584,7 @@ if (!$util.isString(message.customerManagedKey)) return "customerManagedKey: string expected"; if (message.persistenceConfig != null && message.hasOwnProperty("persistenceConfig")) { - var error = $root.google.cloud.redis.v1.PersistenceConfig.verify(message.persistenceConfig); + var error = $root.google.cloud.redis.v1.PersistenceConfig.verify(message.persistenceConfig, long + 1); if (error) return "persistenceConfig." + error; } @@ -1597,9 +1621,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.Instance} Instance */ - Instance.fromObject = function fromObject(object) { + Instance.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.Instance) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.Instance(); if (object.name != null) message.name = String(object.name); @@ -1609,8 +1637,11 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.redis.v1.Instance.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.locationId != null) message.locationId = String(object.locationId); @@ -1631,7 +1662,7 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.v1.Instance.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } switch (object.state) { default: @@ -1683,8 +1714,11 @@ if (typeof object.redisConfigs !== "object") throw TypeError(".google.cloud.redis.v1.Instance.redisConfigs: object expected"); message.redisConfigs = {}; - for (var keys = Object.keys(object.redisConfigs), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.redisConfigs), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.redisConfigs, keys[i]); message.redisConfigs[keys[i]] = String(object.redisConfigs[keys[i]]); + } } switch (object.tier) { default: @@ -1741,7 +1775,7 @@ for (var i = 0; i < object.serverCaCerts.length; ++i) { if (typeof object.serverCaCerts[i] !== "object") throw TypeError(".google.cloud.redis.v1.Instance.serverCaCerts: object expected"); - message.serverCaCerts[i] = $root.google.cloud.redis.v1.TlsCertificate.fromObject(object.serverCaCerts[i]); + message.serverCaCerts[i] = $root.google.cloud.redis.v1.TlsCertificate.fromObject(object.serverCaCerts[i], long + 1); } } switch (object.transitEncryptionMode) { @@ -1767,12 +1801,12 @@ if (object.maintenancePolicy != null) { if (typeof object.maintenancePolicy !== "object") throw TypeError(".google.cloud.redis.v1.Instance.maintenancePolicy: object expected"); - message.maintenancePolicy = $root.google.cloud.redis.v1.MaintenancePolicy.fromObject(object.maintenancePolicy); + message.maintenancePolicy = $root.google.cloud.redis.v1.MaintenancePolicy.fromObject(object.maintenancePolicy, long + 1); } if (object.maintenanceSchedule != null) { if (typeof object.maintenanceSchedule !== "object") throw TypeError(".google.cloud.redis.v1.Instance.maintenanceSchedule: object expected"); - message.maintenanceSchedule = $root.google.cloud.redis.v1.MaintenanceSchedule.fromObject(object.maintenanceSchedule); + message.maintenanceSchedule = $root.google.cloud.redis.v1.MaintenanceSchedule.fromObject(object.maintenanceSchedule, long + 1); } if (object.replicaCount != null) message.replicaCount = object.replicaCount | 0; @@ -1783,7 +1817,7 @@ for (var i = 0; i < object.nodes.length; ++i) { if (typeof object.nodes[i] !== "object") throw TypeError(".google.cloud.redis.v1.Instance.nodes: object expected"); - message.nodes[i] = $root.google.cloud.redis.v1.NodeInfo.fromObject(object.nodes[i]); + message.nodes[i] = $root.google.cloud.redis.v1.NodeInfo.fromObject(object.nodes[i], long + 1); } } if (object.readEndpoint != null) @@ -1815,7 +1849,7 @@ if (object.persistenceConfig != null) { if (typeof object.persistenceConfig !== "object") throw TypeError(".google.cloud.redis.v1.Instance.persistenceConfig: object expected"); - message.persistenceConfig = $root.google.cloud.redis.v1.PersistenceConfig.fromObject(object.persistenceConfig); + message.persistenceConfig = $root.google.cloud.redis.v1.PersistenceConfig.fromObject(object.persistenceConfig, long + 1); } if (object.suspensionReasons) { if (!Array.isArray(object.suspensionReasons)) @@ -1911,8 +1945,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.locationId != null && message.hasOwnProperty("locationId")) object.locationId = message.locationId; @@ -1936,8 +1973,11 @@ object.statusMessage = message.statusMessage; if (message.redisConfigs && (keys2 = Object.keys(message.redisConfigs)).length) { object.redisConfigs = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.redisConfigs, keys2[j]); object.redisConfigs[keys2[j]] = message.redisConfigs[keys2[j]]; + } } if (message.tier != null && message.hasOwnProperty("tier")) object.tier = options.enums === String ? $root.google.cloud.redis.v1.Instance.Tier[message.tier] === undefined ? message.tier : $root.google.cloud.redis.v1.Instance.Tier[message.tier] : message.tier; @@ -2154,7 +2194,7 @@ function PersistenceConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2249,9 +2289,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PersistenceConfig.decode = function decode(reader, length, error) { + PersistenceConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.PersistenceConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2267,15 +2311,15 @@ break; } case 4: { - message.rdbNextSnapshotTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.rdbNextSnapshotTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2306,9 +2350,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PersistenceConfig.verify = function verify(message) { + PersistenceConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.persistenceMode != null && message.hasOwnProperty("persistenceMode")) switch (message.persistenceMode) { default: @@ -2330,12 +2378,12 @@ break; } if (message.rdbNextSnapshotTime != null && message.hasOwnProperty("rdbNextSnapshotTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.rdbNextSnapshotTime); + var error = $root.google.protobuf.Timestamp.verify(message.rdbNextSnapshotTime, long + 1); if (error) return "rdbNextSnapshotTime." + error; } if (message.rdbSnapshotStartTime != null && message.hasOwnProperty("rdbSnapshotStartTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.rdbSnapshotStartTime); + var error = $root.google.protobuf.Timestamp.verify(message.rdbSnapshotStartTime, long + 1); if (error) return "rdbSnapshotStartTime." + error; } @@ -2350,9 +2398,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.PersistenceConfig} PersistenceConfig */ - PersistenceConfig.fromObject = function fromObject(object) { + PersistenceConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.PersistenceConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.PersistenceConfig(); switch (object.persistenceMode) { default: @@ -2405,12 +2457,12 @@ if (object.rdbNextSnapshotTime != null) { if (typeof object.rdbNextSnapshotTime !== "object") throw TypeError(".google.cloud.redis.v1.PersistenceConfig.rdbNextSnapshotTime: object expected"); - message.rdbNextSnapshotTime = $root.google.protobuf.Timestamp.fromObject(object.rdbNextSnapshotTime); + message.rdbNextSnapshotTime = $root.google.protobuf.Timestamp.fromObject(object.rdbNextSnapshotTime, long + 1); } if (object.rdbSnapshotStartTime != null) { if (typeof object.rdbSnapshotStartTime !== "object") throw TypeError(".google.cloud.redis.v1.PersistenceConfig.rdbSnapshotStartTime: object expected"); - message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.fromObject(object.rdbSnapshotStartTime); + message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.fromObject(object.rdbSnapshotStartTime, long + 1); } return message; }; @@ -2532,7 +2584,7 @@ function RescheduleMaintenanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2617,9 +2669,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RescheduleMaintenanceRequest.decode = function decode(reader, length, error) { + RescheduleMaintenanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.RescheduleMaintenanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2635,11 +2691,11 @@ break; } case 3: { - message.scheduleTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.scheduleTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2670,9 +2726,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RescheduleMaintenanceRequest.verify = function verify(message) { + RescheduleMaintenanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -2687,7 +2747,7 @@ break; } if (message.scheduleTime != null && message.hasOwnProperty("scheduleTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.scheduleTime); + var error = $root.google.protobuf.Timestamp.verify(message.scheduleTime, long + 1); if (error) return "scheduleTime." + error; } @@ -2702,9 +2762,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.RescheduleMaintenanceRequest} RescheduleMaintenanceRequest */ - RescheduleMaintenanceRequest.fromObject = function fromObject(object) { + RescheduleMaintenanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.RescheduleMaintenanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.RescheduleMaintenanceRequest(); if (object.name != null) message.name = String(object.name); @@ -2735,7 +2799,7 @@ if (object.scheduleTime != null) { if (typeof object.scheduleTime !== "object") throw TypeError(".google.cloud.redis.v1.RescheduleMaintenanceRequest.scheduleTime: object expected"); - message.scheduleTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleTime); + message.scheduleTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleTime, long + 1); } return message; }; @@ -2838,7 +2902,7 @@ this.weeklyMaintenanceWindow = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2934,9 +2998,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MaintenancePolicy.decode = function decode(reader, length, error) { + MaintenancePolicy.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.MaintenancePolicy(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2944,11 +3012,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -2958,11 +3026,11 @@ case 4: { if (!(message.weeklyMaintenanceWindow && message.weeklyMaintenanceWindow.length)) message.weeklyMaintenanceWindow = []; - message.weeklyMaintenanceWindow.push($root.google.cloud.redis.v1.WeeklyMaintenanceWindow.decode(reader, reader.uint32())); + message.weeklyMaintenanceWindow.push($root.google.cloud.redis.v1.WeeklyMaintenanceWindow.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2993,16 +3061,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MaintenancePolicy.verify = function verify(message) { + MaintenancePolicy.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -3013,7 +3085,7 @@ if (!Array.isArray(message.weeklyMaintenanceWindow)) return "weeklyMaintenanceWindow: array expected"; for (var i = 0; i < message.weeklyMaintenanceWindow.length; ++i) { - var error = $root.google.cloud.redis.v1.WeeklyMaintenanceWindow.verify(message.weeklyMaintenanceWindow[i]); + var error = $root.google.cloud.redis.v1.WeeklyMaintenanceWindow.verify(message.weeklyMaintenanceWindow[i], long + 1); if (error) return "weeklyMaintenanceWindow." + error; } @@ -3029,19 +3101,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.MaintenancePolicy} MaintenancePolicy */ - MaintenancePolicy.fromObject = function fromObject(object) { + MaintenancePolicy.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.MaintenancePolicy) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.MaintenancePolicy(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.v1.MaintenancePolicy.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.redis.v1.MaintenancePolicy.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.description != null) message.description = String(object.description); @@ -3052,7 +3128,7 @@ for (var i = 0; i < object.weeklyMaintenanceWindow.length; ++i) { if (typeof object.weeklyMaintenanceWindow[i] !== "object") throw TypeError(".google.cloud.redis.v1.MaintenancePolicy.weeklyMaintenanceWindow: object expected"); - message.weeklyMaintenanceWindow[i] = $root.google.cloud.redis.v1.WeeklyMaintenanceWindow.fromObject(object.weeklyMaintenanceWindow[i]); + message.weeklyMaintenanceWindow[i] = $root.google.cloud.redis.v1.WeeklyMaintenanceWindow.fromObject(object.weeklyMaintenanceWindow[i], long + 1); } } return message; @@ -3143,7 +3219,7 @@ function WeeklyMaintenanceWindow(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3228,9 +3304,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WeeklyMaintenanceWindow.decode = function decode(reader, length, error) { + WeeklyMaintenanceWindow.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.WeeklyMaintenanceWindow(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3242,15 +3322,15 @@ break; } case 2: { - message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32()); + message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.duration = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.duration = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3281,9 +3361,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WeeklyMaintenanceWindow.verify = function verify(message) { + WeeklyMaintenanceWindow.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.day != null && message.hasOwnProperty("day")) switch (message.day) { default: @@ -3299,12 +3383,12 @@ break; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.type.TimeOfDay.verify(message.startTime); + var error = $root.google.type.TimeOfDay.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.duration != null && message.hasOwnProperty("duration")) { - var error = $root.google.protobuf.Duration.verify(message.duration); + var error = $root.google.protobuf.Duration.verify(message.duration, long + 1); if (error) return "duration." + error; } @@ -3319,9 +3403,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.WeeklyMaintenanceWindow} WeeklyMaintenanceWindow */ - WeeklyMaintenanceWindow.fromObject = function fromObject(object) { + WeeklyMaintenanceWindow.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.WeeklyMaintenanceWindow) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.WeeklyMaintenanceWindow(); switch (object.day) { default: @@ -3366,12 +3454,12 @@ if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.v1.WeeklyMaintenanceWindow.startTime: object expected"); - message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime); + message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime, long + 1); } if (object.duration != null) { if (typeof object.duration !== "object") throw TypeError(".google.cloud.redis.v1.WeeklyMaintenanceWindow.duration: object expected"); - message.duration = $root.google.protobuf.Duration.fromObject(object.duration); + message.duration = $root.google.protobuf.Duration.fromObject(object.duration, long + 1); } return message; }; @@ -3455,7 +3543,7 @@ function MaintenanceSchedule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3550,9 +3638,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MaintenanceSchedule.decode = function decode(reader, length, error) { + MaintenanceSchedule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.MaintenanceSchedule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3560,11 +3652,11 @@ break; switch (tag >>> 3) { case 1: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -3572,11 +3664,11 @@ break; } case 5: { - message.scheduleDeadlineTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.scheduleDeadlineTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3607,16 +3699,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MaintenanceSchedule.verify = function verify(message) { + MaintenanceSchedule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -3624,7 +3720,7 @@ if (typeof message.canReschedule !== "boolean") return "canReschedule: boolean expected"; if (message.scheduleDeadlineTime != null && message.hasOwnProperty("scheduleDeadlineTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.scheduleDeadlineTime); + var error = $root.google.protobuf.Timestamp.verify(message.scheduleDeadlineTime, long + 1); if (error) return "scheduleDeadlineTime." + error; } @@ -3639,26 +3735,30 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.MaintenanceSchedule} MaintenanceSchedule */ - MaintenanceSchedule.fromObject = function fromObject(object) { + MaintenanceSchedule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.MaintenanceSchedule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.MaintenanceSchedule(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.v1.MaintenanceSchedule.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.redis.v1.MaintenanceSchedule.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.canReschedule != null) message.canReschedule = Boolean(object.canReschedule); if (object.scheduleDeadlineTime != null) { if (typeof object.scheduleDeadlineTime !== "object") throw TypeError(".google.cloud.redis.v1.MaintenanceSchedule.scheduleDeadlineTime: object expected"); - message.scheduleDeadlineTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleDeadlineTime); + message.scheduleDeadlineTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleDeadlineTime, long + 1); } return message; }; @@ -3744,7 +3844,7 @@ function ListInstancesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3829,9 +3929,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListInstancesRequest.decode = function decode(reader, length, error) { + ListInstancesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.ListInstancesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3851,7 +3955,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3882,9 +3986,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListInstancesRequest.verify = function verify(message) { + ListInstancesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -3905,9 +4013,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.ListInstancesRequest} ListInstancesRequest */ - ListInstancesRequest.fromObject = function fromObject(object) { + ListInstancesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.ListInstancesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.ListInstancesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -3998,7 +4110,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4085,9 +4197,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListInstancesResponse.decode = function decode(reader, length, error) { + ListInstancesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.ListInstancesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4097,7 +4213,7 @@ case 1: { if (!(message.instances && message.instances.length)) message.instances = []; - message.instances.push($root.google.cloud.redis.v1.Instance.decode(reader, reader.uint32())); + message.instances.push($root.google.cloud.redis.v1.Instance.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -4111,7 +4227,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4142,14 +4258,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListInstancesResponse.verify = function verify(message) { + ListInstancesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.instances != null && message.hasOwnProperty("instances")) { if (!Array.isArray(message.instances)) return "instances: array expected"; for (var i = 0; i < message.instances.length; ++i) { - var error = $root.google.cloud.redis.v1.Instance.verify(message.instances[i]); + var error = $root.google.cloud.redis.v1.Instance.verify(message.instances[i], long + 1); if (error) return "instances." + error; } @@ -4175,9 +4295,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.ListInstancesResponse} ListInstancesResponse */ - ListInstancesResponse.fromObject = function fromObject(object) { + ListInstancesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.ListInstancesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.ListInstancesResponse(); if (object.instances) { if (!Array.isArray(object.instances)) @@ -4186,7 +4310,7 @@ for (var i = 0; i < object.instances.length; ++i) { if (typeof object.instances[i] !== "object") throw TypeError(".google.cloud.redis.v1.ListInstancesResponse.instances: object expected"); - message.instances[i] = $root.google.cloud.redis.v1.Instance.fromObject(object.instances[i]); + message.instances[i] = $root.google.cloud.redis.v1.Instance.fromObject(object.instances[i], long + 1); } } if (object.nextPageToken != null) @@ -4284,7 +4408,7 @@ function GetInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4349,9 +4473,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetInstanceRequest.decode = function decode(reader, length, error) { + GetInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.GetInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4363,7 +4491,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4394,9 +4522,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetInstanceRequest.verify = function verify(message) { + GetInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -4411,9 +4543,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.GetInstanceRequest} GetInstanceRequest */ - GetInstanceRequest.fromObject = function fromObject(object) { + GetInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.GetInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.GetInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -4489,7 +4625,7 @@ function GetInstanceAuthStringRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4554,9 +4690,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetInstanceAuthStringRequest.decode = function decode(reader, length, error) { + GetInstanceAuthStringRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.GetInstanceAuthStringRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4568,7 +4708,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4599,9 +4739,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetInstanceAuthStringRequest.verify = function verify(message) { + GetInstanceAuthStringRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -4616,9 +4760,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.GetInstanceAuthStringRequest} GetInstanceAuthStringRequest */ - GetInstanceAuthStringRequest.fromObject = function fromObject(object) { + GetInstanceAuthStringRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.GetInstanceAuthStringRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.GetInstanceAuthStringRequest(); if (object.name != null) message.name = String(object.name); @@ -4694,7 +4842,7 @@ function InstanceAuthString(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4759,9 +4907,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InstanceAuthString.decode = function decode(reader, length, error) { + InstanceAuthString.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.InstanceAuthString(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4773,7 +4925,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4804,9 +4956,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InstanceAuthString.verify = function verify(message) { + InstanceAuthString.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.authString != null && message.hasOwnProperty("authString")) if (!$util.isString(message.authString)) return "authString: string expected"; @@ -4821,9 +4977,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.InstanceAuthString} InstanceAuthString */ - InstanceAuthString.fromObject = function fromObject(object) { + InstanceAuthString.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.InstanceAuthString) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.InstanceAuthString(); if (object.authString != null) message.authString = String(object.authString); @@ -4901,7 +5061,7 @@ function CreateInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4986,9 +5146,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateInstanceRequest.decode = function decode(reader, length, error) { + CreateInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.CreateInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5004,11 +5168,11 @@ break; } case 3: { - message.instance = $root.google.cloud.redis.v1.Instance.decode(reader, reader.uint32()); + message.instance = $root.google.cloud.redis.v1.Instance.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5039,9 +5203,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateInstanceRequest.verify = function verify(message) { + CreateInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -5049,7 +5217,7 @@ if (!$util.isString(message.instanceId)) return "instanceId: string expected"; if (message.instance != null && message.hasOwnProperty("instance")) { - var error = $root.google.cloud.redis.v1.Instance.verify(message.instance); + var error = $root.google.cloud.redis.v1.Instance.verify(message.instance, long + 1); if (error) return "instance." + error; } @@ -5064,9 +5232,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.CreateInstanceRequest} CreateInstanceRequest */ - CreateInstanceRequest.fromObject = function fromObject(object) { + CreateInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.CreateInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.CreateInstanceRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -5075,7 +5247,7 @@ if (object.instance != null) { if (typeof object.instance !== "object") throw TypeError(".google.cloud.redis.v1.CreateInstanceRequest.instance: object expected"); - message.instance = $root.google.cloud.redis.v1.Instance.fromObject(object.instance); + message.instance = $root.google.cloud.redis.v1.Instance.fromObject(object.instance, long + 1); } return message; }; @@ -5157,7 +5329,7 @@ function UpdateInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5232,9 +5404,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateInstanceRequest.decode = function decode(reader, length, error) { + UpdateInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.UpdateInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5242,15 +5418,15 @@ break; switch (tag >>> 3) { case 1: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.instance = $root.google.cloud.redis.v1.Instance.decode(reader, reader.uint32()); + message.instance = $root.google.cloud.redis.v1.Instance.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5281,16 +5457,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateInstanceRequest.verify = function verify(message) { + UpdateInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } if (message.instance != null && message.hasOwnProperty("instance")) { - var error = $root.google.cloud.redis.v1.Instance.verify(message.instance); + var error = $root.google.cloud.redis.v1.Instance.verify(message.instance, long + 1); if (error) return "instance." + error; } @@ -5305,19 +5485,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.UpdateInstanceRequest} UpdateInstanceRequest */ - UpdateInstanceRequest.fromObject = function fromObject(object) { + UpdateInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.UpdateInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.UpdateInstanceRequest(); if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.redis.v1.UpdateInstanceRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.instance != null) { if (typeof object.instance !== "object") throw TypeError(".google.cloud.redis.v1.UpdateInstanceRequest.instance: object expected"); - message.instance = $root.google.cloud.redis.v1.Instance.fromObject(object.instance); + message.instance = $root.google.cloud.redis.v1.Instance.fromObject(object.instance, long + 1); } return message; }; @@ -5396,7 +5580,7 @@ function UpgradeInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5471,9 +5655,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpgradeInstanceRequest.decode = function decode(reader, length, error) { + UpgradeInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.UpgradeInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5489,7 +5677,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5520,9 +5708,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpgradeInstanceRequest.verify = function verify(message) { + UpgradeInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -5540,9 +5732,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.UpgradeInstanceRequest} UpgradeInstanceRequest */ - UpgradeInstanceRequest.fromObject = function fromObject(object) { + UpgradeInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.UpgradeInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.UpgradeInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -5624,7 +5820,7 @@ function DeleteInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5689,9 +5885,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteInstanceRequest.decode = function decode(reader, length, error) { + DeleteInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.DeleteInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5703,7 +5903,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5734,9 +5934,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteInstanceRequest.verify = function verify(message) { + DeleteInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -5751,9 +5955,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.DeleteInstanceRequest} DeleteInstanceRequest */ - DeleteInstanceRequest.fromObject = function fromObject(object) { + DeleteInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.DeleteInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.DeleteInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -5829,7 +6037,7 @@ function GcsSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5894,9 +6102,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsSource.decode = function decode(reader, length, error) { + GcsSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.GcsSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5908,7 +6120,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5939,9 +6151,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsSource.verify = function verify(message) { + GcsSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -5956,9 +6172,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.GcsSource} GcsSource */ - GcsSource.fromObject = function fromObject(object) { + GcsSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.GcsSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.GcsSource(); if (object.uri != null) message.uri = String(object.uri); @@ -6034,7 +6254,7 @@ function InputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6113,9 +6333,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InputConfig.decode = function decode(reader, length, error) { + InputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.InputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6123,11 +6347,11 @@ break; switch (tag >>> 3) { case 1: { - message.gcsSource = $root.google.cloud.redis.v1.GcsSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.redis.v1.GcsSource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6158,14 +6382,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InputConfig.verify = function verify(message) { + InputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsSource != null && message.hasOwnProperty("gcsSource")) { properties.source = 1; { - var error = $root.google.cloud.redis.v1.GcsSource.verify(message.gcsSource); + var error = $root.google.cloud.redis.v1.GcsSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -6181,14 +6409,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.InputConfig} InputConfig */ - InputConfig.fromObject = function fromObject(object) { + InputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.InputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.InputConfig(); if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.redis.v1.InputConfig.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.redis.v1.GcsSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.redis.v1.GcsSource.fromObject(object.gcsSource, long + 1); } return message; }; @@ -6264,7 +6496,7 @@ function ImportInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6339,9 +6571,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportInstanceRequest.decode = function decode(reader, length, error) { + ImportInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.ImportInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6353,11 +6589,11 @@ break; } case 3: { - message.inputConfig = $root.google.cloud.redis.v1.InputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.redis.v1.InputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6388,14 +6624,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportInstanceRequest.verify = function verify(message) { + ImportInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.redis.v1.InputConfig.verify(message.inputConfig); + var error = $root.google.cloud.redis.v1.InputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } @@ -6410,16 +6650,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.ImportInstanceRequest} ImportInstanceRequest */ - ImportInstanceRequest.fromObject = function fromObject(object) { + ImportInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.ImportInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.ImportInstanceRequest(); if (object.name != null) message.name = String(object.name); if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.redis.v1.ImportInstanceRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.redis.v1.InputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.redis.v1.InputConfig.fromObject(object.inputConfig, long + 1); } return message; }; @@ -6497,7 +6741,7 @@ function GcsDestination(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6562,9 +6806,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsDestination.decode = function decode(reader, length, error) { + GcsDestination.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.GcsDestination(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6576,7 +6824,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6607,9 +6855,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsDestination.verify = function verify(message) { + GcsDestination.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -6624,9 +6876,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.GcsDestination} GcsDestination */ - GcsDestination.fromObject = function fromObject(object) { + GcsDestination.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.GcsDestination) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.GcsDestination(); if (object.uri != null) message.uri = String(object.uri); @@ -6702,7 +6958,7 @@ function OutputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6781,9 +7037,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OutputConfig.decode = function decode(reader, length, error) { + OutputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.OutputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6791,11 +7051,11 @@ break; switch (tag >>> 3) { case 1: { - message.gcsDestination = $root.google.cloud.redis.v1.GcsDestination.decode(reader, reader.uint32()); + message.gcsDestination = $root.google.cloud.redis.v1.GcsDestination.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6826,14 +7086,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OutputConfig.verify = function verify(message) { + OutputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsDestination != null && message.hasOwnProperty("gcsDestination")) { properties.destination = 1; { - var error = $root.google.cloud.redis.v1.GcsDestination.verify(message.gcsDestination); + var error = $root.google.cloud.redis.v1.GcsDestination.verify(message.gcsDestination, long + 1); if (error) return "gcsDestination." + error; } @@ -6849,14 +7113,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.OutputConfig} OutputConfig */ - OutputConfig.fromObject = function fromObject(object) { + OutputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.OutputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.OutputConfig(); if (object.gcsDestination != null) { if (typeof object.gcsDestination !== "object") throw TypeError(".google.cloud.redis.v1.OutputConfig.gcsDestination: object expected"); - message.gcsDestination = $root.google.cloud.redis.v1.GcsDestination.fromObject(object.gcsDestination); + message.gcsDestination = $root.google.cloud.redis.v1.GcsDestination.fromObject(object.gcsDestination, long + 1); } return message; }; @@ -6932,7 +7200,7 @@ function ExportInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7007,9 +7275,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportInstanceRequest.decode = function decode(reader, length, error) { + ExportInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.ExportInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7021,11 +7293,11 @@ break; } case 3: { - message.outputConfig = $root.google.cloud.redis.v1.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.redis.v1.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7056,14 +7328,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportInstanceRequest.verify = function verify(message) { + ExportInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.redis.v1.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.redis.v1.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -7078,16 +7354,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.ExportInstanceRequest} ExportInstanceRequest */ - ExportInstanceRequest.fromObject = function fromObject(object) { + ExportInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.ExportInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.ExportInstanceRequest(); if (object.name != null) message.name = String(object.name); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.redis.v1.ExportInstanceRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.redis.v1.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.redis.v1.OutputConfig.fromObject(object.outputConfig, long + 1); } return message; }; @@ -7166,7 +7446,7 @@ function FailoverInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7241,9 +7521,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FailoverInstanceRequest.decode = function decode(reader, length, error) { + FailoverInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.FailoverInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7259,7 +7543,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7290,9 +7574,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FailoverInstanceRequest.verify = function verify(message) { + FailoverInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -7316,9 +7604,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.FailoverInstanceRequest} FailoverInstanceRequest */ - FailoverInstanceRequest.fromObject = function fromObject(object) { + FailoverInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.FailoverInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.FailoverInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -7440,7 +7732,7 @@ function OperationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7565,9 +7857,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationMetadata.decode = function decode(reader, length, error) { + OperationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.OperationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7575,11 +7871,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -7603,7 +7899,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7634,16 +7930,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationMetadata.verify = function verify(message) { + OperationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -7673,19 +7973,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.OperationMetadata} OperationMetadata */ - OperationMetadata.fromObject = function fromObject(object) { + OperationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.OperationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.OperationMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.v1.OperationMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.redis.v1.OperationMetadata.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.target != null) message.target = String(object.target); @@ -7789,7 +8093,7 @@ this.availableZones = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7857,9 +8161,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LocationMetadata.decode = function decode(reader, length, error) { + LocationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.LocationMetadata(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -7879,18 +8187,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.redis.v1.ZoneMetadata.decode(reader, reader.uint32()); + value = $root.google.cloud.redis.v1.ZoneMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.availableZones, key); message.availableZones[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7921,15 +8231,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LocationMetadata.verify = function verify(message) { + LocationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.availableZones != null && message.hasOwnProperty("availableZones")) { if (!$util.isObject(message.availableZones)) return "availableZones: object expected"; var key = Object.keys(message.availableZones); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.redis.v1.ZoneMetadata.verify(message.availableZones[key[i]]); + var error = $root.google.cloud.redis.v1.ZoneMetadata.verify(message.availableZones[key[i]], long + 1); if (error) return "availableZones." + error; } @@ -7945,18 +8259,24 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.LocationMetadata} LocationMetadata */ - LocationMetadata.fromObject = function fromObject(object) { + LocationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.LocationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.LocationMetadata(); if (object.availableZones) { if (typeof object.availableZones !== "object") throw TypeError(".google.cloud.redis.v1.LocationMetadata.availableZones: object expected"); message.availableZones = {}; for (var keys = Object.keys(object.availableZones), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.availableZones, keys[i]); if (typeof object.availableZones[keys[i]] !== "object") throw TypeError(".google.cloud.redis.v1.LocationMetadata.availableZones: object expected"); - message.availableZones[keys[i]] = $root.google.cloud.redis.v1.ZoneMetadata.fromObject(object.availableZones[keys[i]]); + message.availableZones[keys[i]] = $root.google.cloud.redis.v1.ZoneMetadata.fromObject(object.availableZones[keys[i]], long + 1); } } return message; @@ -7980,8 +8300,11 @@ var keys2; if (message.availableZones && (keys2 = Object.keys(message.availableZones)).length) { object.availableZones = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.availableZones, keys2[j]); object.availableZones[keys2[j]] = $root.google.cloud.redis.v1.ZoneMetadata.toObject(message.availableZones[keys2[j]], options); + } } return object; }; @@ -8034,7 +8357,7 @@ function ZoneMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8089,9 +8412,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ZoneMetadata.decode = function decode(reader, length, error) { + ZoneMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.ZoneMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8099,7 +8426,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8130,9 +8457,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ZoneMetadata.verify = function verify(message) { + ZoneMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -8144,9 +8475,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.ZoneMetadata} ZoneMetadata */ - ZoneMetadata.fromObject = function fromObject(object) { + ZoneMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.ZoneMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.redis.v1.ZoneMetadata(); }; @@ -8216,7 +8551,7 @@ function TlsCertificate(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8321,9 +8656,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TlsCertificate.decode = function decode(reader, length, error) { + TlsCertificate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1.TlsCertificate(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8339,11 +8678,11 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -8351,7 +8690,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8382,9 +8721,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TlsCertificate.verify = function verify(message) { + TlsCertificate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.serialNumber != null && message.hasOwnProperty("serialNumber")) if (!$util.isString(message.serialNumber)) return "serialNumber: string expected"; @@ -8392,12 +8735,12 @@ if (!$util.isString(message.cert)) return "cert: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -8415,9 +8758,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1.TlsCertificate} TlsCertificate */ - TlsCertificate.fromObject = function fromObject(object) { + TlsCertificate.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1.TlsCertificate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1.TlsCertificate(); if (object.serialNumber != null) message.serialNumber = String(object.serialNumber); @@ -8426,12 +8773,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.v1.TlsCertificate.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.redis.v1.TlsCertificate.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.sha1Fingerprint != null) message.sha1Fingerprint = String(object.sha1Fingerprint); @@ -8931,7 +9278,7 @@ function NodeInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9006,9 +9353,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeInfo.decode = function decode(reader, length, error) { + NodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.NodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9024,7 +9375,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9055,9 +9406,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeInfo.verify = function verify(message) { + NodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -9075,9 +9430,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.NodeInfo} NodeInfo */ - NodeInfo.fromObject = function fromObject(object) { + NodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.NodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.NodeInfo(); if (object.id != null) message.id = String(object.id); @@ -9193,7 +9552,7 @@ this.nodes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9562,9 +9921,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Instance.decode = function decode(reader, length, error) { + Instance.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.Instance(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -9595,10 +9958,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -9635,7 +10000,7 @@ break; } case 13: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { @@ -9662,10 +10027,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.redisConfigs, key); message.redisConfigs[key] = value; break; } @@ -9696,7 +10063,7 @@ case 25: { if (!(message.serverCaCerts && message.serverCaCerts.length)) message.serverCaCerts = []; - message.serverCaCerts.push($root.google.cloud.redis.v1beta1.TlsCertificate.decode(reader, reader.uint32())); + message.serverCaCerts.push($root.google.cloud.redis.v1beta1.TlsCertificate.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 26: { @@ -9704,11 +10071,11 @@ break; } case 27: { - message.maintenancePolicy = $root.google.cloud.redis.v1beta1.MaintenancePolicy.decode(reader, reader.uint32()); + message.maintenancePolicy = $root.google.cloud.redis.v1beta1.MaintenancePolicy.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.maintenanceSchedule = $root.google.cloud.redis.v1beta1.MaintenanceSchedule.decode(reader, reader.uint32()); + message.maintenanceSchedule = $root.google.cloud.redis.v1beta1.MaintenanceSchedule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 31: { @@ -9718,7 +10085,7 @@ case 32: { if (!(message.nodes && message.nodes.length)) message.nodes = []; - message.nodes.push($root.google.cloud.redis.v1beta1.NodeInfo.decode(reader, reader.uint32())); + message.nodes.push($root.google.cloud.redis.v1beta1.NodeInfo.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 33: { @@ -9734,11 +10101,11 @@ break; } case 37: { - message.persistenceConfig = $root.google.cloud.redis.v1beta1.PersistenceConfig.decode(reader, reader.uint32()); + message.persistenceConfig = $root.google.cloud.redis.v1beta1.PersistenceConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9769,9 +10136,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Instance.verify = function verify(message) { + Instance.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -9811,7 +10182,7 @@ if (!$util.isString(message.currentLocationId)) return "currentLocationId: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -9875,7 +10246,7 @@ if (!Array.isArray(message.serverCaCerts)) return "serverCaCerts: array expected"; for (var i = 0; i < message.serverCaCerts.length; ++i) { - var error = $root.google.cloud.redis.v1beta1.TlsCertificate.verify(message.serverCaCerts[i]); + var error = $root.google.cloud.redis.v1beta1.TlsCertificate.verify(message.serverCaCerts[i], long + 1); if (error) return "serverCaCerts." + error; } @@ -9890,12 +10261,12 @@ break; } if (message.maintenancePolicy != null && message.hasOwnProperty("maintenancePolicy")) { - var error = $root.google.cloud.redis.v1beta1.MaintenancePolicy.verify(message.maintenancePolicy); + var error = $root.google.cloud.redis.v1beta1.MaintenancePolicy.verify(message.maintenancePolicy, long + 1); if (error) return "maintenancePolicy." + error; } if (message.maintenanceSchedule != null && message.hasOwnProperty("maintenanceSchedule")) { - var error = $root.google.cloud.redis.v1beta1.MaintenanceSchedule.verify(message.maintenanceSchedule); + var error = $root.google.cloud.redis.v1beta1.MaintenanceSchedule.verify(message.maintenanceSchedule, long + 1); if (error) return "maintenanceSchedule." + error; } @@ -9906,7 +10277,7 @@ if (!Array.isArray(message.nodes)) return "nodes: array expected"; for (var i = 0; i < message.nodes.length; ++i) { - var error = $root.google.cloud.redis.v1beta1.NodeInfo.verify(message.nodes[i]); + var error = $root.google.cloud.redis.v1beta1.NodeInfo.verify(message.nodes[i], long + 1); if (error) return "nodes." + error; } @@ -9927,7 +10298,7 @@ break; } if (message.persistenceConfig != null && message.hasOwnProperty("persistenceConfig")) { - var error = $root.google.cloud.redis.v1beta1.PersistenceConfig.verify(message.persistenceConfig); + var error = $root.google.cloud.redis.v1beta1.PersistenceConfig.verify(message.persistenceConfig, long + 1); if (error) return "persistenceConfig." + error; } @@ -9942,9 +10313,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.Instance} Instance */ - Instance.fromObject = function fromObject(object) { + Instance.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.Instance) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.Instance(); if (object.name != null) message.name = String(object.name); @@ -9954,8 +10329,11 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.redis.v1beta1.Instance.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.locationId != null) message.locationId = String(object.locationId); @@ -9976,7 +10354,7 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.Instance.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } switch (object.state) { default: @@ -10028,8 +10406,11 @@ if (typeof object.redisConfigs !== "object") throw TypeError(".google.cloud.redis.v1beta1.Instance.redisConfigs: object expected"); message.redisConfigs = {}; - for (var keys = Object.keys(object.redisConfigs), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.redisConfigs), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.redisConfigs, keys[i]); message.redisConfigs[keys[i]] = String(object.redisConfigs[keys[i]]); + } } switch (object.tier) { default: @@ -10086,7 +10467,7 @@ for (var i = 0; i < object.serverCaCerts.length; ++i) { if (typeof object.serverCaCerts[i] !== "object") throw TypeError(".google.cloud.redis.v1beta1.Instance.serverCaCerts: object expected"); - message.serverCaCerts[i] = $root.google.cloud.redis.v1beta1.TlsCertificate.fromObject(object.serverCaCerts[i]); + message.serverCaCerts[i] = $root.google.cloud.redis.v1beta1.TlsCertificate.fromObject(object.serverCaCerts[i], long + 1); } } switch (object.transitEncryptionMode) { @@ -10112,12 +10493,12 @@ if (object.maintenancePolicy != null) { if (typeof object.maintenancePolicy !== "object") throw TypeError(".google.cloud.redis.v1beta1.Instance.maintenancePolicy: object expected"); - message.maintenancePolicy = $root.google.cloud.redis.v1beta1.MaintenancePolicy.fromObject(object.maintenancePolicy); + message.maintenancePolicy = $root.google.cloud.redis.v1beta1.MaintenancePolicy.fromObject(object.maintenancePolicy, long + 1); } if (object.maintenanceSchedule != null) { if (typeof object.maintenanceSchedule !== "object") throw TypeError(".google.cloud.redis.v1beta1.Instance.maintenanceSchedule: object expected"); - message.maintenanceSchedule = $root.google.cloud.redis.v1beta1.MaintenanceSchedule.fromObject(object.maintenanceSchedule); + message.maintenanceSchedule = $root.google.cloud.redis.v1beta1.MaintenanceSchedule.fromObject(object.maintenanceSchedule, long + 1); } if (object.replicaCount != null) message.replicaCount = object.replicaCount | 0; @@ -10128,7 +10509,7 @@ for (var i = 0; i < object.nodes.length; ++i) { if (typeof object.nodes[i] !== "object") throw TypeError(".google.cloud.redis.v1beta1.Instance.nodes: object expected"); - message.nodes[i] = $root.google.cloud.redis.v1beta1.NodeInfo.fromObject(object.nodes[i]); + message.nodes[i] = $root.google.cloud.redis.v1beta1.NodeInfo.fromObject(object.nodes[i], long + 1); } } if (object.readEndpoint != null) @@ -10158,7 +10539,7 @@ if (object.persistenceConfig != null) { if (typeof object.persistenceConfig !== "object") throw TypeError(".google.cloud.redis.v1beta1.Instance.persistenceConfig: object expected"); - message.persistenceConfig = $root.google.cloud.redis.v1beta1.PersistenceConfig.fromObject(object.persistenceConfig); + message.persistenceConfig = $root.google.cloud.redis.v1beta1.PersistenceConfig.fromObject(object.persistenceConfig, long + 1); } return message; }; @@ -10220,8 +10601,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.locationId != null && message.hasOwnProperty("locationId")) object.locationId = message.locationId; @@ -10245,8 +10629,11 @@ object.statusMessage = message.statusMessage; if (message.redisConfigs && (keys2 = Object.keys(message.redisConfigs)).length) { object.redisConfigs = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.redisConfigs, keys2[j]); object.redisConfigs[keys2[j]] = message.redisConfigs[keys2[j]]; + } } if (message.tier != null && message.hasOwnProperty("tier")) object.tier = options.enums === String ? $root.google.cloud.redis.v1beta1.Instance.Tier[message.tier] === undefined ? message.tier : $root.google.cloud.redis.v1beta1.Instance.Tier[message.tier] : message.tier; @@ -10435,7 +10822,7 @@ function PersistenceConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10530,9 +10917,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PersistenceConfig.decode = function decode(reader, length, error) { + PersistenceConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.PersistenceConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10548,15 +10939,15 @@ break; } case 4: { - message.rdbNextSnapshotTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.rdbNextSnapshotTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10587,9 +10978,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PersistenceConfig.verify = function verify(message) { + PersistenceConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.persistenceMode != null && message.hasOwnProperty("persistenceMode")) switch (message.persistenceMode) { default: @@ -10611,12 +11006,12 @@ break; } if (message.rdbNextSnapshotTime != null && message.hasOwnProperty("rdbNextSnapshotTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.rdbNextSnapshotTime); + var error = $root.google.protobuf.Timestamp.verify(message.rdbNextSnapshotTime, long + 1); if (error) return "rdbNextSnapshotTime." + error; } if (message.rdbSnapshotStartTime != null && message.hasOwnProperty("rdbSnapshotStartTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.rdbSnapshotStartTime); + var error = $root.google.protobuf.Timestamp.verify(message.rdbSnapshotStartTime, long + 1); if (error) return "rdbSnapshotStartTime." + error; } @@ -10631,9 +11026,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.PersistenceConfig} PersistenceConfig */ - PersistenceConfig.fromObject = function fromObject(object) { + PersistenceConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.PersistenceConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.PersistenceConfig(); switch (object.persistenceMode) { default: @@ -10686,12 +11085,12 @@ if (object.rdbNextSnapshotTime != null) { if (typeof object.rdbNextSnapshotTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.PersistenceConfig.rdbNextSnapshotTime: object expected"); - message.rdbNextSnapshotTime = $root.google.protobuf.Timestamp.fromObject(object.rdbNextSnapshotTime); + message.rdbNextSnapshotTime = $root.google.protobuf.Timestamp.fromObject(object.rdbNextSnapshotTime, long + 1); } if (object.rdbSnapshotStartTime != null) { if (typeof object.rdbSnapshotStartTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.PersistenceConfig.rdbSnapshotStartTime: object expected"); - message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.fromObject(object.rdbSnapshotStartTime); + message.rdbSnapshotStartTime = $root.google.protobuf.Timestamp.fromObject(object.rdbSnapshotStartTime, long + 1); } return message; }; @@ -10813,7 +11212,7 @@ function RescheduleMaintenanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10898,9 +11297,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RescheduleMaintenanceRequest.decode = function decode(reader, length, error) { + RescheduleMaintenanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.RescheduleMaintenanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10916,11 +11319,11 @@ break; } case 3: { - message.scheduleTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.scheduleTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10951,9 +11354,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RescheduleMaintenanceRequest.verify = function verify(message) { + RescheduleMaintenanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -10968,7 +11375,7 @@ break; } if (message.scheduleTime != null && message.hasOwnProperty("scheduleTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.scheduleTime); + var error = $root.google.protobuf.Timestamp.verify(message.scheduleTime, long + 1); if (error) return "scheduleTime." + error; } @@ -10983,9 +11390,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.RescheduleMaintenanceRequest} RescheduleMaintenanceRequest */ - RescheduleMaintenanceRequest.fromObject = function fromObject(object) { + RescheduleMaintenanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.RescheduleMaintenanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.RescheduleMaintenanceRequest(); if (object.name != null) message.name = String(object.name); @@ -11016,7 +11427,7 @@ if (object.scheduleTime != null) { if (typeof object.scheduleTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.RescheduleMaintenanceRequest.scheduleTime: object expected"); - message.scheduleTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleTime); + message.scheduleTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleTime, long + 1); } return message; }; @@ -11119,7 +11530,7 @@ this.weeklyMaintenanceWindow = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11215,9 +11626,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MaintenancePolicy.decode = function decode(reader, length, error) { + MaintenancePolicy.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.MaintenancePolicy(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11225,11 +11640,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -11239,11 +11654,11 @@ case 4: { if (!(message.weeklyMaintenanceWindow && message.weeklyMaintenanceWindow.length)) message.weeklyMaintenanceWindow = []; - message.weeklyMaintenanceWindow.push($root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow.decode(reader, reader.uint32())); + message.weeklyMaintenanceWindow.push($root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11274,16 +11689,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MaintenancePolicy.verify = function verify(message) { + MaintenancePolicy.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -11294,7 +11713,7 @@ if (!Array.isArray(message.weeklyMaintenanceWindow)) return "weeklyMaintenanceWindow: array expected"; for (var i = 0; i < message.weeklyMaintenanceWindow.length; ++i) { - var error = $root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow.verify(message.weeklyMaintenanceWindow[i]); + var error = $root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow.verify(message.weeklyMaintenanceWindow[i], long + 1); if (error) return "weeklyMaintenanceWindow." + error; } @@ -11310,19 +11729,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.MaintenancePolicy} MaintenancePolicy */ - MaintenancePolicy.fromObject = function fromObject(object) { + MaintenancePolicy.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.MaintenancePolicy) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.MaintenancePolicy(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.MaintenancePolicy.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.MaintenancePolicy.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.description != null) message.description = String(object.description); @@ -11333,7 +11756,7 @@ for (var i = 0; i < object.weeklyMaintenanceWindow.length; ++i) { if (typeof object.weeklyMaintenanceWindow[i] !== "object") throw TypeError(".google.cloud.redis.v1beta1.MaintenancePolicy.weeklyMaintenanceWindow: object expected"); - message.weeklyMaintenanceWindow[i] = $root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow.fromObject(object.weeklyMaintenanceWindow[i]); + message.weeklyMaintenanceWindow[i] = $root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow.fromObject(object.weeklyMaintenanceWindow[i], long + 1); } } return message; @@ -11424,7 +11847,7 @@ function WeeklyMaintenanceWindow(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11509,9 +11932,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WeeklyMaintenanceWindow.decode = function decode(reader, length, error) { + WeeklyMaintenanceWindow.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11523,15 +11950,15 @@ break; } case 2: { - message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32()); + message.startTime = $root.google.type.TimeOfDay.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.duration = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.duration = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11562,9 +11989,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WeeklyMaintenanceWindow.verify = function verify(message) { + WeeklyMaintenanceWindow.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.day != null && message.hasOwnProperty("day")) switch (message.day) { default: @@ -11580,12 +12011,12 @@ break; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.type.TimeOfDay.verify(message.startTime); + var error = $root.google.type.TimeOfDay.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.duration != null && message.hasOwnProperty("duration")) { - var error = $root.google.protobuf.Duration.verify(message.duration); + var error = $root.google.protobuf.Duration.verify(message.duration, long + 1); if (error) return "duration." + error; } @@ -11600,9 +12031,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.WeeklyMaintenanceWindow} WeeklyMaintenanceWindow */ - WeeklyMaintenanceWindow.fromObject = function fromObject(object) { + WeeklyMaintenanceWindow.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.WeeklyMaintenanceWindow(); switch (object.day) { default: @@ -11647,12 +12082,12 @@ if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.WeeklyMaintenanceWindow.startTime: object expected"); - message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime); + message.startTime = $root.google.type.TimeOfDay.fromObject(object.startTime, long + 1); } if (object.duration != null) { if (typeof object.duration !== "object") throw TypeError(".google.cloud.redis.v1beta1.WeeklyMaintenanceWindow.duration: object expected"); - message.duration = $root.google.protobuf.Duration.fromObject(object.duration); + message.duration = $root.google.protobuf.Duration.fromObject(object.duration, long + 1); } return message; }; @@ -11736,7 +12171,7 @@ function MaintenanceSchedule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11831,9 +12266,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MaintenanceSchedule.decode = function decode(reader, length, error) { + MaintenanceSchedule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.MaintenanceSchedule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11841,11 +12280,11 @@ break; switch (tag >>> 3) { case 1: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -11853,11 +12292,11 @@ break; } case 5: { - message.scheduleDeadlineTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.scheduleDeadlineTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11888,16 +12327,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MaintenanceSchedule.verify = function verify(message) { + MaintenanceSchedule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -11905,7 +12348,7 @@ if (typeof message.canReschedule !== "boolean") return "canReschedule: boolean expected"; if (message.scheduleDeadlineTime != null && message.hasOwnProperty("scheduleDeadlineTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.scheduleDeadlineTime); + var error = $root.google.protobuf.Timestamp.verify(message.scheduleDeadlineTime, long + 1); if (error) return "scheduleDeadlineTime." + error; } @@ -11920,26 +12363,30 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.MaintenanceSchedule} MaintenanceSchedule */ - MaintenanceSchedule.fromObject = function fromObject(object) { + MaintenanceSchedule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.MaintenanceSchedule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.MaintenanceSchedule(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.MaintenanceSchedule.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.MaintenanceSchedule.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } if (object.canReschedule != null) message.canReschedule = Boolean(object.canReschedule); if (object.scheduleDeadlineTime != null) { if (typeof object.scheduleDeadlineTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.MaintenanceSchedule.scheduleDeadlineTime: object expected"); - message.scheduleDeadlineTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleDeadlineTime); + message.scheduleDeadlineTime = $root.google.protobuf.Timestamp.fromObject(object.scheduleDeadlineTime, long + 1); } return message; }; @@ -12025,7 +12472,7 @@ function ListInstancesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12110,9 +12557,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListInstancesRequest.decode = function decode(reader, length, error) { + ListInstancesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.ListInstancesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12132,7 +12583,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12163,9 +12614,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListInstancesRequest.verify = function verify(message) { + ListInstancesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -12186,9 +12641,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.ListInstancesRequest} ListInstancesRequest */ - ListInstancesRequest.fromObject = function fromObject(object) { + ListInstancesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.ListInstancesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.ListInstancesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -12279,7 +12738,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12366,9 +12825,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListInstancesResponse.decode = function decode(reader, length, error) { + ListInstancesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.ListInstancesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12378,7 +12841,7 @@ case 1: { if (!(message.instances && message.instances.length)) message.instances = []; - message.instances.push($root.google.cloud.redis.v1beta1.Instance.decode(reader, reader.uint32())); + message.instances.push($root.google.cloud.redis.v1beta1.Instance.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -12392,7 +12855,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12423,14 +12886,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListInstancesResponse.verify = function verify(message) { + ListInstancesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.instances != null && message.hasOwnProperty("instances")) { if (!Array.isArray(message.instances)) return "instances: array expected"; for (var i = 0; i < message.instances.length; ++i) { - var error = $root.google.cloud.redis.v1beta1.Instance.verify(message.instances[i]); + var error = $root.google.cloud.redis.v1beta1.Instance.verify(message.instances[i], long + 1); if (error) return "instances." + error; } @@ -12456,9 +12923,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.ListInstancesResponse} ListInstancesResponse */ - ListInstancesResponse.fromObject = function fromObject(object) { + ListInstancesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.ListInstancesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.ListInstancesResponse(); if (object.instances) { if (!Array.isArray(object.instances)) @@ -12467,7 +12938,7 @@ for (var i = 0; i < object.instances.length; ++i) { if (typeof object.instances[i] !== "object") throw TypeError(".google.cloud.redis.v1beta1.ListInstancesResponse.instances: object expected"); - message.instances[i] = $root.google.cloud.redis.v1beta1.Instance.fromObject(object.instances[i]); + message.instances[i] = $root.google.cloud.redis.v1beta1.Instance.fromObject(object.instances[i], long + 1); } } if (object.nextPageToken != null) @@ -12565,7 +13036,7 @@ function GetInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12630,9 +13101,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetInstanceRequest.decode = function decode(reader, length, error) { + GetInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.GetInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12644,7 +13119,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12675,9 +13150,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetInstanceRequest.verify = function verify(message) { + GetInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -12692,9 +13171,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.GetInstanceRequest} GetInstanceRequest */ - GetInstanceRequest.fromObject = function fromObject(object) { + GetInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.GetInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.GetInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -12770,7 +13253,7 @@ function GetInstanceAuthStringRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12835,9 +13318,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetInstanceAuthStringRequest.decode = function decode(reader, length, error) { + GetInstanceAuthStringRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.GetInstanceAuthStringRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12849,7 +13336,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12880,9 +13367,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetInstanceAuthStringRequest.verify = function verify(message) { + GetInstanceAuthStringRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -12897,9 +13388,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.GetInstanceAuthStringRequest} GetInstanceAuthStringRequest */ - GetInstanceAuthStringRequest.fromObject = function fromObject(object) { + GetInstanceAuthStringRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.GetInstanceAuthStringRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.GetInstanceAuthStringRequest(); if (object.name != null) message.name = String(object.name); @@ -12975,7 +13470,7 @@ function InstanceAuthString(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13040,9 +13535,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InstanceAuthString.decode = function decode(reader, length, error) { + InstanceAuthString.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.InstanceAuthString(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13054,7 +13553,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13085,9 +13584,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InstanceAuthString.verify = function verify(message) { + InstanceAuthString.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.authString != null && message.hasOwnProperty("authString")) if (!$util.isString(message.authString)) return "authString: string expected"; @@ -13102,9 +13605,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.InstanceAuthString} InstanceAuthString */ - InstanceAuthString.fromObject = function fromObject(object) { + InstanceAuthString.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.InstanceAuthString) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.InstanceAuthString(); if (object.authString != null) message.authString = String(object.authString); @@ -13182,7 +13689,7 @@ function CreateInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13267,9 +13774,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateInstanceRequest.decode = function decode(reader, length, error) { + CreateInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.CreateInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13285,11 +13796,11 @@ break; } case 3: { - message.instance = $root.google.cloud.redis.v1beta1.Instance.decode(reader, reader.uint32()); + message.instance = $root.google.cloud.redis.v1beta1.Instance.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13320,9 +13831,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateInstanceRequest.verify = function verify(message) { + CreateInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -13330,7 +13845,7 @@ if (!$util.isString(message.instanceId)) return "instanceId: string expected"; if (message.instance != null && message.hasOwnProperty("instance")) { - var error = $root.google.cloud.redis.v1beta1.Instance.verify(message.instance); + var error = $root.google.cloud.redis.v1beta1.Instance.verify(message.instance, long + 1); if (error) return "instance." + error; } @@ -13345,9 +13860,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.CreateInstanceRequest} CreateInstanceRequest */ - CreateInstanceRequest.fromObject = function fromObject(object) { + CreateInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.CreateInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.CreateInstanceRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -13356,7 +13875,7 @@ if (object.instance != null) { if (typeof object.instance !== "object") throw TypeError(".google.cloud.redis.v1beta1.CreateInstanceRequest.instance: object expected"); - message.instance = $root.google.cloud.redis.v1beta1.Instance.fromObject(object.instance); + message.instance = $root.google.cloud.redis.v1beta1.Instance.fromObject(object.instance, long + 1); } return message; }; @@ -13438,7 +13957,7 @@ function UpdateInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13513,9 +14032,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateInstanceRequest.decode = function decode(reader, length, error) { + UpdateInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.UpdateInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13523,15 +14046,15 @@ break; switch (tag >>> 3) { case 1: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.instance = $root.google.cloud.redis.v1beta1.Instance.decode(reader, reader.uint32()); + message.instance = $root.google.cloud.redis.v1beta1.Instance.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13562,16 +14085,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateInstanceRequest.verify = function verify(message) { + UpdateInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } if (message.instance != null && message.hasOwnProperty("instance")) { - var error = $root.google.cloud.redis.v1beta1.Instance.verify(message.instance); + var error = $root.google.cloud.redis.v1beta1.Instance.verify(message.instance, long + 1); if (error) return "instance." + error; } @@ -13586,19 +14113,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.UpdateInstanceRequest} UpdateInstanceRequest */ - UpdateInstanceRequest.fromObject = function fromObject(object) { + UpdateInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.UpdateInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.UpdateInstanceRequest(); if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.redis.v1beta1.UpdateInstanceRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.instance != null) { if (typeof object.instance !== "object") throw TypeError(".google.cloud.redis.v1beta1.UpdateInstanceRequest.instance: object expected"); - message.instance = $root.google.cloud.redis.v1beta1.Instance.fromObject(object.instance); + message.instance = $root.google.cloud.redis.v1beta1.Instance.fromObject(object.instance, long + 1); } return message; }; @@ -13677,7 +14208,7 @@ function UpgradeInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13752,9 +14283,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpgradeInstanceRequest.decode = function decode(reader, length, error) { + UpgradeInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.UpgradeInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13770,7 +14305,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13801,9 +14336,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpgradeInstanceRequest.verify = function verify(message) { + UpgradeInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -13821,9 +14360,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.UpgradeInstanceRequest} UpgradeInstanceRequest */ - UpgradeInstanceRequest.fromObject = function fromObject(object) { + UpgradeInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.UpgradeInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.UpgradeInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -13905,7 +14448,7 @@ function DeleteInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13970,9 +14513,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteInstanceRequest.decode = function decode(reader, length, error) { + DeleteInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.DeleteInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13984,7 +14531,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14015,9 +14562,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteInstanceRequest.verify = function verify(message) { + DeleteInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -14032,9 +14583,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.DeleteInstanceRequest} DeleteInstanceRequest */ - DeleteInstanceRequest.fromObject = function fromObject(object) { + DeleteInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.DeleteInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.DeleteInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -14110,7 +14665,7 @@ function GcsSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14175,9 +14730,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsSource.decode = function decode(reader, length, error) { + GcsSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.GcsSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14189,7 +14748,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14220,9 +14779,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsSource.verify = function verify(message) { + GcsSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -14237,9 +14800,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.GcsSource} GcsSource */ - GcsSource.fromObject = function fromObject(object) { + GcsSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.GcsSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.GcsSource(); if (object.uri != null) message.uri = String(object.uri); @@ -14315,7 +14882,7 @@ function InputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14394,9 +14961,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InputConfig.decode = function decode(reader, length, error) { + InputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.InputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14404,11 +14975,11 @@ break; switch (tag >>> 3) { case 1: { - message.gcsSource = $root.google.cloud.redis.v1beta1.GcsSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.redis.v1beta1.GcsSource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14439,14 +15010,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InputConfig.verify = function verify(message) { + InputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsSource != null && message.hasOwnProperty("gcsSource")) { properties.source = 1; { - var error = $root.google.cloud.redis.v1beta1.GcsSource.verify(message.gcsSource); + var error = $root.google.cloud.redis.v1beta1.GcsSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -14462,14 +15037,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.InputConfig} InputConfig */ - InputConfig.fromObject = function fromObject(object) { + InputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.InputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.InputConfig(); if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.redis.v1beta1.InputConfig.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.redis.v1beta1.GcsSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.redis.v1beta1.GcsSource.fromObject(object.gcsSource, long + 1); } return message; }; @@ -14545,7 +15124,7 @@ function ImportInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14620,9 +15199,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportInstanceRequest.decode = function decode(reader, length, error) { + ImportInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.ImportInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14634,11 +15217,11 @@ break; } case 3: { - message.inputConfig = $root.google.cloud.redis.v1beta1.InputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.redis.v1beta1.InputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14669,14 +15252,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportInstanceRequest.verify = function verify(message) { + ImportInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.redis.v1beta1.InputConfig.verify(message.inputConfig); + var error = $root.google.cloud.redis.v1beta1.InputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } @@ -14691,16 +15278,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.ImportInstanceRequest} ImportInstanceRequest */ - ImportInstanceRequest.fromObject = function fromObject(object) { + ImportInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.ImportInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.ImportInstanceRequest(); if (object.name != null) message.name = String(object.name); if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.redis.v1beta1.ImportInstanceRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.redis.v1beta1.InputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.redis.v1beta1.InputConfig.fromObject(object.inputConfig, long + 1); } return message; }; @@ -14778,7 +15369,7 @@ function GcsDestination(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14843,9 +15434,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsDestination.decode = function decode(reader, length, error) { + GcsDestination.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.GcsDestination(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14857,7 +15452,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14888,9 +15483,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsDestination.verify = function verify(message) { + GcsDestination.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -14905,9 +15504,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.GcsDestination} GcsDestination */ - GcsDestination.fromObject = function fromObject(object) { + GcsDestination.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.GcsDestination) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.GcsDestination(); if (object.uri != null) message.uri = String(object.uri); @@ -14983,7 +15586,7 @@ function OutputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15062,9 +15665,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OutputConfig.decode = function decode(reader, length, error) { + OutputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.OutputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15072,11 +15679,11 @@ break; switch (tag >>> 3) { case 1: { - message.gcsDestination = $root.google.cloud.redis.v1beta1.GcsDestination.decode(reader, reader.uint32()); + message.gcsDestination = $root.google.cloud.redis.v1beta1.GcsDestination.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15107,14 +15714,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OutputConfig.verify = function verify(message) { + OutputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsDestination != null && message.hasOwnProperty("gcsDestination")) { properties.destination = 1; { - var error = $root.google.cloud.redis.v1beta1.GcsDestination.verify(message.gcsDestination); + var error = $root.google.cloud.redis.v1beta1.GcsDestination.verify(message.gcsDestination, long + 1); if (error) return "gcsDestination." + error; } @@ -15130,14 +15741,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.OutputConfig} OutputConfig */ - OutputConfig.fromObject = function fromObject(object) { + OutputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.OutputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.OutputConfig(); if (object.gcsDestination != null) { if (typeof object.gcsDestination !== "object") throw TypeError(".google.cloud.redis.v1beta1.OutputConfig.gcsDestination: object expected"); - message.gcsDestination = $root.google.cloud.redis.v1beta1.GcsDestination.fromObject(object.gcsDestination); + message.gcsDestination = $root.google.cloud.redis.v1beta1.GcsDestination.fromObject(object.gcsDestination, long + 1); } return message; }; @@ -15213,7 +15828,7 @@ function ExportInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15288,9 +15903,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportInstanceRequest.decode = function decode(reader, length, error) { + ExportInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.ExportInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15302,11 +15921,11 @@ break; } case 3: { - message.outputConfig = $root.google.cloud.redis.v1beta1.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.redis.v1beta1.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15337,14 +15956,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportInstanceRequest.verify = function verify(message) { + ExportInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.redis.v1beta1.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.redis.v1beta1.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -15359,16 +15982,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.ExportInstanceRequest} ExportInstanceRequest */ - ExportInstanceRequest.fromObject = function fromObject(object) { + ExportInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.ExportInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.ExportInstanceRequest(); if (object.name != null) message.name = String(object.name); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.redis.v1beta1.ExportInstanceRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.redis.v1beta1.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.redis.v1beta1.OutputConfig.fromObject(object.outputConfig, long + 1); } return message; }; @@ -15447,7 +16074,7 @@ function FailoverInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15522,9 +16149,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FailoverInstanceRequest.decode = function decode(reader, length, error) { + FailoverInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.FailoverInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15540,7 +16171,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15571,9 +16202,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FailoverInstanceRequest.verify = function verify(message) { + FailoverInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -15597,9 +16232,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.FailoverInstanceRequest} FailoverInstanceRequest */ - FailoverInstanceRequest.fromObject = function fromObject(object) { + FailoverInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.FailoverInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.FailoverInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -15716,7 +16355,7 @@ this.availableZones = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15784,9 +16423,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LocationMetadata.decode = function decode(reader, length, error) { + LocationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.LocationMetadata(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -15806,18 +16449,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.redis.v1beta1.ZoneMetadata.decode(reader, reader.uint32()); + value = $root.google.cloud.redis.v1beta1.ZoneMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.availableZones, key); message.availableZones[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15848,15 +16493,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LocationMetadata.verify = function verify(message) { + LocationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.availableZones != null && message.hasOwnProperty("availableZones")) { if (!$util.isObject(message.availableZones)) return "availableZones: object expected"; var key = Object.keys(message.availableZones); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.redis.v1beta1.ZoneMetadata.verify(message.availableZones[key[i]]); + var error = $root.google.cloud.redis.v1beta1.ZoneMetadata.verify(message.availableZones[key[i]], long + 1); if (error) return "availableZones." + error; } @@ -15872,18 +16521,24 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.LocationMetadata} LocationMetadata */ - LocationMetadata.fromObject = function fromObject(object) { + LocationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.LocationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.LocationMetadata(); if (object.availableZones) { if (typeof object.availableZones !== "object") throw TypeError(".google.cloud.redis.v1beta1.LocationMetadata.availableZones: object expected"); message.availableZones = {}; for (var keys = Object.keys(object.availableZones), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.availableZones, keys[i]); if (typeof object.availableZones[keys[i]] !== "object") throw TypeError(".google.cloud.redis.v1beta1.LocationMetadata.availableZones: object expected"); - message.availableZones[keys[i]] = $root.google.cloud.redis.v1beta1.ZoneMetadata.fromObject(object.availableZones[keys[i]]); + message.availableZones[keys[i]] = $root.google.cloud.redis.v1beta1.ZoneMetadata.fromObject(object.availableZones[keys[i]], long + 1); } } return message; @@ -15907,8 +16562,11 @@ var keys2; if (message.availableZones && (keys2 = Object.keys(message.availableZones)).length) { object.availableZones = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.availableZones, keys2[j]); object.availableZones[keys2[j]] = $root.google.cloud.redis.v1beta1.ZoneMetadata.toObject(message.availableZones[keys2[j]], options); + } } return object; }; @@ -15961,7 +16619,7 @@ function ZoneMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16016,9 +16674,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ZoneMetadata.decode = function decode(reader, length, error) { + ZoneMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.ZoneMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16026,7 +16688,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16057,9 +16719,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ZoneMetadata.verify = function verify(message) { + ZoneMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -16071,9 +16737,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.ZoneMetadata} ZoneMetadata */ - ZoneMetadata.fromObject = function fromObject(object) { + ZoneMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.ZoneMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.redis.v1beta1.ZoneMetadata(); }; @@ -16143,7 +16813,7 @@ function TlsCertificate(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16248,9 +16918,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TlsCertificate.decode = function decode(reader, length, error) { + TlsCertificate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.redis.v1beta1.TlsCertificate(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16266,11 +16940,11 @@ break; } case 3: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -16278,7 +16952,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16309,9 +16983,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TlsCertificate.verify = function verify(message) { + TlsCertificate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.serialNumber != null && message.hasOwnProperty("serialNumber")) if (!$util.isString(message.serialNumber)) return "serialNumber: string expected"; @@ -16319,12 +16997,12 @@ if (!$util.isString(message.cert)) return "cert: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -16342,9 +17020,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.redis.v1beta1.TlsCertificate} TlsCertificate */ - TlsCertificate.fromObject = function fromObject(object) { + TlsCertificate.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.redis.v1beta1.TlsCertificate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.redis.v1beta1.TlsCertificate(); if (object.serialNumber != null) message.serialNumber = String(object.serialNumber); @@ -16353,12 +17035,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.TlsCertificate.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.redis.v1beta1.TlsCertificate.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.sha1Fingerprint != null) message.sha1Fingerprint = String(object.sha1Fingerprint); @@ -16467,7 +17149,7 @@ this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16543,9 +17225,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length, error) { + Http.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16555,7 +17241,7 @@ case 1: { if (!(message.rules && message.rules.length)) message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -16563,7 +17249,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16594,14 +17280,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + Http.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rules != null && message.hasOwnProperty("rules")) { if (!Array.isArray(message.rules)) return "rules: array expected"; for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); + var error = $root.google.api.HttpRule.verify(message.rules[i], long + 1); if (error) return "rules." + error; } @@ -16620,9 +17310,13 @@ * @param {Object.} object Plain object * @returns {google.api.Http} Http */ - Http.fromObject = function fromObject(object) { + Http.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Http) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Http(); if (object.rules) { if (!Array.isArray(object.rules)) @@ -16631,7 +17325,7 @@ for (var i = 0; i < object.rules.length; ++i) { if (typeof object.rules[i] !== "object") throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i], long + 1); } } if (object.fullyDecodeReservedExpansion != null) @@ -16725,7 +17419,7 @@ this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16895,9 +17589,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length, error) { + HttpRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16929,7 +17627,7 @@ break; } case 8: { - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -16943,11 +17641,11 @@ case 11: { if (!(message.additionalBindings && message.additionalBindings.length)) message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16978,9 +17676,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpRule.verify = function verify(message) { + HttpRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) @@ -17023,7 +17725,7 @@ return "pattern: multiple values"; properties.pattern = 1; { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); + var error = $root.google.api.CustomHttpPattern.verify(message.custom, long + 1); if (error) return "custom." + error; } @@ -17038,7 +17740,7 @@ if (!Array.isArray(message.additionalBindings)) return "additionalBindings: array expected"; for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i], long + 1); if (error) return "additionalBindings." + error; } @@ -17054,9 +17756,13 @@ * @param {Object.} object Plain object * @returns {google.api.HttpRule} HttpRule */ - HttpRule.fromObject = function fromObject(object) { + HttpRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.HttpRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.HttpRule(); if (object.selector != null) message.selector = String(object.selector); @@ -17073,7 +17779,7 @@ if (object.custom != null) { if (typeof object.custom !== "object") throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom, long + 1); } if (object.body != null) message.body = String(object.body); @@ -17086,7 +17792,7 @@ for (var i = 0; i < object.additionalBindings.length; ++i) { if (typeof object.additionalBindings[i] !== "object") throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i], long + 1); } } return message; @@ -17206,7 +17912,7 @@ function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17281,9 +17987,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length, error) { + CustomHttpPattern.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17299,7 +18009,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17330,9 +18040,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) if (!$util.isString(message.kind)) return "kind: string expected"; @@ -17350,9 +18064,13 @@ * @param {Object.} object Plain object * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - CustomHttpPattern.fromObject = function fromObject(object) { + CustomHttpPattern.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CustomHttpPattern) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CustomHttpPattern(); if (object.kind != null) message.kind = String(object.kind); @@ -17437,7 +18155,7 @@ this.destinations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17526,9 +18244,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CommonLanguageSettings.decode = function decode(reader, length, error) { + CommonLanguageSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CommonLanguageSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17551,11 +18273,11 @@ break; } case 3: { - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32()); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17586,9 +18308,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CommonLanguageSettings.verify = function verify(message) { + CommonLanguageSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.referenceDocsUri != null && message.hasOwnProperty("referenceDocsUri")) if (!$util.isString(message.referenceDocsUri)) return "referenceDocsUri: string expected"; @@ -17606,7 +18332,7 @@ } } if (message.selectiveGapicGeneration != null && message.hasOwnProperty("selectiveGapicGeneration")) { - var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration); + var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration, long + 1); if (error) return "selectiveGapicGeneration." + error; } @@ -17621,9 +18347,13 @@ * @param {Object.} object Plain object * @returns {google.api.CommonLanguageSettings} CommonLanguageSettings */ - CommonLanguageSettings.fromObject = function fromObject(object) { + CommonLanguageSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CommonLanguageSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CommonLanguageSettings(); if (object.referenceDocsUri != null) message.referenceDocsUri = String(object.referenceDocsUri); @@ -17655,7 +18385,7 @@ if (object.selectiveGapicGeneration != null) { if (typeof object.selectiveGapicGeneration !== "object") throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected"); - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration, long + 1); } return message; }; @@ -17750,7 +18480,7 @@ function ClientLibrarySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17915,9 +18645,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClientLibrarySettings.decode = function decode(reader, length, error) { + ClientLibrarySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ClientLibrarySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17937,39 +18671,39 @@ break; } case 21: { - message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32()); + message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32()); + message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { - message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32()); + message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32()); + message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32()); + message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { - message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32()); + message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32()); + message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32()); + message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18000,9 +18734,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClientLibrarySettings.verify = function verify(message) { + ClientLibrarySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isString(message.version)) return "version: string expected"; @@ -18024,42 +18762,42 @@ if (typeof message.restNumericEnums !== "boolean") return "restNumericEnums: boolean expected"; if (message.javaSettings != null && message.hasOwnProperty("javaSettings")) { - var error = $root.google.api.JavaSettings.verify(message.javaSettings); + var error = $root.google.api.JavaSettings.verify(message.javaSettings, long + 1); if (error) return "javaSettings." + error; } if (message.cppSettings != null && message.hasOwnProperty("cppSettings")) { - var error = $root.google.api.CppSettings.verify(message.cppSettings); + var error = $root.google.api.CppSettings.verify(message.cppSettings, long + 1); if (error) return "cppSettings." + error; } if (message.phpSettings != null && message.hasOwnProperty("phpSettings")) { - var error = $root.google.api.PhpSettings.verify(message.phpSettings); + var error = $root.google.api.PhpSettings.verify(message.phpSettings, long + 1); if (error) return "phpSettings." + error; } if (message.pythonSettings != null && message.hasOwnProperty("pythonSettings")) { - var error = $root.google.api.PythonSettings.verify(message.pythonSettings); + var error = $root.google.api.PythonSettings.verify(message.pythonSettings, long + 1); if (error) return "pythonSettings." + error; } if (message.nodeSettings != null && message.hasOwnProperty("nodeSettings")) { - var error = $root.google.api.NodeSettings.verify(message.nodeSettings); + var error = $root.google.api.NodeSettings.verify(message.nodeSettings, long + 1); if (error) return "nodeSettings." + error; } if (message.dotnetSettings != null && message.hasOwnProperty("dotnetSettings")) { - var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings); + var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings, long + 1); if (error) return "dotnetSettings." + error; } if (message.rubySettings != null && message.hasOwnProperty("rubySettings")) { - var error = $root.google.api.RubySettings.verify(message.rubySettings); + var error = $root.google.api.RubySettings.verify(message.rubySettings, long + 1); if (error) return "rubySettings." + error; } if (message.goSettings != null && message.hasOwnProperty("goSettings")) { - var error = $root.google.api.GoSettings.verify(message.goSettings); + var error = $root.google.api.GoSettings.verify(message.goSettings, long + 1); if (error) return "goSettings." + error; } @@ -18074,9 +18812,13 @@ * @param {Object.} object Plain object * @returns {google.api.ClientLibrarySettings} ClientLibrarySettings */ - ClientLibrarySettings.fromObject = function fromObject(object) { + ClientLibrarySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ClientLibrarySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ClientLibrarySettings(); if (object.version != null) message.version = String(object.version); @@ -18125,42 +18867,42 @@ if (object.javaSettings != null) { if (typeof object.javaSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected"); - message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings); + message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings, long + 1); } if (object.cppSettings != null) { if (typeof object.cppSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected"); - message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings); + message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings, long + 1); } if (object.phpSettings != null) { if (typeof object.phpSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected"); - message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings); + message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings, long + 1); } if (object.pythonSettings != null) { if (typeof object.pythonSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected"); - message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings); + message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings, long + 1); } if (object.nodeSettings != null) { if (typeof object.nodeSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected"); - message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings); + message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings, long + 1); } if (object.dotnetSettings != null) { if (typeof object.dotnetSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected"); - message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings); + message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings, long + 1); } if (object.rubySettings != null) { if (typeof object.rubySettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected"); - message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings); + message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings, long + 1); } if (object.goSettings != null) { if (typeof object.goSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected"); - message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings); + message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings, long + 1); } return message; }; @@ -18278,7 +19020,7 @@ this.librarySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18446,9 +19188,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Publishing.decode = function decode(reader, length, error) { + Publishing.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Publishing(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18458,7 +19204,7 @@ case 2: { if (!(message.methodSettings && message.methodSettings.length)) message.methodSettings = []; - message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32())); + message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 101: { @@ -18494,7 +19240,7 @@ case 109: { if (!(message.librarySettings && message.librarySettings.length)) message.librarySettings = []; - message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32())); + message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 110: { @@ -18506,7 +19252,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18537,14 +19283,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Publishing.verify = function verify(message) { + Publishing.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methodSettings != null && message.hasOwnProperty("methodSettings")) { if (!Array.isArray(message.methodSettings)) return "methodSettings: array expected"; for (var i = 0; i < message.methodSettings.length; ++i) { - var error = $root.google.api.MethodSettings.verify(message.methodSettings[i]); + var error = $root.google.api.MethodSettings.verify(message.methodSettings[i], long + 1); if (error) return "methodSettings." + error; } @@ -18589,7 +19339,7 @@ if (!Array.isArray(message.librarySettings)) return "librarySettings: array expected"; for (var i = 0; i < message.librarySettings.length; ++i) { - var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i]); + var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i], long + 1); if (error) return "librarySettings." + error; } @@ -18611,9 +19361,13 @@ * @param {Object.} object Plain object * @returns {google.api.Publishing} Publishing */ - Publishing.fromObject = function fromObject(object) { + Publishing.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Publishing) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Publishing(); if (object.methodSettings) { if (!Array.isArray(object.methodSettings)) @@ -18622,7 +19376,7 @@ for (var i = 0; i < object.methodSettings.length; ++i) { if (typeof object.methodSettings[i] !== "object") throw TypeError(".google.api.Publishing.methodSettings: object expected"); - message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i]); + message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i], long + 1); } } if (object.newIssueUri != null) @@ -18689,7 +19443,7 @@ for (var i = 0; i < object.librarySettings.length; ++i) { if (typeof object.librarySettings[i] !== "object") throw TypeError(".google.api.Publishing.librarySettings: object expected"); - message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]); + message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i], long + 1); } } if (object.protoReferenceDocumentationUri != null) @@ -18813,7 +19567,7 @@ this.serviceClassNames = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18899,9 +19653,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - JavaSettings.decode = function decode(reader, length, error) { + JavaSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.JavaSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -18928,19 +19686,21 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.serviceClassNames, key); message.serviceClassNames[key] = value; break; } case 3: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18971,9 +19731,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - JavaSettings.verify = function verify(message) { + JavaSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.libraryPackage != null && message.hasOwnProperty("libraryPackage")) if (!$util.isString(message.libraryPackage)) return "libraryPackage: string expected"; @@ -18986,7 +19750,7 @@ return "serviceClassNames: string{k:string} expected"; } if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -19001,9 +19765,13 @@ * @param {Object.} object Plain object * @returns {google.api.JavaSettings} JavaSettings */ - JavaSettings.fromObject = function fromObject(object) { + JavaSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.JavaSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.JavaSettings(); if (object.libraryPackage != null) message.libraryPackage = String(object.libraryPackage); @@ -19011,13 +19779,16 @@ if (typeof object.serviceClassNames !== "object") throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected"); message.serviceClassNames = {}; - for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.serviceClassNames, keys[i]); message.serviceClassNames[keys[i]] = String(object.serviceClassNames[keys[i]]); + } } if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.JavaSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -19046,8 +19817,11 @@ var keys2; if (message.serviceClassNames && (keys2 = Object.keys(message.serviceClassNames)).length) { object.serviceClassNames = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.serviceClassNames, keys2[j]); object.serviceClassNames[keys2[j]] = message.serviceClassNames[keys2[j]]; + } } if (message.common != null && message.hasOwnProperty("common")) object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options); @@ -19103,7 +19877,7 @@ function CppSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19168,9 +19942,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CppSettings.decode = function decode(reader, length, error) { + CppSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CppSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19178,11 +19956,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19213,11 +19991,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CppSettings.verify = function verify(message) { + CppSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -19232,14 +20014,18 @@ * @param {Object.} object Plain object * @returns {google.api.CppSettings} CppSettings */ - CppSettings.fromObject = function fromObject(object) { + CppSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CppSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CppSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.CppSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -19313,7 +20099,7 @@ function PhpSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19378,9 +20164,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PhpSettings.decode = function decode(reader, length, error) { + PhpSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PhpSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19388,11 +20178,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19423,11 +20213,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PhpSettings.verify = function verify(message) { + PhpSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -19442,14 +20236,18 @@ * @param {Object.} object Plain object * @returns {google.api.PhpSettings} PhpSettings */ - PhpSettings.fromObject = function fromObject(object) { + PhpSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PhpSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PhpSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PhpSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -19524,7 +20322,7 @@ function PythonSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19599,9 +20397,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PythonSettings.decode = function decode(reader, length, error) { + PythonSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19609,15 +20411,15 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32()); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19648,16 +20450,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PythonSettings.verify = function verify(message) { + PythonSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } if (message.experimentalFeatures != null && message.hasOwnProperty("experimentalFeatures")) { - var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures); + var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures, long + 1); if (error) return "experimentalFeatures." + error; } @@ -19672,19 +20478,23 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings} PythonSettings */ - PythonSettings.fromObject = function fromObject(object) { + PythonSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PythonSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.experimentalFeatures != null) { if (typeof object.experimentalFeatures !== "object") throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected"); - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures, long + 1); } return message; }; @@ -19761,7 +20571,7 @@ function ExperimentalFeatures(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19846,9 +20656,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentalFeatures.decode = function decode(reader, length, error) { + ExperimentalFeatures.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings.ExperimentalFeatures(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19868,7 +20682,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19899,9 +20713,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentalFeatures.verify = function verify(message) { + ExperimentalFeatures.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.restAsyncIoEnabled != null && message.hasOwnProperty("restAsyncIoEnabled")) if (typeof message.restAsyncIoEnabled !== "boolean") return "restAsyncIoEnabled: boolean expected"; @@ -19922,9 +20740,13 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings.ExperimentalFeatures} ExperimentalFeatures */ - ExperimentalFeatures.fromObject = function fromObject(object) { + ExperimentalFeatures.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings.ExperimentalFeatures) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings.ExperimentalFeatures(); if (object.restAsyncIoEnabled != null) message.restAsyncIoEnabled = Boolean(object.restAsyncIoEnabled); @@ -20014,7 +20836,7 @@ function NodeSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20079,9 +20901,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeSettings.decode = function decode(reader, length, error) { + NodeSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.NodeSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20089,11 +20915,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20124,11 +20950,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeSettings.verify = function verify(message) { + NodeSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -20143,14 +20973,18 @@ * @param {Object.} object Plain object * @returns {google.api.NodeSettings} NodeSettings */ - NodeSettings.fromObject = function fromObject(object) { + NodeSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.NodeSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.NodeSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.NodeSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -20234,7 +21068,7 @@ this.handwrittenSignatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20354,9 +21188,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DotnetSettings.decode = function decode(reader, length, error) { + DotnetSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -20364,7 +21202,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -20383,10 +21221,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } @@ -20406,10 +21246,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedResources, key); message.renamedResources[key] = value; break; } @@ -20432,7 +21274,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20463,11 +21305,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DotnetSettings.verify = function verify(message) { + DotnetSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -20519,28 +21365,38 @@ * @param {Object.} object Plain object * @returns {google.api.DotnetSettings} DotnetSettings */ - DotnetSettings.fromObject = function fromObject(object) { + DotnetSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.DotnetSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.DotnetSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.DotnetSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.DotnetSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } if (object.renamedResources) { if (typeof object.renamedResources !== "object") throw TypeError(".google.api.DotnetSettings.renamedResources: object expected"); message.renamedResources = {}; - for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedResources, keys[i]); message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]); + } } if (object.ignoredResources) { if (!Array.isArray(object.ignoredResources)) @@ -20595,13 +21451,19 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) { object.renamedResources = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedResources, keys2[j]); object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]]; + } } if (message.ignoredResources && message.ignoredResources.length) { object.ignoredResources = []; @@ -20670,7 +21532,7 @@ function RubySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20735,9 +21597,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RubySettings.decode = function decode(reader, length, error) { + RubySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RubySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20745,11 +21611,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20780,11 +21646,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RubySettings.verify = function verify(message) { + RubySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -20799,14 +21669,18 @@ * @param {Object.} object Plain object * @returns {google.api.RubySettings} RubySettings */ - RubySettings.fromObject = function fromObject(object) { + RubySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RubySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RubySettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.RubySettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -20882,7 +21756,7 @@ this.renamedServices = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20958,9 +21832,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoSettings.decode = function decode(reader, length, error) { + GoSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.GoSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -20968,7 +21846,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -20987,15 +21865,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21026,11 +21906,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoSettings.verify = function verify(message) { + GoSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -21053,21 +21937,28 @@ * @param {Object.} object Plain object * @returns {google.api.GoSettings} GoSettings */ - GoSettings.fromObject = function fromObject(object) { + GoSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.GoSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.GoSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.GoSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.GoSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } return message; }; @@ -21094,8 +21985,11 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } return object; }; @@ -21152,7 +22046,7 @@ this.autoPopulatedFields = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21238,9 +22132,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodSettings.decode = function decode(reader, length, error) { + MethodSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21252,7 +22150,7 @@ break; } case 2: { - message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32()); + message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -21262,7 +22160,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21293,14 +22191,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodSettings.verify = function verify(message) { + MethodSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) return "selector: string expected"; if (message.longRunning != null && message.hasOwnProperty("longRunning")) { - var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning); + var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning, long + 1); if (error) return "longRunning." + error; } @@ -21322,16 +22224,20 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings} MethodSettings */ - MethodSettings.fromObject = function fromObject(object) { + MethodSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings(); if (object.selector != null) message.selector = String(object.selector); if (object.longRunning != null) { if (typeof object.longRunning !== "object") throw TypeError(".google.api.MethodSettings.longRunning: object expected"); - message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning); + message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning, long + 1); } if (object.autoPopulatedFields) { if (!Array.isArray(object.autoPopulatedFields)) @@ -21423,7 +22329,7 @@ function LongRunning(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21518,9 +22424,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LongRunning.decode = function decode(reader, length, error) { + LongRunning.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings.LongRunning(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21528,7 +22438,7 @@ break; switch (tag >>> 3) { case 1: { - message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -21536,15 +22446,15 @@ break; } case 3: { - message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21575,11 +22485,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LongRunning.verify = function verify(message) { + LongRunning.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.initialPollDelay != null && message.hasOwnProperty("initialPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.initialPollDelay); + var error = $root.google.protobuf.Duration.verify(message.initialPollDelay, long + 1); if (error) return "initialPollDelay." + error; } @@ -21587,12 +22501,12 @@ if (typeof message.pollDelayMultiplier !== "number") return "pollDelayMultiplier: number expected"; if (message.maxPollDelay != null && message.hasOwnProperty("maxPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.maxPollDelay); + var error = $root.google.protobuf.Duration.verify(message.maxPollDelay, long + 1); if (error) return "maxPollDelay." + error; } if (message.totalPollTimeout != null && message.hasOwnProperty("totalPollTimeout")) { - var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout); + var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout, long + 1); if (error) return "totalPollTimeout." + error; } @@ -21607,26 +22521,30 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings.LongRunning} LongRunning */ - LongRunning.fromObject = function fromObject(object) { + LongRunning.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings.LongRunning) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings.LongRunning(); if (object.initialPollDelay != null) { if (typeof object.initialPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected"); - message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay); + message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay, long + 1); } if (object.pollDelayMultiplier != null) message.pollDelayMultiplier = Number(object.pollDelayMultiplier); if (object.maxPollDelay != null) { if (typeof object.maxPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected"); - message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay); + message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay, long + 1); } if (object.totalPollTimeout != null) { if (typeof object.totalPollTimeout !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected"); - message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout); + message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout, long + 1); } return message; }; @@ -21757,7 +22675,7 @@ this.methods = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21833,9 +22751,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectiveGapicGeneration.decode = function decode(reader, length, error) { + SelectiveGapicGeneration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.SelectiveGapicGeneration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21853,7 +22775,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21884,9 +22806,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectiveGapicGeneration.verify = function verify(message) { + SelectiveGapicGeneration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methods != null && message.hasOwnProperty("methods")) { if (!Array.isArray(message.methods)) return "methods: array expected"; @@ -21908,9 +22834,13 @@ * @param {Object.} object Plain object * @returns {google.api.SelectiveGapicGeneration} SelectiveGapicGeneration */ - SelectiveGapicGeneration.fromObject = function fromObject(object) { + SelectiveGapicGeneration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.SelectiveGapicGeneration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.SelectiveGapicGeneration(); if (object.methods) { if (!Array.isArray(object.methods)) @@ -22062,7 +22992,7 @@ this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22192,9 +23122,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length, error) { + ResourceDescriptor.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22239,7 +23173,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22270,9 +23204,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -22324,9 +23262,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - ResourceDescriptor.fromObject = function fromObject(object) { + ResourceDescriptor.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceDescriptor) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceDescriptor(); if (object.type != null) message.type = String(object.type); @@ -22514,7 +23456,7 @@ function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22589,9 +23531,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length, error) { + ResourceReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22607,7 +23553,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22638,9 +23584,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + ResourceReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -22658,9 +23608,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceReference} ResourceReference */ - ResourceReference.fromObject = function fromObject(object) { + ResourceReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceReference(); if (object.type != null) message.type = String(object.type); @@ -22755,7 +23709,7 @@ this.file = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22821,9 +23775,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorSet.decode = function decode(reader, length, error) { + FileDescriptorSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22833,11 +23791,11 @@ case 1: { if (!(message.file && message.file.length)) message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22868,14 +23826,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorSet.verify = function verify(message) { + FileDescriptorSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.file != null && message.hasOwnProperty("file")) { if (!Array.isArray(message.file)) return "file: array expected"; for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i], long + 1); if (error) return "file." + error; } @@ -22891,9 +23853,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet */ - FileDescriptorSet.fromObject = function fromObject(object) { + FileDescriptorSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorSet(); if (object.file) { if (!Array.isArray(object.file)) @@ -22902,7 +23868,7 @@ for (var i = 0; i < object.file.length; ++i) { if (typeof object.file[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i], long + 1); } } return message; @@ -23035,7 +24001,7 @@ this.extension = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23238,9 +24204,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorProto.decode = function decode(reader, length, error) { + FileDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23292,33 +24262,33 @@ case 4: { if (!(message.messageType && message.messageType.length)) message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.service && message.service.length)) message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -23330,7 +24300,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23361,9 +24331,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorProto.verify = function verify(message) { + FileDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -23402,7 +24376,7 @@ if (!Array.isArray(message.messageType)) return "messageType: array expected"; for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i], long + 1); if (error) return "messageType." + error; } @@ -23411,7 +24385,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -23420,7 +24394,7 @@ if (!Array.isArray(message.service)) return "service: array expected"; for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i], long + 1); if (error) return "service." + error; } @@ -23429,18 +24403,18 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); + var error = $root.google.protobuf.FileOptions.verify(message.options, long + 1); if (error) return "options." + error; } if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo, long + 1); if (error) return "sourceCodeInfo." + error; } @@ -23476,9 +24450,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto */ - FileDescriptorProto.fromObject = function fromObject(object) { + FileDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -23519,7 +24497,7 @@ for (var i = 0; i < object.messageType.length; ++i) { if (typeof object.messageType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i], long + 1); } } if (object.enumType) { @@ -23529,7 +24507,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.service) { @@ -23539,7 +24517,7 @@ for (var i = 0; i < object.service.length; ++i) { if (typeof object.service[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i], long + 1); } } if (object.extension) { @@ -23549,18 +24527,18 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options, long + 1); } if (object.sourceCodeInfo != null) { if (typeof object.sourceCodeInfo !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo, long + 1); } if (object.syntax != null) message.syntax = String(object.syntax); @@ -23776,7 +24754,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23949,9 +24927,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DescriptorProto.decode = function decode(reader, length, error) { + DescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23965,47 +24947,47 @@ case 2: { if (!(message.field && message.field.length)) message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.nestedType && message.nestedType.length)) message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.extensionRange && message.extensionRange.length)) message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { if (!(message.oneofDecl && message.oneofDecl.length)) message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 10: { @@ -24019,7 +25001,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24050,9 +25032,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DescriptorProto.verify = function verify(message) { + DescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -24060,7 +25046,7 @@ if (!Array.isArray(message.field)) return "field: array expected"; for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i], long + 1); if (error) return "field." + error; } @@ -24069,7 +25055,7 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } @@ -24078,7 +25064,7 @@ if (!Array.isArray(message.nestedType)) return "nestedType: array expected"; for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i], long + 1); if (error) return "nestedType." + error; } @@ -24087,7 +25073,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -24096,7 +25082,7 @@ if (!Array.isArray(message.extensionRange)) return "extensionRange: array expected"; for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i], long + 1); if (error) return "extensionRange." + error; } @@ -24105,13 +25091,13 @@ if (!Array.isArray(message.oneofDecl)) return "oneofDecl: array expected"; for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i], long + 1); if (error) return "oneofDecl." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); + var error = $root.google.protobuf.MessageOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -24119,7 +25105,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -24151,9 +25137,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto} DescriptorProto */ - DescriptorProto.fromObject = function fromObject(object) { + DescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -24164,7 +25154,7 @@ for (var i = 0; i < object.field.length; ++i) { if (typeof object.field[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i], long + 1); } } if (object.extension) { @@ -24174,7 +25164,7 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.nestedType) { @@ -24184,7 +25174,7 @@ for (var i = 0; i < object.nestedType.length; ++i) { if (typeof object.nestedType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i], long + 1); } } if (object.enumType) { @@ -24194,7 +25184,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.extensionRange) { @@ -24204,7 +25194,7 @@ for (var i = 0; i < object.extensionRange.length; ++i) { if (typeof object.extensionRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i], long + 1); } } if (object.oneofDecl) { @@ -24214,13 +25204,13 @@ for (var i = 0; i < object.oneofDecl.length; ++i) { if (typeof object.oneofDecl[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -24229,7 +25219,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -24387,7 +25377,7 @@ function ExtensionRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24472,9 +25462,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRange.decode = function decode(reader, length, error) { + ExtensionRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24490,11 +25484,11 @@ break; } case 3: { - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24525,9 +25519,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRange.verify = function verify(message) { + ExtensionRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -24535,7 +25533,7 @@ if (!$util.isInteger(message.end)) return "end: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -24550,9 +25548,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange */ - ExtensionRange.fromObject = function fromObject(object) { + ExtensionRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); if (object.start != null) message.start = object.start | 0; @@ -24561,7 +25563,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options, long + 1); } return message; }; @@ -24643,7 +25645,7 @@ function ReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24718,9 +25720,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReservedRange.decode = function decode(reader, length, error) { + ReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24736,7 +25742,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24767,9 +25773,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReservedRange.verify = function verify(message) { + ReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -24787,9 +25797,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange */ - ReservedRange.fromObject = function fromObject(object) { + ReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -24879,7 +25893,7 @@ this.declaration = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24976,9 +25990,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRangeOptions.decode = function decode(reader, length, error) { + ExtensionRangeOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24988,17 +26006,17 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.declaration && message.declaration.length)) message.declaration = []; - message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32())); + message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -25006,7 +26024,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25037,14 +26055,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRangeOptions.verify = function verify(message) { + ExtensionRangeOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -25053,13 +26075,13 @@ if (!Array.isArray(message.declaration)) return "declaration: array expected"; for (var i = 0; i < message.declaration.length; ++i) { - var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]); + var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i], long + 1); if (error) return "declaration." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -25082,9 +26104,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions */ - ExtensionRangeOptions.fromObject = function fromObject(object) { + ExtensionRangeOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions(); if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -25093,7 +26119,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object.declaration) { @@ -25103,13 +26129,13 @@ for (var i = 0; i < object.declaration.length; ++i) { if (typeof object.declaration[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected"); - message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]); + message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } switch (object.verification) { case "DECLARATION": @@ -25218,7 +26244,7 @@ function Declaration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25323,9 +26349,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Declaration.decode = function decode(reader, length, error) { + Declaration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25353,7 +26383,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25384,9 +26414,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Declaration.verify = function verify(message) { + Declaration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.number != null && message.hasOwnProperty("number")) if (!$util.isInteger(message.number)) return "number: integer expected"; @@ -25413,9 +26447,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration */ - Declaration.fromObject = function fromObject(object) { + Declaration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); if (object.number != null) message.number = object.number | 0; @@ -25539,7 +26577,7 @@ function FieldDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25704,9 +26742,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldDescriptorProto.decode = function decode(reader, length, error) { + FieldDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25750,7 +26792,7 @@ break; } case 8: { - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -25758,7 +26800,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25789,9 +26831,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldDescriptorProto.verify = function verify(message) { + FieldDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -25847,7 +26893,7 @@ if (!$util.isString(message.jsonName)) return "jsonName: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); + var error = $root.google.protobuf.FieldOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -25865,9 +26911,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto */ - FieldDescriptorProto.fromObject = function fromObject(object) { + FieldDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -25986,7 +27036,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options, long + 1); } if (object.proto3Optional != null) message.proto3Optional = Boolean(object.proto3Optional); @@ -26156,7 +27206,7 @@ function OneofDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26231,9 +27281,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofDescriptorProto.decode = function decode(reader, length, error) { + OneofDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26245,11 +27299,11 @@ break; } case 2: { - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26280,14 +27334,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofDescriptorProto.verify = function verify(message) { + OneofDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); + var error = $root.google.protobuf.OneofOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -26302,16 +27360,20 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto */ - OneofDescriptorProto.fromObject = function fromObject(object) { + OneofDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofDescriptorProto(); if (object.name != null) message.name = String(object.name); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options, long + 1); } return message; }; @@ -26397,7 +27459,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26515,9 +27577,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumDescriptorProto.decode = function decode(reader, length, error) { + EnumDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26531,17 +27597,17 @@ case 2: { if (!(message.value && message.value.length)) message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -26555,7 +27621,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26586,9 +27652,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumDescriptorProto.verify = function verify(message) { + EnumDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -26596,13 +27666,13 @@ if (!Array.isArray(message.value)) return "value: array expected"; for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i], long + 1); if (error) return "value." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); + var error = $root.google.protobuf.EnumOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -26610,7 +27680,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -26642,9 +27712,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto */ - EnumDescriptorProto.fromObject = function fromObject(object) { + EnumDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -26655,13 +27729,13 @@ for (var i = 0; i < object.value.length; ++i) { if (typeof object.value[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -26670,7 +27744,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -26797,7 +27871,7 @@ function EnumReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26872,9 +27946,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumReservedRange.decode = function decode(reader, length, error) { + EnumReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26890,7 +27968,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26921,9 +27999,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumReservedRange.verify = function verify(message) { + EnumReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -26941,9 +28023,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange */ - EnumReservedRange.fromObject = function fromObject(object) { + EnumReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -27030,7 +28116,7 @@ function EnumValueDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27115,9 +28201,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueDescriptorProto.decode = function decode(reader, length, error) { + EnumValueDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27133,11 +28223,11 @@ break; } case 3: { - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27168,9 +28258,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueDescriptorProto.verify = function verify(message) { + EnumValueDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -27178,7 +28272,7 @@ if (!$util.isInteger(message.number)) return "number: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + var error = $root.google.protobuf.EnumValueOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -27193,9 +28287,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { + EnumValueDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -27204,7 +28302,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options, long + 1); } return message; }; @@ -27288,7 +28386,7 @@ this.method = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27374,9 +28472,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceDescriptorProto.decode = function decode(reader, length, error) { + ServiceDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27390,15 +28492,15 @@ case 2: { if (!(message.method && message.method.length)) message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27429,9 +28531,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceDescriptorProto.verify = function verify(message) { + ServiceDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -27439,13 +28545,13 @@ if (!Array.isArray(message.method)) return "method: array expected"; for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i], long + 1); if (error) return "method." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); + var error = $root.google.protobuf.ServiceOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -27460,9 +28566,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto */ - ServiceDescriptorProto.fromObject = function fromObject(object) { + ServiceDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -27473,13 +28583,13 @@ for (var i = 0; i < object.method.length; ++i) { if (typeof object.method[i] !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options, long + 1); } return message; }; @@ -27569,7 +28679,7 @@ function MethodDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27684,9 +28794,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodDescriptorProto.decode = function decode(reader, length, error) { + MethodDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27706,7 +28820,7 @@ break; } case 4: { - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -27718,7 +28832,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27749,9 +28863,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodDescriptorProto.verify = function verify(message) { + MethodDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -27762,7 +28880,7 @@ if (!$util.isString(message.outputType)) return "outputType: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); + var error = $root.google.protobuf.MethodOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -27783,9 +28901,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto */ - MethodDescriptorProto.fromObject = function fromObject(object) { + MethodDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -27796,7 +28918,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options, long + 1); } if (object.clientStreaming != null) message.clientStreaming = Boolean(object.clientStreaming); @@ -27913,7 +29035,7 @@ this[".google.api.resourceDefinition"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28190,9 +29312,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileOptions.decode = function decode(reader, length, error) { + FileOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28276,23 +29402,23 @@ break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28323,9 +29449,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileOptions.verify = function verify(message) { + FileOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) if (!$util.isString(message.javaPackage)) return "javaPackage: string expected"; @@ -28390,7 +29520,7 @@ if (!$util.isString(message.rubyPackage)) return "rubyPackage: string expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -28398,7 +29528,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -28407,7 +29537,7 @@ if (!Array.isArray(message[".google.api.resourceDefinition"])) return ".google.api.resourceDefinition: array expected"; for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i], long + 1); if (error) return ".google.api.resourceDefinition." + error; } @@ -28423,9 +29553,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileOptions} FileOptions */ - FileOptions.fromObject = function fromObject(object) { + FileOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileOptions(); if (object.javaPackage != null) message.javaPackage = String(object.javaPackage); @@ -28486,7 +29620,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FileOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -28495,7 +29629,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resourceDefinition"]) { @@ -28505,7 +29639,7 @@ for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { if (typeof object[".google.api.resourceDefinition"][i] !== "object") throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i], long + 1); } } return message; @@ -28676,7 +29810,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28812,9 +29946,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageOptions.decode = function decode(reader, length, error) { + MessageOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28842,21 +29980,21 @@ break; } case 12: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28887,9 +30025,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MessageOptions.verify = function verify(message) { + MessageOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) if (typeof message.messageSetWireFormat !== "boolean") return "messageSetWireFormat: boolean expected"; @@ -28906,7 +30048,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -28914,13 +30056,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"], long + 1); if (error) return ".google.api.resource." + error; } @@ -28935,9 +30077,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MessageOptions} MessageOptions */ - MessageOptions.fromObject = function fromObject(object) { + MessageOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MessageOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MessageOptions(); if (object.messageSetWireFormat != null) message.messageSetWireFormat = Boolean(object.messageSetWireFormat); @@ -28952,7 +30098,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MessageOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -28961,13 +30107,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resource"] != null) { if (typeof object[".google.api.resource"] !== "object") throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"], long + 1); } return message; }; @@ -29086,7 +30232,7 @@ this[".google.api.fieldBehavior"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29305,9 +30451,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decode = function decode(reader, length, error) { + FieldOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29364,21 +30514,21 @@ case 20: { if (!(message.editionDefaults && message.editionDefaults.length)) message.editionDefaults = []; - message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32())); + message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1052: { @@ -29393,11 +30543,11 @@ break; } case 1055: { - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29428,9 +30578,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldOptions.verify = function verify(message) { + FieldOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ctype != null && message.hasOwnProperty("ctype")) switch (message.ctype) { default: @@ -29500,18 +30654,18 @@ if (!Array.isArray(message.editionDefaults)) return "editionDefaults: array expected"; for (var i = 0; i < message.editionDefaults.length; ++i) { - var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]); + var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i], long + 1); if (error) return "editionDefaults." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -29519,7 +30673,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -29544,7 +30698,7 @@ } } if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"], long + 1); if (error) return ".google.api.resourceReference." + error; } @@ -29559,9 +30713,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions} FieldOptions */ - FieldOptions.fromObject = function fromObject(object) { + FieldOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions(); switch (object.ctype) { default: @@ -29695,18 +30853,18 @@ for (var i = 0; i < object.editionDefaults.length; ++i) { if (typeof object.editionDefaults[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected"); - message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]); + message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FieldOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -29715,7 +30873,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.fieldBehavior"]) { @@ -29770,7 +30928,7 @@ if (object[".google.api.resourceReference"] != null) { if (typeof object[".google.api.resourceReference"] !== "object") throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"], long + 1); } return message; }; @@ -29980,7 +31138,7 @@ function EditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30055,9 +31213,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EditionDefault.decode = function decode(reader, length, error) { + EditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30073,7 +31235,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30104,9 +31266,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EditionDefault.verify = function verify(message) { + EditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -30139,9 +31305,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault */ - EditionDefault.fromObject = function fromObject(object) { + EditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.EditionDefault(); switch (object.edition) { default: @@ -30280,7 +31450,7 @@ function FeatureSupport(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30375,9 +31545,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSupport.decode = function decode(reader, length, error) { + FeatureSupport.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.FeatureSupport(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30401,7 +31575,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30432,9 +31606,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSupport.verify = function verify(message) { + FeatureSupport.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.editionIntroduced != null && message.hasOwnProperty("editionIntroduced")) switch (message.editionIntroduced) { default: @@ -30503,9 +31681,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.FeatureSupport} FeatureSupport */ - FeatureSupport.fromObject = function fromObject(object) { + FeatureSupport.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.FeatureSupport) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.FeatureSupport(); switch (object.editionIntroduced) { default: @@ -30764,7 +31946,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30840,9 +32022,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decode = function decode(reader, length, error) { + OneofOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30850,17 +32036,17 @@ break; switch (tag >>> 3) { case 1: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30891,11 +32077,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofOptions.verify = function verify(message) { + OneofOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -30903,7 +32093,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -30919,14 +32109,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofOptions} OneofOptions */ - OneofOptions.fromObject = function fromObject(object) { + OneofOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.OneofOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -30935,7 +32129,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -31022,7 +32216,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31128,9 +32322,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decode = function decode(reader, length, error) { + EnumOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31150,17 +32348,17 @@ break; } case 7: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31191,9 +32389,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumOptions.verify = function verify(message) { + EnumOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) if (typeof message.allowAlias !== "boolean") return "allowAlias: boolean expected"; @@ -31204,7 +32406,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -31212,7 +32414,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -31228,9 +32430,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumOptions} EnumOptions */ - EnumOptions.fromObject = function fromObject(object) { + EnumOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumOptions(); if (object.allowAlias != null) message.allowAlias = Boolean(object.allowAlias); @@ -31241,7 +32447,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -31250,7 +32456,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -31347,7 +32553,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31453,9 +32659,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decode = function decode(reader, length, error) { + EnumValueOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31467,7 +32677,7 @@ break; } case 2: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -31475,17 +32685,17 @@ break; } case 4: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31516,14 +32726,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueOptions.verify = function verify(message) { + EnumValueOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -31531,7 +32745,7 @@ if (typeof message.debugRedact !== "boolean") return "debugRedact: boolean expected"; if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -31539,7 +32753,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -31555,23 +32769,27 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueOptions} EnumValueOptions */ - EnumValueOptions.fromObject = function fromObject(object) { + EnumValueOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumValueOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.debugRedact != null) message.debugRedact = Boolean(object.debugRedact); if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -31580,7 +32798,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -31678,7 +32896,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31794,9 +33012,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decode = function decode(reader, length, error) { + ServiceOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31804,7 +33026,7 @@ break; switch (tag >>> 3) { case 34: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 33: { @@ -31814,7 +33036,7 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1049: { @@ -31830,7 +33052,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31861,11 +33083,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceOptions.verify = function verify(message) { + ServiceOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -31876,7 +33102,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -31901,14 +33127,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceOptions} ServiceOptions */ - ServiceOptions.fromObject = function fromObject(object) { + ServiceOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ServiceOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -31919,7 +33149,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.defaultHost"] != null) @@ -32028,7 +33258,7 @@ this[".google.api.methodSignature"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32155,9 +33385,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decode = function decode(reader, length, error) { + MethodOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32173,17 +33407,17 @@ break; } case 35: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 72295728: { - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1051: { @@ -32193,11 +33427,11 @@ break; } case 1049: { - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32228,9 +33462,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodOptions.verify = function verify(message) { + MethodOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; @@ -32244,7 +33482,7 @@ break; } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -32252,13 +33490,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + var error = $root.google.api.HttpRule.verify(message[".google.api.http"], long + 1); if (error) return ".google.api.http." + error; } @@ -32270,7 +33508,7 @@ return ".google.api.methodSignature: string[] expected"; } if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { - var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); + var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"], long + 1); if (error) return ".google.longrunning.operationInfo." + error; } @@ -32285,9 +33523,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodOptions} MethodOptions */ - MethodOptions.fromObject = function fromObject(object) { + MethodOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -32314,7 +33556,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MethodOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -32323,13 +33565,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.http"] != null) { if (typeof object[".google.api.http"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"], long + 1); } if (object[".google.api.methodSignature"]) { if (!Array.isArray(object[".google.api.methodSignature"])) @@ -32341,7 +33583,7 @@ if (object[".google.longrunning.operationInfo"] != null) { if (typeof object[".google.longrunning.operationInfo"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"], long + 1); } return message; }; @@ -32465,7 +33707,7 @@ this.name = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32591,9 +33833,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.decode = function decode(reader, length, error) { + UninterpretedOption.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32603,7 +33849,7 @@ case 2: { if (!(message.name && message.name.length)) message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -32631,7 +33877,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32662,14 +33908,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UninterpretedOption.verify = function verify(message) { + UninterpretedOption.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) { if (!Array.isArray(message.name)) return "name: array expected"; for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i], long + 1); if (error) return "name." + error; } @@ -32703,9 +33953,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption} UninterpretedOption */ - UninterpretedOption.fromObject = function fromObject(object) { + UninterpretedOption.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption(); if (object.name) { if (!Array.isArray(object.name)) @@ -32714,7 +33968,7 @@ for (var i = 0; i < object.name.length; ++i) { if (typeof object.name[i] !== "object") throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i], long + 1); } } if (object.identifierValue != null) @@ -32859,7 +34113,7 @@ function NamePart(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32932,9 +34186,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NamePart.decode = function decode(reader, length, error) { + NamePart.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32950,7 +34208,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32985,9 +34243,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NamePart.verify = function verify(message) { + NamePart.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (!$util.isString(message.namePart)) return "namePart: string expected"; if (typeof message.isExtension !== "boolean") @@ -33003,9 +34265,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart */ - NamePart.fromObject = function fromObject(object) { + NamePart.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption.NamePart(); if (object.namePart != null) message.namePart = String(object.namePart); @@ -33097,7 +34363,7 @@ function FeatureSet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33232,9 +34498,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSet.decode = function decode(reader, length, error) { + FeatureSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33274,7 +34544,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33305,9 +34575,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSet.verify = function verify(message) { + FeatureSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence")) switch (message.fieldPresence) { default: @@ -33394,9 +34668,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet} FeatureSet */ - FeatureSet.fromObject = function fromObject(object) { + FeatureSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSet(); switch (object.fieldPresence) { default: @@ -33774,7 +35052,7 @@ function VisibilityFeature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33829,9 +35107,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VisibilityFeature.decode = function decode(reader, length, error) { + VisibilityFeature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet.VisibilityFeature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33839,7 +35121,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33870,9 +35152,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VisibilityFeature.verify = function verify(message) { + VisibilityFeature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -33884,9 +35170,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet.VisibilityFeature} VisibilityFeature */ - VisibilityFeature.fromObject = function fromObject(object) { + VisibilityFeature.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.FeatureSet.VisibilityFeature(); }; @@ -33978,7 +35268,7 @@ this.defaults = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34064,9 +35354,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetDefaults.decode = function decode(reader, length, error) { + FeatureSetDefaults.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34076,7 +35370,7 @@ case 1: { if (!(message.defaults && message.defaults.length)) message.defaults = []; - message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32())); + message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -34088,7 +35382,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34119,14 +35413,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetDefaults.verify = function verify(message) { + FeatureSetDefaults.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.defaults != null && message.hasOwnProperty("defaults")) { if (!Array.isArray(message.defaults)) return "defaults: array expected"; for (var i = 0; i < message.defaults.length; ++i) { - var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]); + var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i], long + 1); if (error) return "defaults." + error; } @@ -34178,9 +35476,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults */ - FeatureSetDefaults.fromObject = function fromObject(object) { + FeatureSetDefaults.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults(); if (object.defaults) { if (!Array.isArray(object.defaults)) @@ -34189,7 +35491,7 @@ for (var i = 0; i < object.defaults.length; ++i) { if (typeof object.defaults[i] !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected"); - message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]); + message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i], long + 1); } } switch (object.minimumEdition) { @@ -34386,7 +35688,7 @@ function FeatureSetEditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34471,9 +35773,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetEditionDefault.decode = function decode(reader, length, error) { + FeatureSetEditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34485,15 +35791,15 @@ break; } case 4: { - message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34524,9 +35830,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetEditionDefault.verify = function verify(message) { + FeatureSetEditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -34546,12 +35856,12 @@ break; } if (message.overridableFeatures != null && message.hasOwnProperty("overridableFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures, long + 1); if (error) return "overridableFeatures." + error; } if (message.fixedFeatures != null && message.hasOwnProperty("fixedFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures, long + 1); if (error) return "fixedFeatures." + error; } @@ -34566,9 +35876,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault */ - FeatureSetEditionDefault.fromObject = function fromObject(object) { + FeatureSetEditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); switch (object.edition) { default: @@ -34629,12 +35943,12 @@ if (object.overridableFeatures != null) { if (typeof object.overridableFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected"); - message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures); + message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures, long + 1); } if (object.fixedFeatures != null) { if (typeof object.fixedFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected"); - message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures); + message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures, long + 1); } return message; }; @@ -34719,7 +36033,7 @@ this.location = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34785,9 +36099,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decode = function decode(reader, length, error) { + SourceCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34797,11 +36115,11 @@ case 1: { if (!(message.location && message.location.length)) message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34832,14 +36150,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCodeInfo.verify = function verify(message) { + SourceCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.location != null && message.hasOwnProperty("location")) { if (!Array.isArray(message.location)) return "location: array expected"; for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i], long + 1); if (error) return "location." + error; } @@ -34855,9 +36177,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo */ - SourceCodeInfo.fromObject = function fromObject(object) { + SourceCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo(); if (object.location) { if (!Array.isArray(object.location)) @@ -34866,7 +36192,7 @@ for (var i = 0; i < object.location.length; ++i) { if (typeof object.location[i] !== "object") throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i], long + 1); } } return message; @@ -34948,7 +36274,7 @@ this.leadingDetachedComments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35062,9 +36388,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Location.decode = function decode(reader, length, error) { + Location.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35108,7 +36438,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35139,9 +36469,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Location.verify = function verify(message) { + Location.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -35180,9 +36514,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo.Location} Location */ - Location.fromObject = function fromObject(object) { + Location.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo.Location(); if (object.path) { if (!Array.isArray(object.path)) @@ -35309,7 +36647,7 @@ this.annotation = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35375,9 +36713,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GeneratedCodeInfo.decode = function decode(reader, length, error) { + GeneratedCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35387,11 +36729,11 @@ case 1: { if (!(message.annotation && message.annotation.length)) message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35422,14 +36764,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GeneratedCodeInfo.verify = function verify(message) { + GeneratedCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.annotation != null && message.hasOwnProperty("annotation")) { if (!Array.isArray(message.annotation)) return "annotation: array expected"; for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i], long + 1); if (error) return "annotation." + error; } @@ -35445,9 +36791,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo */ - GeneratedCodeInfo.fromObject = function fromObject(object) { + GeneratedCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo(); if (object.annotation) { if (!Array.isArray(object.annotation)) @@ -35456,7 +36806,7 @@ for (var i = 0; i < object.annotation.length; ++i) { if (typeof object.annotation[i] !== "object") throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i], long + 1); } } return message; @@ -35536,7 +36886,7 @@ this.path = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35645,9 +36995,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decode = function decode(reader, length, error) { + Annotation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35682,7 +37036,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35713,9 +37067,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Annotation.verify = function verify(message) { + Annotation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -35752,9 +37110,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation */ - Annotation.fromObject = function fromObject(object) { + Annotation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); if (object.path) { if (!Array.isArray(object.path)) @@ -35914,7 +37276,7 @@ function Duration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35989,9 +37351,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decode = function decode(reader, length, error) { + Duration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Duration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36007,7 +37373,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36038,9 +37404,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Duration.verify = function verify(message) { + Duration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -36058,9 +37428,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Duration} Duration */ - Duration.fromObject = function fromObject(object) { + Duration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Duration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Duration(); if (object.seconds != null) if ($util.Long) @@ -36157,7 +37531,7 @@ function Any(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36232,9 +37606,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decode = function decode(reader, length, error) { + Any.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36250,7 +37628,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36281,9 +37659,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Any.verify = function verify(message) { + Any.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type_url != null && message.hasOwnProperty("type_url")) if (!$util.isString(message.type_url)) return "type_url: string expected"; @@ -36301,9 +37683,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Any} Any */ - Any.fromObject = function fromObject(object) { + Any.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Any) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Any(); if (object.type_url != null) message.type_url = String(object.type_url); @@ -36393,7 +37779,7 @@ function Empty(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36448,9 +37834,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length, error) { + Empty.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36458,7 +37848,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36489,9 +37879,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Empty.verify = function verify(message) { + Empty.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -36503,9 +37897,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Empty} Empty */ - Empty.fromObject = function fromObject(object) { + Empty.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Empty) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.Empty(); }; @@ -36572,7 +37970,7 @@ this.paths = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36638,9 +38036,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decode = function decode(reader, length, error) { + FieldMask.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldMask(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36654,7 +38056,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36685,9 +38087,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldMask.verify = function verify(message) { + FieldMask.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.paths != null && message.hasOwnProperty("paths")) { if (!Array.isArray(message.paths)) return "paths: array expected"; @@ -36706,9 +38112,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldMask} FieldMask */ - FieldMask.fromObject = function fromObject(object) { + FieldMask.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldMask) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldMask(); if (object.paths) { if (!Array.isArray(object.paths)) @@ -36793,7 +38203,7 @@ function Timestamp(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36868,9 +38278,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decode = function decode(reader, length, error) { + Timestamp.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36886,7 +38300,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36917,9 +38331,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Timestamp.verify = function verify(message) { + Timestamp.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -36937,9 +38355,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Timestamp} Timestamp */ - Timestamp.fromObject = function fromObject(object) { + Timestamp.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Timestamp) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Timestamp(); if (object.seconds != null) if ($util.Long) @@ -37251,7 +38673,7 @@ function Operation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37370,9 +38792,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Operation.decode = function decode(reader, length, error) { + Operation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.Operation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37384,7 +38810,7 @@ break; } case 2: { - message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -37392,15 +38818,15 @@ break; } case 4: { - message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.error = $root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.response = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37431,15 +38857,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Operation.verify = function verify(message) { + Operation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.google.protobuf.Any.verify(message.metadata); + var error = $root.google.protobuf.Any.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -37449,7 +38879,7 @@ if (message.error != null && message.hasOwnProperty("error")) { properties.result = 1; { - var error = $root.google.rpc.Status.verify(message.error); + var error = $root.google.rpc.Status.verify(message.error, long + 1); if (error) return "error." + error; } @@ -37459,7 +38889,7 @@ return "result: multiple values"; properties.result = 1; { - var error = $root.google.protobuf.Any.verify(message.response); + var error = $root.google.protobuf.Any.verify(message.response, long + 1); if (error) return "response." + error; } @@ -37475,28 +38905,32 @@ * @param {Object.} object Plain object * @returns {google.longrunning.Operation} Operation */ - Operation.fromObject = function fromObject(object) { + Operation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.Operation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.Operation(); if (object.name != null) message.name = String(object.name); if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".google.longrunning.Operation.metadata: object expected"); - message.metadata = $root.google.protobuf.Any.fromObject(object.metadata); + message.metadata = $root.google.protobuf.Any.fromObject(object.metadata, long + 1); } if (object.done != null) message.done = Boolean(object.done); if (object.error != null) { if (typeof object.error !== "object") throw TypeError(".google.longrunning.Operation.error: object expected"); - message.error = $root.google.rpc.Status.fromObject(object.error); + message.error = $root.google.rpc.Status.fromObject(object.error, long + 1); } if (object.response != null) { if (typeof object.response !== "object") throw TypeError(".google.longrunning.Operation.response: object expected"); - message.response = $root.google.protobuf.Any.fromObject(object.response); + message.response = $root.google.protobuf.Any.fromObject(object.response, long + 1); } return message; }; @@ -37587,7 +39021,7 @@ function GetOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37652,9 +39086,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOperationRequest.decode = function decode(reader, length, error) { + GetOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.GetOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37666,7 +39104,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37697,9 +39135,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOperationRequest.verify = function verify(message) { + GetOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -37714,9 +39156,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.GetOperationRequest} GetOperationRequest */ - GetOperationRequest.fromObject = function fromObject(object) { + GetOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.GetOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.GetOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -37795,7 +39241,7 @@ function ListOperationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37890,9 +39336,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsRequest.decode = function decode(reader, length, error) { + ListOperationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37916,7 +39366,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37947,9 +39397,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsRequest.verify = function verify(message) { + ListOperationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -37973,9 +39427,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest */ - ListOperationsRequest.fromObject = function fromObject(object) { + ListOperationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsRequest(); if (object.name != null) message.name = String(object.name); @@ -38069,7 +39527,7 @@ this.operations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38145,9 +39603,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsResponse.decode = function decode(reader, length, error) { + ListOperationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38157,7 +39619,7 @@ case 1: { if (!(message.operations && message.operations.length)) message.operations = []; - message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); + message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -38165,7 +39627,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38196,14 +39658,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsResponse.verify = function verify(message) { + ListOperationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.operations != null && message.hasOwnProperty("operations")) { if (!Array.isArray(message.operations)) return "operations: array expected"; for (var i = 0; i < message.operations.length; ++i) { - var error = $root.google.longrunning.Operation.verify(message.operations[i]); + var error = $root.google.longrunning.Operation.verify(message.operations[i], long + 1); if (error) return "operations." + error; } @@ -38222,9 +39688,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse */ - ListOperationsResponse.fromObject = function fromObject(object) { + ListOperationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsResponse(); if (object.operations) { if (!Array.isArray(object.operations)) @@ -38233,7 +39703,7 @@ for (var i = 0; i < object.operations.length; ++i) { if (typeof object.operations[i] !== "object") throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected"); - message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i]); + message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i], long + 1); } } if (object.nextPageToken != null) @@ -38317,7 +39787,7 @@ function CancelOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38382,9 +39852,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CancelOperationRequest.decode = function decode(reader, length, error) { + CancelOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.CancelOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38396,7 +39870,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38427,9 +39901,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CancelOperationRequest.verify = function verify(message) { + CancelOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -38444,9 +39922,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest */ - CancelOperationRequest.fromObject = function fromObject(object) { + CancelOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.CancelOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.CancelOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -38522,7 +40004,7 @@ function DeleteOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38587,9 +40069,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteOperationRequest.decode = function decode(reader, length, error) { + DeleteOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.DeleteOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38601,7 +40087,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38632,9 +40118,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteOperationRequest.verify = function verify(message) { + DeleteOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -38649,9 +40139,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest */ - DeleteOperationRequest.fromObject = function fromObject(object) { + DeleteOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.DeleteOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.DeleteOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -38728,7 +40222,7 @@ function WaitOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38803,9 +40297,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WaitOperationRequest.decode = function decode(reader, length, error) { + WaitOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.WaitOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38817,11 +40315,11 @@ break; } case 2: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38852,14 +40350,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WaitOperationRequest.verify = function verify(message) { + WaitOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -38874,16 +40376,20 @@ * @param {Object.} object Plain object * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest */ - WaitOperationRequest.fromObject = function fromObject(object) { + WaitOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.WaitOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.WaitOperationRequest(); if (object.name != null) message.name = String(object.name); if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } return message; }; @@ -38962,7 +40468,7 @@ function OperationInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39037,9 +40543,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationInfo.decode = function decode(reader, length, error) { + OperationInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.OperationInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39055,7 +40565,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39086,9 +40596,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationInfo.verify = function verify(message) { + OperationInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.responseType != null && message.hasOwnProperty("responseType")) if (!$util.isString(message.responseType)) return "responseType: string expected"; @@ -39106,9 +40620,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.OperationInfo} OperationInfo */ - OperationInfo.fromObject = function fromObject(object) { + OperationInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.OperationInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.OperationInfo(); if (object.responseType != null) message.responseType = String(object.responseType); @@ -39205,7 +40723,7 @@ this.details = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39291,9 +40809,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Status.decode = function decode(reader, length, error) { + Status.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.rpc.Status(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39311,11 +40833,11 @@ case 3: { if (!(message.details && message.details.length)) message.details = []; - message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39346,9 +40868,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Status.verify = function verify(message) { + Status.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isInteger(message.code)) return "code: integer expected"; @@ -39359,7 +40885,7 @@ if (!Array.isArray(message.details)) return "details: array expected"; for (var i = 0; i < message.details.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.details[i]); + var error = $root.google.protobuf.Any.verify(message.details[i], long + 1); if (error) return "details." + error; } @@ -39375,9 +40901,13 @@ * @param {Object.} object Plain object * @returns {google.rpc.Status} Status */ - Status.fromObject = function fromObject(object) { + Status.fromObject = function fromObject(object, long) { if (object instanceof $root.google.rpc.Status) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.rpc.Status(); if (object.code != null) message.code = object.code | 0; @@ -39390,7 +40920,7 @@ for (var i = 0; i < object.details.length; ++i) { if (typeof object.details[i] !== "object") throw TypeError(".google.rpc.Status.details: object expected"); - message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]); + message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i], long + 1); } } return message; @@ -39517,7 +41047,7 @@ function TimeOfDay(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39612,9 +41142,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TimeOfDay.decode = function decode(reader, length, error) { + TimeOfDay.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.type.TimeOfDay(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39638,7 +41172,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39669,9 +41203,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TimeOfDay.verify = function verify(message) { + TimeOfDay.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.hours != null && message.hasOwnProperty("hours")) if (!$util.isInteger(message.hours)) return "hours: integer expected"; @@ -39695,9 +41233,13 @@ * @param {Object.} object Plain object * @returns {google.type.TimeOfDay} TimeOfDay */ - TimeOfDay.fromObject = function fromObject(object) { + TimeOfDay.fromObject = function fromObject(object, long) { if (object instanceof $root.google.type.TimeOfDay) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.type.TimeOfDay(); if (object.hours != null) message.hours = object.hours | 0; diff --git a/packages/google-cloud-resourcemanager/README.md b/packages/google-cloud-resourcemanager/README.md index c7c87a7c1195..9dedda3826de 100644 --- a/packages/google-cloud-resourcemanager/README.md +++ b/packages/google-cloud-resourcemanager/README.md @@ -96,7 +96,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | test iam permissions | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-resourcemanager/samples/generated/v3/projects.test_iam_permissions.js) | | undelete project | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-resourcemanager/samples/generated/v3/projects.undelete_project.js) | | update project | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-resourcemanager/samples/generated/v3/projects.update_project.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-resourcemanager/samples/generated/v3/snippet_metadata_google.cloud.resourcemanager.v3.json) | | create tag binding | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-resourcemanager/samples/generated/v3/tag_bindings.create_tag_binding.js) | | delete tag binding | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-resourcemanager/samples/generated/v3/tag_bindings.delete_tag_binding.js) | | list effective tags | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-resourcemanager/samples/generated/v3/tag_bindings.list_effective_tags.js) | diff --git a/packages/google-cloud-resourcemanager/protos/protos.js b/packages/google-cloud-resourcemanager/protos/protos.js index 39eb51fc2a03..92be4ab783c4 100644 --- a/packages/google-cloud-resourcemanager/protos/protos.js +++ b/packages/google-cloud-resourcemanager/protos/protos.js @@ -491,7 +491,7 @@ function Folder(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -626,9 +626,13 @@ * @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) { + Folder.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); 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(); @@ -652,15 +656,15 @@ break; } case 5: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -668,7 +672,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -699,9 +703,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Folder.verify = function verify(message) { + Folder.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -721,17 +729,17 @@ break; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } @@ -749,9 +757,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.Folder} Folder */ - Folder.fromObject = function fromObject(object) { + Folder.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.Folder) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.Folder(); if (object.name != null) message.name = String(object.name); @@ -782,17 +794,17 @@ 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); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } 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); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } 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); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.etag != null) message.etag = String(object.etag); @@ -906,7 +918,7 @@ function GetFolderRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -971,9 +983,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetFolderRequest.decode = function decode(reader, length, error) { + GetFolderRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.GetFolderRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -985,7 +1001,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1016,9 +1032,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetFolderRequest.verify = function verify(message) { + GetFolderRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -1033,9 +1053,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.GetFolderRequest} GetFolderRequest */ - GetFolderRequest.fromObject = function fromObject(object) { + GetFolderRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.GetFolderRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.GetFolderRequest(); if (object.name != null) message.name = String(object.name); @@ -1114,7 +1138,7 @@ function ListFoldersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1209,9 +1233,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListFoldersRequest.decode = function decode(reader, length, error) { + ListFoldersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListFoldersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1235,7 +1263,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1266,9 +1294,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListFoldersRequest.verify = function verify(message) { + ListFoldersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -1292,9 +1324,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListFoldersRequest} ListFoldersRequest */ - ListFoldersRequest.fromObject = function fromObject(object) { + ListFoldersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListFoldersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListFoldersRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -1388,7 +1424,7 @@ this.folders = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1464,9 +1500,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListFoldersResponse.decode = function decode(reader, length, error) { + ListFoldersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListFoldersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1476,7 +1516,7 @@ case 1: { if (!(message.folders && message.folders.length)) message.folders = []; - message.folders.push($root.google.cloud.resourcemanager.v3.Folder.decode(reader, reader.uint32())); + message.folders.push($root.google.cloud.resourcemanager.v3.Folder.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -1484,7 +1524,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1515,14 +1555,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListFoldersResponse.verify = function verify(message) { + ListFoldersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.folders != null && message.hasOwnProperty("folders")) { if (!Array.isArray(message.folders)) return "folders: array expected"; for (var i = 0; i < message.folders.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.Folder.verify(message.folders[i]); + var error = $root.google.cloud.resourcemanager.v3.Folder.verify(message.folders[i], long + 1); if (error) return "folders." + error; } @@ -1541,9 +1585,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListFoldersResponse} ListFoldersResponse */ - ListFoldersResponse.fromObject = function fromObject(object) { + ListFoldersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListFoldersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListFoldersResponse(); if (object.folders) { if (!Array.isArray(object.folders)) @@ -1552,7 +1600,7 @@ for (var i = 0; i < object.folders.length; ++i) { if (typeof object.folders[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.ListFoldersResponse.folders: object expected"); - message.folders[i] = $root.google.cloud.resourcemanager.v3.Folder.fromObject(object.folders[i]); + message.folders[i] = $root.google.cloud.resourcemanager.v3.Folder.fromObject(object.folders[i], long + 1); } } if (object.nextPageToken != null) @@ -1638,7 +1686,7 @@ function SearchFoldersRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1723,9 +1771,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchFoldersRequest.decode = function decode(reader, length, error) { + SearchFoldersRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.SearchFoldersRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1745,7 +1797,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1776,9 +1828,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchFoldersRequest.verify = function verify(message) { + SearchFoldersRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pageSize != null && message.hasOwnProperty("pageSize")) if (!$util.isInteger(message.pageSize)) return "pageSize: integer expected"; @@ -1799,9 +1855,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.SearchFoldersRequest} SearchFoldersRequest */ - SearchFoldersRequest.fromObject = function fromObject(object) { + SearchFoldersRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.SearchFoldersRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.SearchFoldersRequest(); if (object.pageSize != null) message.pageSize = object.pageSize | 0; @@ -1890,7 +1950,7 @@ this.folders = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1966,9 +2026,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchFoldersResponse.decode = function decode(reader, length, error) { + SearchFoldersResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.SearchFoldersResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1978,7 +2042,7 @@ case 1: { if (!(message.folders && message.folders.length)) message.folders = []; - message.folders.push($root.google.cloud.resourcemanager.v3.Folder.decode(reader, reader.uint32())); + message.folders.push($root.google.cloud.resourcemanager.v3.Folder.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -1986,7 +2050,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2017,14 +2081,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchFoldersResponse.verify = function verify(message) { + SearchFoldersResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.folders != null && message.hasOwnProperty("folders")) { if (!Array.isArray(message.folders)) return "folders: array expected"; for (var i = 0; i < message.folders.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.Folder.verify(message.folders[i]); + var error = $root.google.cloud.resourcemanager.v3.Folder.verify(message.folders[i], long + 1); if (error) return "folders." + error; } @@ -2043,9 +2111,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.SearchFoldersResponse} SearchFoldersResponse */ - SearchFoldersResponse.fromObject = function fromObject(object) { + SearchFoldersResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.SearchFoldersResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.SearchFoldersResponse(); if (object.folders) { if (!Array.isArray(object.folders)) @@ -2054,7 +2126,7 @@ for (var i = 0; i < object.folders.length; ++i) { if (typeof object.folders[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.SearchFoldersResponse.folders: object expected"); - message.folders[i] = $root.google.cloud.resourcemanager.v3.Folder.fromObject(object.folders[i]); + message.folders[i] = $root.google.cloud.resourcemanager.v3.Folder.fromObject(object.folders[i], long + 1); } } if (object.nextPageToken != null) @@ -2138,7 +2210,7 @@ function CreateFolderRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2203,9 +2275,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateFolderRequest.decode = function decode(reader, length, error) { + CreateFolderRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateFolderRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2213,11 +2289,11 @@ break; switch (tag >>> 3) { case 2: { - message.folder = $root.google.cloud.resourcemanager.v3.Folder.decode(reader, reader.uint32()); + message.folder = $root.google.cloud.resourcemanager.v3.Folder.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2248,11 +2324,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateFolderRequest.verify = function verify(message) { + CreateFolderRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.folder != null && message.hasOwnProperty("folder")) { - var error = $root.google.cloud.resourcemanager.v3.Folder.verify(message.folder); + var error = $root.google.cloud.resourcemanager.v3.Folder.verify(message.folder, long + 1); if (error) return "folder." + error; } @@ -2267,14 +2347,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateFolderRequest} CreateFolderRequest */ - CreateFolderRequest.fromObject = function fromObject(object) { + CreateFolderRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateFolderRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.CreateFolderRequest(); if (object.folder != null) { if (typeof object.folder !== "object") throw TypeError(".google.cloud.resourcemanager.v3.CreateFolderRequest.folder: object expected"); - message.folder = $root.google.cloud.resourcemanager.v3.Folder.fromObject(object.folder); + message.folder = $root.google.cloud.resourcemanager.v3.Folder.fromObject(object.folder, long + 1); } return message; }; @@ -2349,7 +2433,7 @@ function CreateFolderMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2424,9 +2508,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateFolderMetadata.decode = function decode(reader, length, error) { + CreateFolderMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateFolderMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2442,7 +2530,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2473,9 +2561,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateFolderMetadata.verify = function verify(message) { + CreateFolderMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.displayName != null && message.hasOwnProperty("displayName")) if (!$util.isString(message.displayName)) return "displayName: string expected"; @@ -2493,9 +2585,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateFolderMetadata} CreateFolderMetadata */ - CreateFolderMetadata.fromObject = function fromObject(object) { + CreateFolderMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateFolderMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.CreateFolderMetadata(); if (object.displayName != null) message.displayName = String(object.displayName); @@ -2578,7 +2674,7 @@ function UpdateFolderRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2653,9 +2749,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateFolderRequest.decode = function decode(reader, length, error) { + UpdateFolderRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UpdateFolderRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2663,15 +2763,15 @@ break; switch (tag >>> 3) { case 1: { - message.folder = $root.google.cloud.resourcemanager.v3.Folder.decode(reader, reader.uint32()); + message.folder = $root.google.cloud.resourcemanager.v3.Folder.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2702,16 +2802,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateFolderRequest.verify = function verify(message) { + UpdateFolderRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.folder != null && message.hasOwnProperty("folder")) { - var error = $root.google.cloud.resourcemanager.v3.Folder.verify(message.folder); + var error = $root.google.cloud.resourcemanager.v3.Folder.verify(message.folder, long + 1); if (error) return "folder." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -2726,19 +2830,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UpdateFolderRequest} UpdateFolderRequest */ - UpdateFolderRequest.fromObject = function fromObject(object) { + UpdateFolderRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UpdateFolderRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.UpdateFolderRequest(); if (object.folder != null) { if (typeof object.folder !== "object") throw TypeError(".google.cloud.resourcemanager.v3.UpdateFolderRequest.folder: object expected"); - message.folder = $root.google.cloud.resourcemanager.v3.Folder.fromObject(object.folder); + message.folder = $root.google.cloud.resourcemanager.v3.Folder.fromObject(object.folder, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.resourcemanager.v3.UpdateFolderRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -2815,7 +2923,7 @@ function UpdateFolderMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2870,9 +2978,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateFolderMetadata.decode = function decode(reader, length, error) { + UpdateFolderMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UpdateFolderMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2880,7 +2992,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2911,9 +3023,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateFolderMetadata.verify = function verify(message) { + UpdateFolderMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -2925,9 +3041,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UpdateFolderMetadata} UpdateFolderMetadata */ - UpdateFolderMetadata.fromObject = function fromObject(object) { + UpdateFolderMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UpdateFolderMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.UpdateFolderMetadata(); }; @@ -2994,7 +3114,7 @@ function MoveFolderRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3069,9 +3189,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MoveFolderRequest.decode = function decode(reader, length, error) { + MoveFolderRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.MoveFolderRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3087,7 +3211,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3118,9 +3242,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MoveFolderRequest.verify = function verify(message) { + MoveFolderRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -3138,9 +3266,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.MoveFolderRequest} MoveFolderRequest */ - MoveFolderRequest.fromObject = function fromObject(object) { + MoveFolderRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.MoveFolderRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.MoveFolderRequest(); if (object.name != null) message.name = String(object.name); @@ -3224,7 +3356,7 @@ function MoveFolderMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3309,9 +3441,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MoveFolderMetadata.decode = function decode(reader, length, error) { + MoveFolderMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.MoveFolderMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3331,7 +3467,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3362,9 +3498,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MoveFolderMetadata.verify = function verify(message) { + MoveFolderMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.displayName != null && message.hasOwnProperty("displayName")) if (!$util.isString(message.displayName)) return "displayName: string expected"; @@ -3385,9 +3525,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.MoveFolderMetadata} MoveFolderMetadata */ - MoveFolderMetadata.fromObject = function fromObject(object) { + MoveFolderMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.MoveFolderMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.MoveFolderMetadata(); if (object.displayName != null) message.displayName = String(object.displayName); @@ -3474,7 +3618,7 @@ function DeleteFolderRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3539,9 +3683,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteFolderRequest.decode = function decode(reader, length, error) { + DeleteFolderRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteFolderRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3553,7 +3701,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3584,9 +3732,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteFolderRequest.verify = function verify(message) { + DeleteFolderRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -3601,9 +3753,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteFolderRequest} DeleteFolderRequest */ - DeleteFolderRequest.fromObject = function fromObject(object) { + DeleteFolderRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteFolderRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.DeleteFolderRequest(); if (object.name != null) message.name = String(object.name); @@ -3678,7 +3834,7 @@ function DeleteFolderMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3733,9 +3889,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteFolderMetadata.decode = function decode(reader, length, error) { + DeleteFolderMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteFolderMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3743,7 +3903,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3774,9 +3934,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteFolderMetadata.verify = function verify(message) { + DeleteFolderMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -3788,9 +3952,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteFolderMetadata} DeleteFolderMetadata */ - DeleteFolderMetadata.fromObject = function fromObject(object) { + DeleteFolderMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteFolderMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.DeleteFolderMetadata(); }; @@ -3856,7 +4024,7 @@ function UndeleteFolderRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3921,9 +4089,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UndeleteFolderRequest.decode = function decode(reader, length, error) { + UndeleteFolderRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UndeleteFolderRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3935,7 +4107,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3966,9 +4138,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UndeleteFolderRequest.verify = function verify(message) { + UndeleteFolderRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -3983,9 +4159,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UndeleteFolderRequest} UndeleteFolderRequest */ - UndeleteFolderRequest.fromObject = function fromObject(object) { + UndeleteFolderRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UndeleteFolderRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.UndeleteFolderRequest(); if (object.name != null) message.name = String(object.name); @@ -4060,7 +4240,7 @@ function UndeleteFolderMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4115,9 +4295,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UndeleteFolderMetadata.decode = function decode(reader, length, error) { + UndeleteFolderMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UndeleteFolderMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4125,7 +4309,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4156,9 +4340,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UndeleteFolderMetadata.verify = function verify(message) { + UndeleteFolderMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -4170,9 +4358,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UndeleteFolderMetadata} UndeleteFolderMetadata */ - UndeleteFolderMetadata.fromObject = function fromObject(object) { + UndeleteFolderMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UndeleteFolderMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.UndeleteFolderMetadata(); }; @@ -4445,7 +4637,7 @@ function Organization(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4594,9 +4786,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Organization.decode = function decode(reader, length, error) { + Organization.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.Organization(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4620,15 +4816,15 @@ break; } case 5: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -4636,7 +4832,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4667,9 +4863,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Organization.verify = function verify(message) { + Organization.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -4692,17 +4892,17 @@ break; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } @@ -4720,9 +4920,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.Organization} Organization */ - Organization.fromObject = function fromObject(object) { + Organization.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.Organization) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.Organization(); if (object.name != null) message.name = String(object.name); @@ -4753,17 +4957,17 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.Organization.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.Organization.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.Organization.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.etag != null) message.etag = String(object.etag); @@ -4879,7 +5083,7 @@ function GetOrganizationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4944,9 +5148,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOrganizationRequest.decode = function decode(reader, length, error) { + GetOrganizationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.GetOrganizationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4958,7 +5166,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4989,9 +5197,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOrganizationRequest.verify = function verify(message) { + GetOrganizationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -5006,9 +5218,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.GetOrganizationRequest} GetOrganizationRequest */ - GetOrganizationRequest.fromObject = function fromObject(object) { + GetOrganizationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.GetOrganizationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.GetOrganizationRequest(); if (object.name != null) message.name = String(object.name); @@ -5086,7 +5302,7 @@ function SearchOrganizationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5171,9 +5387,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchOrganizationsRequest.decode = function decode(reader, length, error) { + SearchOrganizationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.SearchOrganizationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5193,7 +5413,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5224,9 +5444,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchOrganizationsRequest.verify = function verify(message) { + SearchOrganizationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pageSize != null && message.hasOwnProperty("pageSize")) if (!$util.isInteger(message.pageSize)) return "pageSize: integer expected"; @@ -5247,9 +5471,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.SearchOrganizationsRequest} SearchOrganizationsRequest */ - SearchOrganizationsRequest.fromObject = function fromObject(object) { + SearchOrganizationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.SearchOrganizationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.SearchOrganizationsRequest(); if (object.pageSize != null) message.pageSize = object.pageSize | 0; @@ -5338,7 +5566,7 @@ this.organizations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5414,9 +5642,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchOrganizationsResponse.decode = function decode(reader, length, error) { + SearchOrganizationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.SearchOrganizationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5426,7 +5658,7 @@ case 1: { if (!(message.organizations && message.organizations.length)) message.organizations = []; - message.organizations.push($root.google.cloud.resourcemanager.v3.Organization.decode(reader, reader.uint32())); + message.organizations.push($root.google.cloud.resourcemanager.v3.Organization.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -5434,7 +5666,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5465,14 +5697,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchOrganizationsResponse.verify = function verify(message) { + SearchOrganizationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.organizations != null && message.hasOwnProperty("organizations")) { if (!Array.isArray(message.organizations)) return "organizations: array expected"; for (var i = 0; i < message.organizations.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.Organization.verify(message.organizations[i]); + var error = $root.google.cloud.resourcemanager.v3.Organization.verify(message.organizations[i], long + 1); if (error) return "organizations." + error; } @@ -5491,9 +5727,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.SearchOrganizationsResponse} SearchOrganizationsResponse */ - SearchOrganizationsResponse.fromObject = function fromObject(object) { + SearchOrganizationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.SearchOrganizationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.SearchOrganizationsResponse(); if (object.organizations) { if (!Array.isArray(object.organizations)) @@ -5502,7 +5742,7 @@ for (var i = 0; i < object.organizations.length; ++i) { if (typeof object.organizations[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.SearchOrganizationsResponse.organizations: object expected"); - message.organizations[i] = $root.google.cloud.resourcemanager.v3.Organization.fromObject(object.organizations[i]); + message.organizations[i] = $root.google.cloud.resourcemanager.v3.Organization.fromObject(object.organizations[i], long + 1); } } if (object.nextPageToken != null) @@ -5585,7 +5825,7 @@ function DeleteOrganizationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5640,9 +5880,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteOrganizationMetadata.decode = function decode(reader, length, error) { + DeleteOrganizationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteOrganizationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5650,7 +5894,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5681,9 +5925,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteOrganizationMetadata.verify = function verify(message) { + DeleteOrganizationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -5695,9 +5943,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteOrganizationMetadata} DeleteOrganizationMetadata */ - DeleteOrganizationMetadata.fromObject = function fromObject(object) { + DeleteOrganizationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteOrganizationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.DeleteOrganizationMetadata(); }; @@ -5762,7 +6014,7 @@ function UndeleteOrganizationMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5817,9 +6069,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UndeleteOrganizationMetadata.decode = function decode(reader, length, error) { + UndeleteOrganizationMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UndeleteOrganizationMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5827,7 +6083,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5858,9 +6114,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UndeleteOrganizationMetadata.verify = function verify(message) { + UndeleteOrganizationMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -5872,9 +6132,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UndeleteOrganizationMetadata} UndeleteOrganizationMetadata */ - UndeleteOrganizationMetadata.fromObject = function fromObject(object) { + UndeleteOrganizationMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UndeleteOrganizationMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.UndeleteOrganizationMetadata(); }; @@ -6348,7 +6612,7 @@ this.labels = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6504,9 +6768,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Project.decode = function decode(reader, length, error) { + Project.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.Project(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -6534,15 +6802,15 @@ break; } case 6: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -6565,15 +6833,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6604,9 +6874,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Project.verify = function verify(message) { + Project.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -6629,17 +6903,17 @@ if (!$util.isString(message.displayName)) return "displayName: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } @@ -6665,9 +6939,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.Project} Project */ - Project.fromObject = function fromObject(object) { + Project.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.Project) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.Project(); if (object.name != null) message.name = String(object.name); @@ -6700,17 +6978,17 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.Project.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.Project.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.Project.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.etag != null) message.etag = String(object.etag); @@ -6718,8 +6996,11 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.resourcemanager.v3.Project.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } return message; }; @@ -6771,8 +7052,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } return object; }; @@ -6842,7 +7126,7 @@ function GetProjectRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6907,9 +7191,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetProjectRequest.decode = function decode(reader, length, error) { + GetProjectRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.GetProjectRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6921,7 +7209,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6952,9 +7240,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetProjectRequest.verify = function verify(message) { + GetProjectRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -6969,9 +7261,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.GetProjectRequest} GetProjectRequest */ - GetProjectRequest.fromObject = function fromObject(object) { + GetProjectRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.GetProjectRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.GetProjectRequest(); if (object.name != null) message.name = String(object.name); @@ -7050,7 +7346,7 @@ function ListProjectsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7145,9 +7441,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListProjectsRequest.decode = function decode(reader, length, error) { + ListProjectsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListProjectsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7171,7 +7471,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7202,9 +7502,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListProjectsRequest.verify = function verify(message) { + ListProjectsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -7228,9 +7532,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListProjectsRequest} ListProjectsRequest */ - ListProjectsRequest.fromObject = function fromObject(object) { + ListProjectsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListProjectsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListProjectsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -7324,7 +7632,7 @@ this.projects = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7400,9 +7708,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListProjectsResponse.decode = function decode(reader, length, error) { + ListProjectsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListProjectsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7412,7 +7724,7 @@ case 1: { if (!(message.projects && message.projects.length)) message.projects = []; - message.projects.push($root.google.cloud.resourcemanager.v3.Project.decode(reader, reader.uint32())); + message.projects.push($root.google.cloud.resourcemanager.v3.Project.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -7420,7 +7732,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7451,14 +7763,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListProjectsResponse.verify = function verify(message) { + ListProjectsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.projects != null && message.hasOwnProperty("projects")) { if (!Array.isArray(message.projects)) return "projects: array expected"; for (var i = 0; i < message.projects.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.Project.verify(message.projects[i]); + var error = $root.google.cloud.resourcemanager.v3.Project.verify(message.projects[i], long + 1); if (error) return "projects." + error; } @@ -7477,9 +7793,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListProjectsResponse} ListProjectsResponse */ - ListProjectsResponse.fromObject = function fromObject(object) { + ListProjectsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListProjectsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListProjectsResponse(); if (object.projects) { if (!Array.isArray(object.projects)) @@ -7488,7 +7808,7 @@ for (var i = 0; i < object.projects.length; ++i) { if (typeof object.projects[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.ListProjectsResponse.projects: object expected"); - message.projects[i] = $root.google.cloud.resourcemanager.v3.Project.fromObject(object.projects[i]); + message.projects[i] = $root.google.cloud.resourcemanager.v3.Project.fromObject(object.projects[i], long + 1); } } if (object.nextPageToken != null) @@ -7574,7 +7894,7 @@ function SearchProjectsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7659,9 +7979,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchProjectsRequest.decode = function decode(reader, length, error) { + SearchProjectsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.SearchProjectsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7681,7 +8005,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7712,9 +8036,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchProjectsRequest.verify = function verify(message) { + SearchProjectsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.query != null && message.hasOwnProperty("query")) if (!$util.isString(message.query)) return "query: string expected"; @@ -7735,9 +8063,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.SearchProjectsRequest} SearchProjectsRequest */ - SearchProjectsRequest.fromObject = function fromObject(object) { + SearchProjectsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.SearchProjectsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.SearchProjectsRequest(); if (object.query != null) message.query = String(object.query); @@ -7826,7 +8158,7 @@ this.projects = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7902,9 +8234,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchProjectsResponse.decode = function decode(reader, length, error) { + SearchProjectsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.SearchProjectsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7914,7 +8250,7 @@ case 1: { if (!(message.projects && message.projects.length)) message.projects = []; - message.projects.push($root.google.cloud.resourcemanager.v3.Project.decode(reader, reader.uint32())); + message.projects.push($root.google.cloud.resourcemanager.v3.Project.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -7922,7 +8258,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7953,14 +8289,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchProjectsResponse.verify = function verify(message) { + SearchProjectsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.projects != null && message.hasOwnProperty("projects")) { if (!Array.isArray(message.projects)) return "projects: array expected"; for (var i = 0; i < message.projects.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.Project.verify(message.projects[i]); + var error = $root.google.cloud.resourcemanager.v3.Project.verify(message.projects[i], long + 1); if (error) return "projects." + error; } @@ -7979,9 +8319,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.SearchProjectsResponse} SearchProjectsResponse */ - SearchProjectsResponse.fromObject = function fromObject(object) { + SearchProjectsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.SearchProjectsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.SearchProjectsResponse(); if (object.projects) { if (!Array.isArray(object.projects)) @@ -7990,7 +8334,7 @@ for (var i = 0; i < object.projects.length; ++i) { if (typeof object.projects[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.SearchProjectsResponse.projects: object expected"); - message.projects[i] = $root.google.cloud.resourcemanager.v3.Project.fromObject(object.projects[i]); + message.projects[i] = $root.google.cloud.resourcemanager.v3.Project.fromObject(object.projects[i], long + 1); } } if (object.nextPageToken != null) @@ -8074,7 +8418,7 @@ function CreateProjectRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8139,9 +8483,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateProjectRequest.decode = function decode(reader, length, error) { + CreateProjectRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateProjectRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8149,11 +8497,11 @@ break; switch (tag >>> 3) { case 1: { - message.project = $root.google.cloud.resourcemanager.v3.Project.decode(reader, reader.uint32()); + message.project = $root.google.cloud.resourcemanager.v3.Project.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8184,11 +8532,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateProjectRequest.verify = function verify(message) { + CreateProjectRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.project != null && message.hasOwnProperty("project")) { - var error = $root.google.cloud.resourcemanager.v3.Project.verify(message.project); + var error = $root.google.cloud.resourcemanager.v3.Project.verify(message.project, long + 1); if (error) return "project." + error; } @@ -8203,14 +8555,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateProjectRequest} CreateProjectRequest */ - CreateProjectRequest.fromObject = function fromObject(object) { + CreateProjectRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateProjectRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.CreateProjectRequest(); if (object.project != null) { if (typeof object.project !== "object") throw TypeError(".google.cloud.resourcemanager.v3.CreateProjectRequest.project: object expected"); - message.project = $root.google.cloud.resourcemanager.v3.Project.fromObject(object.project); + message.project = $root.google.cloud.resourcemanager.v3.Project.fromObject(object.project, long + 1); } return message; }; @@ -8286,7 +8642,7 @@ function CreateProjectMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8371,9 +8727,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateProjectMetadata.decode = function decode(reader, length, error) { + CreateProjectMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateProjectMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8381,7 +8741,7 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -8393,7 +8753,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8424,11 +8784,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateProjectMetadata.verify = function verify(message) { + CreateProjectMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -8449,14 +8813,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateProjectMetadata} CreateProjectMetadata */ - CreateProjectMetadata.fromObject = function fromObject(object) { + CreateProjectMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateProjectMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.CreateProjectMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.CreateProjectMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.gettable != null) message.gettable = Boolean(object.gettable); @@ -8542,7 +8910,7 @@ function UpdateProjectRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8617,9 +8985,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateProjectRequest.decode = function decode(reader, length, error) { + UpdateProjectRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UpdateProjectRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8627,15 +8999,15 @@ break; switch (tag >>> 3) { case 1: { - message.project = $root.google.cloud.resourcemanager.v3.Project.decode(reader, reader.uint32()); + message.project = $root.google.cloud.resourcemanager.v3.Project.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8666,16 +9038,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateProjectRequest.verify = function verify(message) { + UpdateProjectRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.project != null && message.hasOwnProperty("project")) { - var error = $root.google.cloud.resourcemanager.v3.Project.verify(message.project); + var error = $root.google.cloud.resourcemanager.v3.Project.verify(message.project, long + 1); if (error) return "project." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -8690,19 +9066,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UpdateProjectRequest} UpdateProjectRequest */ - UpdateProjectRequest.fromObject = function fromObject(object) { + UpdateProjectRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UpdateProjectRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.UpdateProjectRequest(); if (object.project != null) { if (typeof object.project !== "object") throw TypeError(".google.cloud.resourcemanager.v3.UpdateProjectRequest.project: object expected"); - message.project = $root.google.cloud.resourcemanager.v3.Project.fromObject(object.project); + message.project = $root.google.cloud.resourcemanager.v3.Project.fromObject(object.project, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.resourcemanager.v3.UpdateProjectRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -8779,7 +9159,7 @@ function UpdateProjectMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8834,9 +9214,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateProjectMetadata.decode = function decode(reader, length, error) { + UpdateProjectMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UpdateProjectMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8844,7 +9228,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8875,9 +9259,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateProjectMetadata.verify = function verify(message) { + UpdateProjectMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -8889,9 +9277,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UpdateProjectMetadata} UpdateProjectMetadata */ - UpdateProjectMetadata.fromObject = function fromObject(object) { + UpdateProjectMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UpdateProjectMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.UpdateProjectMetadata(); }; @@ -8958,7 +9350,7 @@ function MoveProjectRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9033,9 +9425,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MoveProjectRequest.decode = function decode(reader, length, error) { + MoveProjectRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.MoveProjectRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9051,7 +9447,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9082,9 +9478,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MoveProjectRequest.verify = function verify(message) { + MoveProjectRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -9102,9 +9502,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.MoveProjectRequest} MoveProjectRequest */ - MoveProjectRequest.fromObject = function fromObject(object) { + MoveProjectRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.MoveProjectRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.MoveProjectRequest(); if (object.name != null) message.name = String(object.name); @@ -9185,7 +9589,7 @@ function MoveProjectMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9240,9 +9644,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MoveProjectMetadata.decode = function decode(reader, length, error) { + MoveProjectMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.MoveProjectMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9250,7 +9658,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9281,9 +9689,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MoveProjectMetadata.verify = function verify(message) { + MoveProjectMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -9295,9 +9707,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.MoveProjectMetadata} MoveProjectMetadata */ - MoveProjectMetadata.fromObject = function fromObject(object) { + MoveProjectMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.MoveProjectMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.MoveProjectMetadata(); }; @@ -9363,7 +9779,7 @@ function DeleteProjectRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9428,9 +9844,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteProjectRequest.decode = function decode(reader, length, error) { + DeleteProjectRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteProjectRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9442,7 +9862,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9473,9 +9893,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteProjectRequest.verify = function verify(message) { + DeleteProjectRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -9490,9 +9914,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteProjectRequest} DeleteProjectRequest */ - DeleteProjectRequest.fromObject = function fromObject(object) { + DeleteProjectRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteProjectRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.DeleteProjectRequest(); if (object.name != null) message.name = String(object.name); @@ -9567,7 +9995,7 @@ function DeleteProjectMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9622,9 +10050,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteProjectMetadata.decode = function decode(reader, length, error) { + DeleteProjectMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteProjectMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9632,7 +10064,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9663,9 +10095,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteProjectMetadata.verify = function verify(message) { + DeleteProjectMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -9677,9 +10113,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteProjectMetadata} DeleteProjectMetadata */ - DeleteProjectMetadata.fromObject = function fromObject(object) { + DeleteProjectMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteProjectMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.DeleteProjectMetadata(); }; @@ -9745,7 +10185,7 @@ function UndeleteProjectRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9810,9 +10250,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UndeleteProjectRequest.decode = function decode(reader, length, error) { + UndeleteProjectRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UndeleteProjectRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9824,7 +10268,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9855,9 +10299,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UndeleteProjectRequest.verify = function verify(message) { + UndeleteProjectRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -9872,9 +10320,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UndeleteProjectRequest} UndeleteProjectRequest */ - UndeleteProjectRequest.fromObject = function fromObject(object) { + UndeleteProjectRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UndeleteProjectRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.UndeleteProjectRequest(); if (object.name != null) message.name = String(object.name); @@ -9949,7 +10401,7 @@ function UndeleteProjectMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10004,9 +10456,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UndeleteProjectMetadata.decode = function decode(reader, length, error) { + UndeleteProjectMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UndeleteProjectMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10014,7 +10470,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10045,9 +10501,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UndeleteProjectMetadata.verify = function verify(message) { + UndeleteProjectMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -10059,9 +10519,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UndeleteProjectMetadata} UndeleteProjectMetadata */ - UndeleteProjectMetadata.fromObject = function fromObject(object) { + UndeleteProjectMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UndeleteProjectMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.UndeleteProjectMetadata(); }; @@ -10297,7 +10761,7 @@ function TagBinding(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10392,9 +10856,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TagBinding.decode = function decode(reader, length, error) { + TagBinding.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.TagBinding(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10418,7 +10886,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10449,9 +10917,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TagBinding.verify = function verify(message) { + TagBinding.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -10475,9 +10947,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.TagBinding} TagBinding */ - TagBinding.fromObject = function fromObject(object) { + TagBinding.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.TagBinding) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.TagBinding(); if (object.name != null) message.name = String(object.name); @@ -10568,7 +11044,7 @@ function CreateTagBindingMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10623,9 +11099,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateTagBindingMetadata.decode = function decode(reader, length, error) { + CreateTagBindingMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateTagBindingMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10633,7 +11113,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10664,9 +11144,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateTagBindingMetadata.verify = function verify(message) { + CreateTagBindingMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -10678,9 +11162,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateTagBindingMetadata} CreateTagBindingMetadata */ - CreateTagBindingMetadata.fromObject = function fromObject(object) { + CreateTagBindingMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateTagBindingMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.CreateTagBindingMetadata(); }; @@ -10747,7 +11235,7 @@ function CreateTagBindingRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10822,9 +11310,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateTagBindingRequest.decode = function decode(reader, length, error) { + CreateTagBindingRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateTagBindingRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10832,7 +11324,7 @@ break; switch (tag >>> 3) { case 1: { - message.tagBinding = $root.google.cloud.resourcemanager.v3.TagBinding.decode(reader, reader.uint32()); + message.tagBinding = $root.google.cloud.resourcemanager.v3.TagBinding.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -10840,7 +11332,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10871,11 +11363,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateTagBindingRequest.verify = function verify(message) { + CreateTagBindingRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagBinding != null && message.hasOwnProperty("tagBinding")) { - var error = $root.google.cloud.resourcemanager.v3.TagBinding.verify(message.tagBinding); + var error = $root.google.cloud.resourcemanager.v3.TagBinding.verify(message.tagBinding, long + 1); if (error) return "tagBinding." + error; } @@ -10893,14 +11389,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateTagBindingRequest} CreateTagBindingRequest */ - CreateTagBindingRequest.fromObject = function fromObject(object) { + CreateTagBindingRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateTagBindingRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.CreateTagBindingRequest(); if (object.tagBinding != null) { if (typeof object.tagBinding !== "object") throw TypeError(".google.cloud.resourcemanager.v3.CreateTagBindingRequest.tagBinding: object expected"); - message.tagBinding = $root.google.cloud.resourcemanager.v3.TagBinding.fromObject(object.tagBinding); + message.tagBinding = $root.google.cloud.resourcemanager.v3.TagBinding.fromObject(object.tagBinding, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -10979,7 +11479,7 @@ function DeleteTagBindingMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11034,9 +11534,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTagBindingMetadata.decode = function decode(reader, length, error) { + DeleteTagBindingMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteTagBindingMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11044,7 +11548,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11075,9 +11579,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTagBindingMetadata.verify = function verify(message) { + DeleteTagBindingMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -11089,9 +11597,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteTagBindingMetadata} DeleteTagBindingMetadata */ - DeleteTagBindingMetadata.fromObject = function fromObject(object) { + DeleteTagBindingMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteTagBindingMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.DeleteTagBindingMetadata(); }; @@ -11157,7 +11669,7 @@ function DeleteTagBindingRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11222,9 +11734,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTagBindingRequest.decode = function decode(reader, length, error) { + DeleteTagBindingRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteTagBindingRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11236,7 +11752,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11267,9 +11783,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTagBindingRequest.verify = function verify(message) { + DeleteTagBindingRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -11284,9 +11804,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteTagBindingRequest} DeleteTagBindingRequest */ - DeleteTagBindingRequest.fromObject = function fromObject(object) { + DeleteTagBindingRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteTagBindingRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.DeleteTagBindingRequest(); if (object.name != null) message.name = String(object.name); @@ -11364,7 +11888,7 @@ function ListTagBindingsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11449,9 +11973,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTagBindingsRequest.decode = function decode(reader, length, error) { + ListTagBindingsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListTagBindingsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11471,7 +11999,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11502,9 +12030,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTagBindingsRequest.verify = function verify(message) { + ListTagBindingsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -11525,9 +12057,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListTagBindingsRequest} ListTagBindingsRequest */ - ListTagBindingsRequest.fromObject = function fromObject(object) { + ListTagBindingsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListTagBindingsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListTagBindingsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -11616,7 +12152,7 @@ this.tagBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11692,9 +12228,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTagBindingsResponse.decode = function decode(reader, length, error) { + ListTagBindingsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListTagBindingsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11704,7 +12244,7 @@ case 1: { if (!(message.tagBindings && message.tagBindings.length)) message.tagBindings = []; - message.tagBindings.push($root.google.cloud.resourcemanager.v3.TagBinding.decode(reader, reader.uint32())); + message.tagBindings.push($root.google.cloud.resourcemanager.v3.TagBinding.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -11712,7 +12252,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11743,14 +12283,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTagBindingsResponse.verify = function verify(message) { + ListTagBindingsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagBindings != null && message.hasOwnProperty("tagBindings")) { if (!Array.isArray(message.tagBindings)) return "tagBindings: array expected"; for (var i = 0; i < message.tagBindings.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.TagBinding.verify(message.tagBindings[i]); + var error = $root.google.cloud.resourcemanager.v3.TagBinding.verify(message.tagBindings[i], long + 1); if (error) return "tagBindings." + error; } @@ -11769,9 +12313,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListTagBindingsResponse} ListTagBindingsResponse */ - ListTagBindingsResponse.fromObject = function fromObject(object) { + ListTagBindingsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListTagBindingsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListTagBindingsResponse(); if (object.tagBindings) { if (!Array.isArray(object.tagBindings)) @@ -11780,7 +12328,7 @@ for (var i = 0; i < object.tagBindings.length; ++i) { if (typeof object.tagBindings[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.ListTagBindingsResponse.tagBindings: object expected"); - message.tagBindings[i] = $root.google.cloud.resourcemanager.v3.TagBinding.fromObject(object.tagBindings[i]); + message.tagBindings[i] = $root.google.cloud.resourcemanager.v3.TagBinding.fromObject(object.tagBindings[i], long + 1); } } if (object.nextPageToken != null) @@ -11866,7 +12414,7 @@ function ListEffectiveTagsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11951,9 +12499,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListEffectiveTagsRequest.decode = function decode(reader, length, error) { + ListEffectiveTagsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListEffectiveTagsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11973,7 +12525,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12004,9 +12556,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListEffectiveTagsRequest.verify = function verify(message) { + ListEffectiveTagsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -12027,9 +12583,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListEffectiveTagsRequest} ListEffectiveTagsRequest */ - ListEffectiveTagsRequest.fromObject = function fromObject(object) { + ListEffectiveTagsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListEffectiveTagsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListEffectiveTagsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -12118,7 +12678,7 @@ this.effectiveTags = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12194,9 +12754,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListEffectiveTagsResponse.decode = function decode(reader, length, error) { + ListEffectiveTagsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListEffectiveTagsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12206,7 +12770,7 @@ case 1: { if (!(message.effectiveTags && message.effectiveTags.length)) message.effectiveTags = []; - message.effectiveTags.push($root.google.cloud.resourcemanager.v3.EffectiveTag.decode(reader, reader.uint32())); + message.effectiveTags.push($root.google.cloud.resourcemanager.v3.EffectiveTag.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -12214,7 +12778,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12245,14 +12809,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListEffectiveTagsResponse.verify = function verify(message) { + ListEffectiveTagsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.effectiveTags != null && message.hasOwnProperty("effectiveTags")) { if (!Array.isArray(message.effectiveTags)) return "effectiveTags: array expected"; for (var i = 0; i < message.effectiveTags.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.EffectiveTag.verify(message.effectiveTags[i]); + var error = $root.google.cloud.resourcemanager.v3.EffectiveTag.verify(message.effectiveTags[i], long + 1); if (error) return "effectiveTags." + error; } @@ -12271,9 +12839,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListEffectiveTagsResponse} ListEffectiveTagsResponse */ - ListEffectiveTagsResponse.fromObject = function fromObject(object) { + ListEffectiveTagsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListEffectiveTagsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListEffectiveTagsResponse(); if (object.effectiveTags) { if (!Array.isArray(object.effectiveTags)) @@ -12282,7 +12854,7 @@ for (var i = 0; i < object.effectiveTags.length; ++i) { if (typeof object.effectiveTags[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.ListEffectiveTagsResponse.effectiveTags: object expected"); - message.effectiveTags[i] = $root.google.cloud.resourcemanager.v3.EffectiveTag.fromObject(object.effectiveTags[i]); + message.effectiveTags[i] = $root.google.cloud.resourcemanager.v3.EffectiveTag.fromObject(object.effectiveTags[i], long + 1); } } if (object.nextPageToken != null) @@ -12371,7 +12943,7 @@ function EffectiveTag(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12486,9 +13058,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EffectiveTag.decode = function decode(reader, length, error) { + EffectiveTag.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.EffectiveTag(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12520,7 +13096,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12551,9 +13127,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EffectiveTag.verify = function verify(message) { + EffectiveTag.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagValue != null && message.hasOwnProperty("tagValue")) if (!$util.isString(message.tagValue)) return "tagValue: string expected"; @@ -12583,9 +13163,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.EffectiveTag} EffectiveTag */ - EffectiveTag.fromObject = function fromObject(object) { + EffectiveTag.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.EffectiveTag) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.EffectiveTag(); if (object.tagValue != null) message.tagValue = String(object.tagValue); @@ -12825,7 +13409,7 @@ function TagHold(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12930,9 +13514,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TagHold.decode = function decode(reader, length, error) { + TagHold.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.TagHold(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12956,11 +13544,11 @@ break; } case 5: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12991,9 +13579,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TagHold.verify = function verify(message) { + TagHold.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -13007,7 +13599,7 @@ if (!$util.isString(message.helpLink)) return "helpLink: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } @@ -13022,9 +13614,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.TagHold} TagHold */ - TagHold.fromObject = function fromObject(object) { + TagHold.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.TagHold) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.TagHold(); if (object.name != null) message.name = String(object.name); @@ -13037,7 +13633,7 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.TagHold.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } return message; }; @@ -13126,7 +13722,7 @@ function CreateTagHoldRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13211,9 +13807,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateTagHoldRequest.decode = function decode(reader, length, error) { + CreateTagHoldRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateTagHoldRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13225,7 +13825,7 @@ break; } case 2: { - message.tagHold = $root.google.cloud.resourcemanager.v3.TagHold.decode(reader, reader.uint32()); + message.tagHold = $root.google.cloud.resourcemanager.v3.TagHold.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -13233,7 +13833,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13264,14 +13864,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateTagHoldRequest.verify = function verify(message) { + CreateTagHoldRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.tagHold != null && message.hasOwnProperty("tagHold")) { - var error = $root.google.cloud.resourcemanager.v3.TagHold.verify(message.tagHold); + var error = $root.google.cloud.resourcemanager.v3.TagHold.verify(message.tagHold, long + 1); if (error) return "tagHold." + error; } @@ -13289,16 +13893,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateTagHoldRequest} CreateTagHoldRequest */ - CreateTagHoldRequest.fromObject = function fromObject(object) { + CreateTagHoldRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateTagHoldRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.CreateTagHoldRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.tagHold != null) { if (typeof object.tagHold !== "object") throw TypeError(".google.cloud.resourcemanager.v3.CreateTagHoldRequest.tagHold: object expected"); - message.tagHold = $root.google.cloud.resourcemanager.v3.TagHold.fromObject(object.tagHold); + message.tagHold = $root.google.cloud.resourcemanager.v3.TagHold.fromObject(object.tagHold, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -13380,7 +13988,7 @@ function CreateTagHoldMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13435,9 +14043,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateTagHoldMetadata.decode = function decode(reader, length, error) { + CreateTagHoldMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateTagHoldMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13445,7 +14057,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13476,9 +14088,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateTagHoldMetadata.verify = function verify(message) { + CreateTagHoldMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -13490,9 +14106,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateTagHoldMetadata} CreateTagHoldMetadata */ - CreateTagHoldMetadata.fromObject = function fromObject(object) { + CreateTagHoldMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateTagHoldMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.CreateTagHoldMetadata(); }; @@ -13559,7 +14179,7 @@ function DeleteTagHoldRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13634,9 +14254,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTagHoldRequest.decode = function decode(reader, length, error) { + DeleteTagHoldRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteTagHoldRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13652,7 +14276,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13683,9 +14307,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTagHoldRequest.verify = function verify(message) { + DeleteTagHoldRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -13703,9 +14331,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteTagHoldRequest} DeleteTagHoldRequest */ - DeleteTagHoldRequest.fromObject = function fromObject(object) { + DeleteTagHoldRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteTagHoldRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.DeleteTagHoldRequest(); if (object.name != null) message.name = String(object.name); @@ -13786,7 +14418,7 @@ function DeleteTagHoldMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13841,9 +14473,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTagHoldMetadata.decode = function decode(reader, length, error) { + DeleteTagHoldMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteTagHoldMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13851,7 +14487,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13882,9 +14518,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTagHoldMetadata.verify = function verify(message) { + DeleteTagHoldMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -13896,9 +14536,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteTagHoldMetadata} DeleteTagHoldMetadata */ - DeleteTagHoldMetadata.fromObject = function fromObject(object) { + DeleteTagHoldMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteTagHoldMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.DeleteTagHoldMetadata(); }; @@ -13967,7 +14611,7 @@ function ListTagHoldsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14062,9 +14706,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTagHoldsRequest.decode = function decode(reader, length, error) { + ListTagHoldsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListTagHoldsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14088,7 +14736,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14119,9 +14767,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTagHoldsRequest.verify = function verify(message) { + ListTagHoldsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -14145,9 +14797,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListTagHoldsRequest} ListTagHoldsRequest */ - ListTagHoldsRequest.fromObject = function fromObject(object) { + ListTagHoldsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListTagHoldsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListTagHoldsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -14241,7 +14897,7 @@ this.tagHolds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14317,9 +14973,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTagHoldsResponse.decode = function decode(reader, length, error) { + ListTagHoldsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListTagHoldsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14329,7 +14989,7 @@ case 1: { if (!(message.tagHolds && message.tagHolds.length)) message.tagHolds = []; - message.tagHolds.push($root.google.cloud.resourcemanager.v3.TagHold.decode(reader, reader.uint32())); + message.tagHolds.push($root.google.cloud.resourcemanager.v3.TagHold.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -14337,7 +14997,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14368,14 +15028,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTagHoldsResponse.verify = function verify(message) { + ListTagHoldsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagHolds != null && message.hasOwnProperty("tagHolds")) { if (!Array.isArray(message.tagHolds)) return "tagHolds: array expected"; for (var i = 0; i < message.tagHolds.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.TagHold.verify(message.tagHolds[i]); + var error = $root.google.cloud.resourcemanager.v3.TagHold.verify(message.tagHolds[i], long + 1); if (error) return "tagHolds." + error; } @@ -14394,9 +15058,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListTagHoldsResponse} ListTagHoldsResponse */ - ListTagHoldsResponse.fromObject = function fromObject(object) { + ListTagHoldsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListTagHoldsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListTagHoldsResponse(); if (object.tagHolds) { if (!Array.isArray(object.tagHolds)) @@ -14405,7 +15073,7 @@ for (var i = 0; i < object.tagHolds.length; ++i) { if (typeof object.tagHolds[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.ListTagHoldsResponse.tagHolds: object expected"); - message.tagHolds[i] = $root.google.cloud.resourcemanager.v3.TagHold.fromObject(object.tagHolds[i]); + message.tagHolds[i] = $root.google.cloud.resourcemanager.v3.TagHold.fromObject(object.tagHolds[i], long + 1); } } if (object.nextPageToken != null) @@ -14831,7 +15499,7 @@ this.purposeData = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14987,9 +15655,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TagKey.decode = function decode(reader, length, error) { + TagKey.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.TagKey(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -15017,11 +15689,11 @@ break; } case 6: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -15048,15 +15720,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.purposeData, key); message.purposeData[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15087,9 +15761,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TagKey.verify = function verify(message) { + TagKey.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -15106,12 +15784,12 @@ if (!$util.isString(message.description)) return "description: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -15145,9 +15823,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.TagKey} TagKey */ - TagKey.fromObject = function fromObject(object) { + TagKey.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.TagKey) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.TagKey(); if (object.name != null) message.name = String(object.name); @@ -15162,12 +15844,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.TagKey.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.TagKey.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.etag != null) message.etag = String(object.etag); @@ -15191,8 +15873,11 @@ if (typeof object.purposeData !== "object") throw TypeError(".google.cloud.resourcemanager.v3.TagKey.purposeData: object expected"); message.purposeData = {}; - for (var keys = Object.keys(object.purposeData), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.purposeData), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.purposeData, keys[i]); message.purposeData[keys[i]] = String(object.purposeData[keys[i]]); + } } return message; }; @@ -15244,8 +15929,11 @@ var keys2; if (message.purposeData && (keys2 = Object.keys(message.purposeData)).length) { object.purposeData = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.purposeData, keys2[j]); object.purposeData[keys2[j]] = message.purposeData[keys2[j]]; + } } return object; }; @@ -15301,7 +15989,7 @@ function ListTagKeysRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15386,9 +16074,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTagKeysRequest.decode = function decode(reader, length, error) { + ListTagKeysRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListTagKeysRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15408,7 +16100,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15439,9 +16131,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTagKeysRequest.verify = function verify(message) { + ListTagKeysRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -15462,9 +16158,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListTagKeysRequest} ListTagKeysRequest */ - ListTagKeysRequest.fromObject = function fromObject(object) { + ListTagKeysRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListTagKeysRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListTagKeysRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -15553,7 +16253,7 @@ this.tagKeys = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15629,9 +16329,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTagKeysResponse.decode = function decode(reader, length, error) { + ListTagKeysResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListTagKeysResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15641,7 +16345,7 @@ case 1: { if (!(message.tagKeys && message.tagKeys.length)) message.tagKeys = []; - message.tagKeys.push($root.google.cloud.resourcemanager.v3.TagKey.decode(reader, reader.uint32())); + message.tagKeys.push($root.google.cloud.resourcemanager.v3.TagKey.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -15649,7 +16353,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15680,14 +16384,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTagKeysResponse.verify = function verify(message) { + ListTagKeysResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagKeys != null && message.hasOwnProperty("tagKeys")) { if (!Array.isArray(message.tagKeys)) return "tagKeys: array expected"; for (var i = 0; i < message.tagKeys.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.TagKey.verify(message.tagKeys[i]); + var error = $root.google.cloud.resourcemanager.v3.TagKey.verify(message.tagKeys[i], long + 1); if (error) return "tagKeys." + error; } @@ -15706,9 +16414,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListTagKeysResponse} ListTagKeysResponse */ - ListTagKeysResponse.fromObject = function fromObject(object) { + ListTagKeysResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListTagKeysResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListTagKeysResponse(); if (object.tagKeys) { if (!Array.isArray(object.tagKeys)) @@ -15717,7 +16429,7 @@ for (var i = 0; i < object.tagKeys.length; ++i) { if (typeof object.tagKeys[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.ListTagKeysResponse.tagKeys: object expected"); - message.tagKeys[i] = $root.google.cloud.resourcemanager.v3.TagKey.fromObject(object.tagKeys[i]); + message.tagKeys[i] = $root.google.cloud.resourcemanager.v3.TagKey.fromObject(object.tagKeys[i], long + 1); } } if (object.nextPageToken != null) @@ -15801,7 +16513,7 @@ function GetTagKeyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15866,9 +16578,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetTagKeyRequest.decode = function decode(reader, length, error) { + GetTagKeyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.GetTagKeyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15880,7 +16596,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15911,9 +16627,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetTagKeyRequest.verify = function verify(message) { + GetTagKeyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -15928,9 +16648,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.GetTagKeyRequest} GetTagKeyRequest */ - GetTagKeyRequest.fromObject = function fromObject(object) { + GetTagKeyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.GetTagKeyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.GetTagKeyRequest(); if (object.name != null) message.name = String(object.name); @@ -16006,7 +16730,7 @@ function GetNamespacedTagKeyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16071,9 +16795,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetNamespacedTagKeyRequest.decode = function decode(reader, length, error) { + GetNamespacedTagKeyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.GetNamespacedTagKeyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16085,7 +16813,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16116,9 +16844,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetNamespacedTagKeyRequest.verify = function verify(message) { + GetNamespacedTagKeyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -16133,9 +16865,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.GetNamespacedTagKeyRequest} GetNamespacedTagKeyRequest */ - GetNamespacedTagKeyRequest.fromObject = function fromObject(object) { + GetNamespacedTagKeyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.GetNamespacedTagKeyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.GetNamespacedTagKeyRequest(); if (object.name != null) message.name = String(object.name); @@ -16212,7 +16948,7 @@ function CreateTagKeyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16287,9 +17023,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateTagKeyRequest.decode = function decode(reader, length, error) { + CreateTagKeyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateTagKeyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16297,7 +17037,7 @@ break; switch (tag >>> 3) { case 1: { - message.tagKey = $root.google.cloud.resourcemanager.v3.TagKey.decode(reader, reader.uint32()); + message.tagKey = $root.google.cloud.resourcemanager.v3.TagKey.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -16305,7 +17045,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16336,11 +17076,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateTagKeyRequest.verify = function verify(message) { + CreateTagKeyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagKey != null && message.hasOwnProperty("tagKey")) { - var error = $root.google.cloud.resourcemanager.v3.TagKey.verify(message.tagKey); + var error = $root.google.cloud.resourcemanager.v3.TagKey.verify(message.tagKey, long + 1); if (error) return "tagKey." + error; } @@ -16358,14 +17102,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateTagKeyRequest} CreateTagKeyRequest */ - CreateTagKeyRequest.fromObject = function fromObject(object) { + CreateTagKeyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateTagKeyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.CreateTagKeyRequest(); if (object.tagKey != null) { if (typeof object.tagKey !== "object") throw TypeError(".google.cloud.resourcemanager.v3.CreateTagKeyRequest.tagKey: object expected"); - message.tagKey = $root.google.cloud.resourcemanager.v3.TagKey.fromObject(object.tagKey); + message.tagKey = $root.google.cloud.resourcemanager.v3.TagKey.fromObject(object.tagKey, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -16444,7 +17192,7 @@ function CreateTagKeyMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16499,9 +17247,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateTagKeyMetadata.decode = function decode(reader, length, error) { + CreateTagKeyMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateTagKeyMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16509,7 +17261,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16540,9 +17292,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateTagKeyMetadata.verify = function verify(message) { + CreateTagKeyMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -16554,9 +17310,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateTagKeyMetadata} CreateTagKeyMetadata */ - CreateTagKeyMetadata.fromObject = function fromObject(object) { + CreateTagKeyMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateTagKeyMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.CreateTagKeyMetadata(); }; @@ -16624,7 +17384,7 @@ function UpdateTagKeyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16709,9 +17469,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateTagKeyRequest.decode = function decode(reader, length, error) { + UpdateTagKeyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UpdateTagKeyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16719,11 +17483,11 @@ break; switch (tag >>> 3) { case 1: { - message.tagKey = $root.google.cloud.resourcemanager.v3.TagKey.decode(reader, reader.uint32()); + message.tagKey = $root.google.cloud.resourcemanager.v3.TagKey.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -16731,7 +17495,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16762,16 +17526,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateTagKeyRequest.verify = function verify(message) { + UpdateTagKeyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagKey != null && message.hasOwnProperty("tagKey")) { - var error = $root.google.cloud.resourcemanager.v3.TagKey.verify(message.tagKey); + var error = $root.google.cloud.resourcemanager.v3.TagKey.verify(message.tagKey, long + 1); if (error) return "tagKey." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -16789,19 +17557,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UpdateTagKeyRequest} UpdateTagKeyRequest */ - UpdateTagKeyRequest.fromObject = function fromObject(object) { + UpdateTagKeyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UpdateTagKeyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.UpdateTagKeyRequest(); if (object.tagKey != null) { if (typeof object.tagKey !== "object") throw TypeError(".google.cloud.resourcemanager.v3.UpdateTagKeyRequest.tagKey: object expected"); - message.tagKey = $root.google.cloud.resourcemanager.v3.TagKey.fromObject(object.tagKey); + message.tagKey = $root.google.cloud.resourcemanager.v3.TagKey.fromObject(object.tagKey, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.resourcemanager.v3.UpdateTagKeyRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -16883,7 +17655,7 @@ function UpdateTagKeyMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16938,9 +17710,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateTagKeyMetadata.decode = function decode(reader, length, error) { + UpdateTagKeyMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UpdateTagKeyMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16948,7 +17724,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16979,9 +17755,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateTagKeyMetadata.verify = function verify(message) { + UpdateTagKeyMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -16993,9 +17773,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UpdateTagKeyMetadata} UpdateTagKeyMetadata */ - UpdateTagKeyMetadata.fromObject = function fromObject(object) { + UpdateTagKeyMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UpdateTagKeyMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.UpdateTagKeyMetadata(); }; @@ -17063,7 +17847,7 @@ function DeleteTagKeyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17148,9 +17932,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTagKeyRequest.decode = function decode(reader, length, error) { + DeleteTagKeyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteTagKeyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17170,7 +17958,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17201,9 +17989,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTagKeyRequest.verify = function verify(message) { + DeleteTagKeyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -17224,9 +18016,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteTagKeyRequest} DeleteTagKeyRequest */ - DeleteTagKeyRequest.fromObject = function fromObject(object) { + DeleteTagKeyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteTagKeyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.DeleteTagKeyRequest(); if (object.name != null) message.name = String(object.name); @@ -17312,7 +18108,7 @@ function DeleteTagKeyMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17367,9 +18163,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTagKeyMetadata.decode = function decode(reader, length, error) { + DeleteTagKeyMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteTagKeyMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17377,7 +18177,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17408,9 +18208,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTagKeyMetadata.verify = function verify(message) { + DeleteTagKeyMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -17422,9 +18226,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteTagKeyMetadata} DeleteTagKeyMetadata */ - DeleteTagKeyMetadata.fromObject = function fromObject(object) { + DeleteTagKeyMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteTagKeyMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.DeleteTagKeyMetadata(); }; @@ -17843,7 +18651,7 @@ function TagValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17978,9 +18786,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TagValue.decode = function decode(reader, length, error) { + TagValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.TagValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18008,11 +18820,11 @@ break; } case 6: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -18020,7 +18832,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18051,9 +18863,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TagValue.verify = function verify(message) { + TagValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -18070,12 +18886,12 @@ if (!$util.isString(message.description)) return "description: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -18093,9 +18909,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.TagValue} TagValue */ - TagValue.fromObject = function fromObject(object) { + TagValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.TagValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.TagValue(); if (object.name != null) message.name = String(object.name); @@ -18110,12 +18930,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.TagValue.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.resourcemanager.v3.TagValue.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.etag != null) message.etag = String(object.etag); @@ -18215,7 +19035,7 @@ function ListTagValuesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18300,9 +19120,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTagValuesRequest.decode = function decode(reader, length, error) { + ListTagValuesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListTagValuesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18322,7 +19146,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18353,9 +19177,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTagValuesRequest.verify = function verify(message) { + ListTagValuesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -18376,9 +19204,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListTagValuesRequest} ListTagValuesRequest */ - ListTagValuesRequest.fromObject = function fromObject(object) { + ListTagValuesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListTagValuesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListTagValuesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -18467,7 +19299,7 @@ this.tagValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18543,9 +19375,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTagValuesResponse.decode = function decode(reader, length, error) { + ListTagValuesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.ListTagValuesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18555,7 +19391,7 @@ case 1: { if (!(message.tagValues && message.tagValues.length)) message.tagValues = []; - message.tagValues.push($root.google.cloud.resourcemanager.v3.TagValue.decode(reader, reader.uint32())); + message.tagValues.push($root.google.cloud.resourcemanager.v3.TagValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -18563,7 +19399,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18594,14 +19430,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTagValuesResponse.verify = function verify(message) { + ListTagValuesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagValues != null && message.hasOwnProperty("tagValues")) { if (!Array.isArray(message.tagValues)) return "tagValues: array expected"; for (var i = 0; i < message.tagValues.length; ++i) { - var error = $root.google.cloud.resourcemanager.v3.TagValue.verify(message.tagValues[i]); + var error = $root.google.cloud.resourcemanager.v3.TagValue.verify(message.tagValues[i], long + 1); if (error) return "tagValues." + error; } @@ -18620,9 +19460,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.ListTagValuesResponse} ListTagValuesResponse */ - ListTagValuesResponse.fromObject = function fromObject(object) { + ListTagValuesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.ListTagValuesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.ListTagValuesResponse(); if (object.tagValues) { if (!Array.isArray(object.tagValues)) @@ -18631,7 +19475,7 @@ for (var i = 0; i < object.tagValues.length; ++i) { if (typeof object.tagValues[i] !== "object") throw TypeError(".google.cloud.resourcemanager.v3.ListTagValuesResponse.tagValues: object expected"); - message.tagValues[i] = $root.google.cloud.resourcemanager.v3.TagValue.fromObject(object.tagValues[i]); + message.tagValues[i] = $root.google.cloud.resourcemanager.v3.TagValue.fromObject(object.tagValues[i], long + 1); } } if (object.nextPageToken != null) @@ -18715,7 +19559,7 @@ function GetTagValueRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18780,9 +19624,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetTagValueRequest.decode = function decode(reader, length, error) { + GetTagValueRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.GetTagValueRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18794,7 +19642,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18825,9 +19673,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetTagValueRequest.verify = function verify(message) { + GetTagValueRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -18842,9 +19694,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.GetTagValueRequest} GetTagValueRequest */ - GetTagValueRequest.fromObject = function fromObject(object) { + GetTagValueRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.GetTagValueRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.GetTagValueRequest(); if (object.name != null) message.name = String(object.name); @@ -18920,7 +19776,7 @@ function GetNamespacedTagValueRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18985,9 +19841,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetNamespacedTagValueRequest.decode = function decode(reader, length, error) { + GetNamespacedTagValueRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.GetNamespacedTagValueRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18999,7 +19859,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19030,9 +19890,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetNamespacedTagValueRequest.verify = function verify(message) { + GetNamespacedTagValueRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -19047,9 +19911,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.GetNamespacedTagValueRequest} GetNamespacedTagValueRequest */ - GetNamespacedTagValueRequest.fromObject = function fromObject(object) { + GetNamespacedTagValueRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.GetNamespacedTagValueRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.GetNamespacedTagValueRequest(); if (object.name != null) message.name = String(object.name); @@ -19126,7 +19994,7 @@ function CreateTagValueRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19201,9 +20069,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateTagValueRequest.decode = function decode(reader, length, error) { + CreateTagValueRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateTagValueRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19211,7 +20083,7 @@ break; switch (tag >>> 3) { case 1: { - message.tagValue = $root.google.cloud.resourcemanager.v3.TagValue.decode(reader, reader.uint32()); + message.tagValue = $root.google.cloud.resourcemanager.v3.TagValue.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -19219,7 +20091,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19250,11 +20122,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateTagValueRequest.verify = function verify(message) { + CreateTagValueRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagValue != null && message.hasOwnProperty("tagValue")) { - var error = $root.google.cloud.resourcemanager.v3.TagValue.verify(message.tagValue); + var error = $root.google.cloud.resourcemanager.v3.TagValue.verify(message.tagValue, long + 1); if (error) return "tagValue." + error; } @@ -19272,14 +20148,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateTagValueRequest} CreateTagValueRequest */ - CreateTagValueRequest.fromObject = function fromObject(object) { + CreateTagValueRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateTagValueRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.CreateTagValueRequest(); if (object.tagValue != null) { if (typeof object.tagValue !== "object") throw TypeError(".google.cloud.resourcemanager.v3.CreateTagValueRequest.tagValue: object expected"); - message.tagValue = $root.google.cloud.resourcemanager.v3.TagValue.fromObject(object.tagValue); + message.tagValue = $root.google.cloud.resourcemanager.v3.TagValue.fromObject(object.tagValue, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -19358,7 +20238,7 @@ function CreateTagValueMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19413,9 +20293,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateTagValueMetadata.decode = function decode(reader, length, error) { + CreateTagValueMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.CreateTagValueMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19423,7 +20307,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19454,9 +20338,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateTagValueMetadata.verify = function verify(message) { + CreateTagValueMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -19468,9 +20356,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.CreateTagValueMetadata} CreateTagValueMetadata */ - CreateTagValueMetadata.fromObject = function fromObject(object) { + CreateTagValueMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.CreateTagValueMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.CreateTagValueMetadata(); }; @@ -19538,7 +20430,7 @@ function UpdateTagValueRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19623,9 +20515,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateTagValueRequest.decode = function decode(reader, length, error) { + UpdateTagValueRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UpdateTagValueRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19633,11 +20529,11 @@ break; switch (tag >>> 3) { case 1: { - message.tagValue = $root.google.cloud.resourcemanager.v3.TagValue.decode(reader, reader.uint32()); + message.tagValue = $root.google.cloud.resourcemanager.v3.TagValue.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -19645,7 +20541,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19676,16 +20572,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateTagValueRequest.verify = function verify(message) { + UpdateTagValueRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tagValue != null && message.hasOwnProperty("tagValue")) { - var error = $root.google.cloud.resourcemanager.v3.TagValue.verify(message.tagValue); + var error = $root.google.cloud.resourcemanager.v3.TagValue.verify(message.tagValue, long + 1); if (error) return "tagValue." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -19703,19 +20603,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UpdateTagValueRequest} UpdateTagValueRequest */ - UpdateTagValueRequest.fromObject = function fromObject(object) { + UpdateTagValueRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UpdateTagValueRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.UpdateTagValueRequest(); if (object.tagValue != null) { if (typeof object.tagValue !== "object") throw TypeError(".google.cloud.resourcemanager.v3.UpdateTagValueRequest.tagValue: object expected"); - message.tagValue = $root.google.cloud.resourcemanager.v3.TagValue.fromObject(object.tagValue); + message.tagValue = $root.google.cloud.resourcemanager.v3.TagValue.fromObject(object.tagValue, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.resourcemanager.v3.UpdateTagValueRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -19797,7 +20701,7 @@ function UpdateTagValueMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19852,9 +20756,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateTagValueMetadata.decode = function decode(reader, length, error) { + UpdateTagValueMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.UpdateTagValueMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19862,7 +20770,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19893,9 +20801,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateTagValueMetadata.verify = function verify(message) { + UpdateTagValueMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -19907,9 +20819,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.UpdateTagValueMetadata} UpdateTagValueMetadata */ - UpdateTagValueMetadata.fromObject = function fromObject(object) { + UpdateTagValueMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.UpdateTagValueMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.UpdateTagValueMetadata(); }; @@ -19977,7 +20893,7 @@ function DeleteTagValueRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20062,9 +20978,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTagValueRequest.decode = function decode(reader, length, error) { + DeleteTagValueRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteTagValueRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20084,7 +21004,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20115,9 +21035,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTagValueRequest.verify = function verify(message) { + DeleteTagValueRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -20138,9 +21062,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteTagValueRequest} DeleteTagValueRequest */ - DeleteTagValueRequest.fromObject = function fromObject(object) { + DeleteTagValueRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteTagValueRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.resourcemanager.v3.DeleteTagValueRequest(); if (object.name != null) message.name = String(object.name); @@ -20226,7 +21154,7 @@ function DeleteTagValueMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20281,9 +21209,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteTagValueMetadata.decode = function decode(reader, length, error) { + DeleteTagValueMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.resourcemanager.v3.DeleteTagValueMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20291,7 +21223,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20322,9 +21254,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteTagValueMetadata.verify = function verify(message) { + DeleteTagValueMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -20336,9 +21272,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.resourcemanager.v3.DeleteTagValueMetadata} DeleteTagValueMetadata */ - DeleteTagValueMetadata.fromObject = function fromObject(object) { + DeleteTagValueMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.resourcemanager.v3.DeleteTagValueMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.resourcemanager.v3.DeleteTagValueMetadata(); }; @@ -20424,7 +21364,7 @@ this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20500,9 +21440,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length, error) { + Http.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20512,7 +21456,7 @@ case 1: { if (!(message.rules && message.rules.length)) message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -20520,7 +21464,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20551,14 +21495,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + Http.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rules != null && message.hasOwnProperty("rules")) { if (!Array.isArray(message.rules)) return "rules: array expected"; for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); + var error = $root.google.api.HttpRule.verify(message.rules[i], long + 1); if (error) return "rules." + error; } @@ -20577,9 +21525,13 @@ * @param {Object.} object Plain object * @returns {google.api.Http} Http */ - Http.fromObject = function fromObject(object) { + Http.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Http) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Http(); if (object.rules) { if (!Array.isArray(object.rules)) @@ -20588,7 +21540,7 @@ for (var i = 0; i < object.rules.length; ++i) { if (typeof object.rules[i] !== "object") throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i], long + 1); } } if (object.fullyDecodeReservedExpansion != null) @@ -20682,7 +21634,7 @@ this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20852,9 +21804,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length, error) { + HttpRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20886,7 +21842,7 @@ break; } case 8: { - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -20900,11 +21856,11 @@ case 11: { if (!(message.additionalBindings && message.additionalBindings.length)) message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20935,9 +21891,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpRule.verify = function verify(message) { + HttpRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) @@ -20980,7 +21940,7 @@ return "pattern: multiple values"; properties.pattern = 1; { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); + var error = $root.google.api.CustomHttpPattern.verify(message.custom, long + 1); if (error) return "custom." + error; } @@ -20995,7 +21955,7 @@ if (!Array.isArray(message.additionalBindings)) return "additionalBindings: array expected"; for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i], long + 1); if (error) return "additionalBindings." + error; } @@ -21011,9 +21971,13 @@ * @param {Object.} object Plain object * @returns {google.api.HttpRule} HttpRule */ - HttpRule.fromObject = function fromObject(object) { + HttpRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.HttpRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.HttpRule(); if (object.selector != null) message.selector = String(object.selector); @@ -21030,7 +21994,7 @@ if (object.custom != null) { if (typeof object.custom !== "object") throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom, long + 1); } if (object.body != null) message.body = String(object.body); @@ -21043,7 +22007,7 @@ for (var i = 0; i < object.additionalBindings.length; ++i) { if (typeof object.additionalBindings[i] !== "object") throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i], long + 1); } } return message; @@ -21163,7 +22127,7 @@ function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21238,9 +22202,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length, error) { + CustomHttpPattern.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21256,7 +22224,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21287,9 +22255,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) if (!$util.isString(message.kind)) return "kind: string expected"; @@ -21307,9 +22279,13 @@ * @param {Object.} object Plain object * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - CustomHttpPattern.fromObject = function fromObject(object) { + CustomHttpPattern.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CustomHttpPattern) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CustomHttpPattern(); if (object.kind != null) message.kind = String(object.kind); @@ -21394,7 +22370,7 @@ this.destinations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21483,9 +22459,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CommonLanguageSettings.decode = function decode(reader, length, error) { + CommonLanguageSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CommonLanguageSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21508,11 +22488,11 @@ break; } case 3: { - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32()); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21543,9 +22523,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CommonLanguageSettings.verify = function verify(message) { + CommonLanguageSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.referenceDocsUri != null && message.hasOwnProperty("referenceDocsUri")) if (!$util.isString(message.referenceDocsUri)) return "referenceDocsUri: string expected"; @@ -21563,7 +22547,7 @@ } } if (message.selectiveGapicGeneration != null && message.hasOwnProperty("selectiveGapicGeneration")) { - var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration); + var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration, long + 1); if (error) return "selectiveGapicGeneration." + error; } @@ -21578,9 +22562,13 @@ * @param {Object.} object Plain object * @returns {google.api.CommonLanguageSettings} CommonLanguageSettings */ - CommonLanguageSettings.fromObject = function fromObject(object) { + CommonLanguageSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CommonLanguageSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CommonLanguageSettings(); if (object.referenceDocsUri != null) message.referenceDocsUri = String(object.referenceDocsUri); @@ -21612,7 +22600,7 @@ if (object.selectiveGapicGeneration != null) { if (typeof object.selectiveGapicGeneration !== "object") throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected"); - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration, long + 1); } return message; }; @@ -21707,7 +22695,7 @@ function ClientLibrarySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21872,9 +22860,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClientLibrarySettings.decode = function decode(reader, length, error) { + ClientLibrarySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ClientLibrarySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21894,39 +22886,39 @@ break; } case 21: { - message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32()); + message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32()); + message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { - message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32()); + message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32()); + message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32()); + message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { - message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32()); + message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32()); + message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32()); + message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21957,9 +22949,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClientLibrarySettings.verify = function verify(message) { + ClientLibrarySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isString(message.version)) return "version: string expected"; @@ -21981,42 +22977,42 @@ if (typeof message.restNumericEnums !== "boolean") return "restNumericEnums: boolean expected"; if (message.javaSettings != null && message.hasOwnProperty("javaSettings")) { - var error = $root.google.api.JavaSettings.verify(message.javaSettings); + var error = $root.google.api.JavaSettings.verify(message.javaSettings, long + 1); if (error) return "javaSettings." + error; } if (message.cppSettings != null && message.hasOwnProperty("cppSettings")) { - var error = $root.google.api.CppSettings.verify(message.cppSettings); + var error = $root.google.api.CppSettings.verify(message.cppSettings, long + 1); if (error) return "cppSettings." + error; } if (message.phpSettings != null && message.hasOwnProperty("phpSettings")) { - var error = $root.google.api.PhpSettings.verify(message.phpSettings); + var error = $root.google.api.PhpSettings.verify(message.phpSettings, long + 1); if (error) return "phpSettings." + error; } if (message.pythonSettings != null && message.hasOwnProperty("pythonSettings")) { - var error = $root.google.api.PythonSettings.verify(message.pythonSettings); + var error = $root.google.api.PythonSettings.verify(message.pythonSettings, long + 1); if (error) return "pythonSettings." + error; } if (message.nodeSettings != null && message.hasOwnProperty("nodeSettings")) { - var error = $root.google.api.NodeSettings.verify(message.nodeSettings); + var error = $root.google.api.NodeSettings.verify(message.nodeSettings, long + 1); if (error) return "nodeSettings." + error; } if (message.dotnetSettings != null && message.hasOwnProperty("dotnetSettings")) { - var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings); + var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings, long + 1); if (error) return "dotnetSettings." + error; } if (message.rubySettings != null && message.hasOwnProperty("rubySettings")) { - var error = $root.google.api.RubySettings.verify(message.rubySettings); + var error = $root.google.api.RubySettings.verify(message.rubySettings, long + 1); if (error) return "rubySettings." + error; } if (message.goSettings != null && message.hasOwnProperty("goSettings")) { - var error = $root.google.api.GoSettings.verify(message.goSettings); + var error = $root.google.api.GoSettings.verify(message.goSettings, long + 1); if (error) return "goSettings." + error; } @@ -22031,9 +23027,13 @@ * @param {Object.} object Plain object * @returns {google.api.ClientLibrarySettings} ClientLibrarySettings */ - ClientLibrarySettings.fromObject = function fromObject(object) { + ClientLibrarySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ClientLibrarySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ClientLibrarySettings(); if (object.version != null) message.version = String(object.version); @@ -22082,42 +23082,42 @@ if (object.javaSettings != null) { if (typeof object.javaSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected"); - message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings); + message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings, long + 1); } if (object.cppSettings != null) { if (typeof object.cppSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected"); - message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings); + message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings, long + 1); } if (object.phpSettings != null) { if (typeof object.phpSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected"); - message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings); + message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings, long + 1); } if (object.pythonSettings != null) { if (typeof object.pythonSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected"); - message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings); + message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings, long + 1); } if (object.nodeSettings != null) { if (typeof object.nodeSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected"); - message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings); + message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings, long + 1); } if (object.dotnetSettings != null) { if (typeof object.dotnetSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected"); - message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings); + message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings, long + 1); } if (object.rubySettings != null) { if (typeof object.rubySettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected"); - message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings); + message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings, long + 1); } if (object.goSettings != null) { if (typeof object.goSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected"); - message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings); + message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings, long + 1); } return message; }; @@ -22235,7 +23235,7 @@ this.librarySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22403,9 +23403,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Publishing.decode = function decode(reader, length, error) { + Publishing.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Publishing(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22415,7 +23419,7 @@ case 2: { if (!(message.methodSettings && message.methodSettings.length)) message.methodSettings = []; - message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32())); + message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 101: { @@ -22451,7 +23455,7 @@ case 109: { if (!(message.librarySettings && message.librarySettings.length)) message.librarySettings = []; - message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32())); + message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 110: { @@ -22463,7 +23467,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22494,14 +23498,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Publishing.verify = function verify(message) { + Publishing.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methodSettings != null && message.hasOwnProperty("methodSettings")) { if (!Array.isArray(message.methodSettings)) return "methodSettings: array expected"; for (var i = 0; i < message.methodSettings.length; ++i) { - var error = $root.google.api.MethodSettings.verify(message.methodSettings[i]); + var error = $root.google.api.MethodSettings.verify(message.methodSettings[i], long + 1); if (error) return "methodSettings." + error; } @@ -22546,7 +23554,7 @@ if (!Array.isArray(message.librarySettings)) return "librarySettings: array expected"; for (var i = 0; i < message.librarySettings.length; ++i) { - var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i]); + var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i], long + 1); if (error) return "librarySettings." + error; } @@ -22568,9 +23576,13 @@ * @param {Object.} object Plain object * @returns {google.api.Publishing} Publishing */ - Publishing.fromObject = function fromObject(object) { + Publishing.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Publishing) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Publishing(); if (object.methodSettings) { if (!Array.isArray(object.methodSettings)) @@ -22579,7 +23591,7 @@ for (var i = 0; i < object.methodSettings.length; ++i) { if (typeof object.methodSettings[i] !== "object") throw TypeError(".google.api.Publishing.methodSettings: object expected"); - message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i]); + message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i], long + 1); } } if (object.newIssueUri != null) @@ -22646,7 +23658,7 @@ for (var i = 0; i < object.librarySettings.length; ++i) { if (typeof object.librarySettings[i] !== "object") throw TypeError(".google.api.Publishing.librarySettings: object expected"); - message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]); + message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i], long + 1); } } if (object.protoReferenceDocumentationUri != null) @@ -22770,7 +23782,7 @@ this.serviceClassNames = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22856,9 +23868,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - JavaSettings.decode = function decode(reader, length, error) { + JavaSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.JavaSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -22885,19 +23901,21 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.serviceClassNames, key); message.serviceClassNames[key] = value; break; } case 3: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22928,9 +23946,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - JavaSettings.verify = function verify(message) { + JavaSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.libraryPackage != null && message.hasOwnProperty("libraryPackage")) if (!$util.isString(message.libraryPackage)) return "libraryPackage: string expected"; @@ -22943,7 +23965,7 @@ return "serviceClassNames: string{k:string} expected"; } if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -22958,9 +23980,13 @@ * @param {Object.} object Plain object * @returns {google.api.JavaSettings} JavaSettings */ - JavaSettings.fromObject = function fromObject(object) { + JavaSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.JavaSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.JavaSettings(); if (object.libraryPackage != null) message.libraryPackage = String(object.libraryPackage); @@ -22968,13 +23994,16 @@ if (typeof object.serviceClassNames !== "object") throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected"); message.serviceClassNames = {}; - for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.serviceClassNames, keys[i]); message.serviceClassNames[keys[i]] = String(object.serviceClassNames[keys[i]]); + } } if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.JavaSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -23003,8 +24032,11 @@ var keys2; if (message.serviceClassNames && (keys2 = Object.keys(message.serviceClassNames)).length) { object.serviceClassNames = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.serviceClassNames, keys2[j]); object.serviceClassNames[keys2[j]] = message.serviceClassNames[keys2[j]]; + } } if (message.common != null && message.hasOwnProperty("common")) object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options); @@ -23060,7 +24092,7 @@ function CppSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23125,9 +24157,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CppSettings.decode = function decode(reader, length, error) { + CppSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CppSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23135,11 +24171,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23170,11 +24206,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CppSettings.verify = function verify(message) { + CppSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -23189,14 +24229,18 @@ * @param {Object.} object Plain object * @returns {google.api.CppSettings} CppSettings */ - CppSettings.fromObject = function fromObject(object) { + CppSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CppSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CppSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.CppSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -23270,7 +24314,7 @@ function PhpSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23335,9 +24379,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PhpSettings.decode = function decode(reader, length, error) { + PhpSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PhpSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23345,11 +24393,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23380,11 +24428,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PhpSettings.verify = function verify(message) { + PhpSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -23399,14 +24451,18 @@ * @param {Object.} object Plain object * @returns {google.api.PhpSettings} PhpSettings */ - PhpSettings.fromObject = function fromObject(object) { + PhpSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PhpSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PhpSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PhpSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -23481,7 +24537,7 @@ function PythonSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23556,9 +24612,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PythonSettings.decode = function decode(reader, length, error) { + PythonSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23566,15 +24626,15 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32()); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23605,16 +24665,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PythonSettings.verify = function verify(message) { + PythonSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } if (message.experimentalFeatures != null && message.hasOwnProperty("experimentalFeatures")) { - var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures); + var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures, long + 1); if (error) return "experimentalFeatures." + error; } @@ -23629,19 +24693,23 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings} PythonSettings */ - PythonSettings.fromObject = function fromObject(object) { + PythonSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PythonSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.experimentalFeatures != null) { if (typeof object.experimentalFeatures !== "object") throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected"); - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures, long + 1); } return message; }; @@ -23718,7 +24786,7 @@ function ExperimentalFeatures(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23803,9 +24871,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentalFeatures.decode = function decode(reader, length, error) { + ExperimentalFeatures.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings.ExperimentalFeatures(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23825,7 +24897,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23856,9 +24928,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentalFeatures.verify = function verify(message) { + ExperimentalFeatures.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.restAsyncIoEnabled != null && message.hasOwnProperty("restAsyncIoEnabled")) if (typeof message.restAsyncIoEnabled !== "boolean") return "restAsyncIoEnabled: boolean expected"; @@ -23879,9 +24955,13 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings.ExperimentalFeatures} ExperimentalFeatures */ - ExperimentalFeatures.fromObject = function fromObject(object) { + ExperimentalFeatures.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings.ExperimentalFeatures) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings.ExperimentalFeatures(); if (object.restAsyncIoEnabled != null) message.restAsyncIoEnabled = Boolean(object.restAsyncIoEnabled); @@ -23971,7 +25051,7 @@ function NodeSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24036,9 +25116,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeSettings.decode = function decode(reader, length, error) { + NodeSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.NodeSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24046,11 +25130,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24081,11 +25165,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeSettings.verify = function verify(message) { + NodeSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -24100,14 +25188,18 @@ * @param {Object.} object Plain object * @returns {google.api.NodeSettings} NodeSettings */ - NodeSettings.fromObject = function fromObject(object) { + NodeSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.NodeSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.NodeSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.NodeSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -24191,7 +25283,7 @@ this.handwrittenSignatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24311,9 +25403,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DotnetSettings.decode = function decode(reader, length, error) { + DotnetSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -24321,7 +25417,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -24340,10 +25436,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } @@ -24363,10 +25461,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedResources, key); message.renamedResources[key] = value; break; } @@ -24389,7 +25489,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24420,11 +25520,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DotnetSettings.verify = function verify(message) { + DotnetSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -24476,28 +25580,38 @@ * @param {Object.} object Plain object * @returns {google.api.DotnetSettings} DotnetSettings */ - DotnetSettings.fromObject = function fromObject(object) { + DotnetSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.DotnetSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.DotnetSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.DotnetSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.DotnetSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } if (object.renamedResources) { if (typeof object.renamedResources !== "object") throw TypeError(".google.api.DotnetSettings.renamedResources: object expected"); message.renamedResources = {}; - for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedResources, keys[i]); message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]); + } } if (object.ignoredResources) { if (!Array.isArray(object.ignoredResources)) @@ -24552,13 +25666,19 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) { object.renamedResources = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedResources, keys2[j]); object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]]; + } } if (message.ignoredResources && message.ignoredResources.length) { object.ignoredResources = []; @@ -24627,7 +25747,7 @@ function RubySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24692,9 +25812,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RubySettings.decode = function decode(reader, length, error) { + RubySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RubySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24702,11 +25826,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24737,11 +25861,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RubySettings.verify = function verify(message) { + RubySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -24756,14 +25884,18 @@ * @param {Object.} object Plain object * @returns {google.api.RubySettings} RubySettings */ - RubySettings.fromObject = function fromObject(object) { + RubySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RubySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RubySettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.RubySettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -24839,7 +25971,7 @@ this.renamedServices = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24915,9 +26047,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoSettings.decode = function decode(reader, length, error) { + GoSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.GoSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -24925,7 +26061,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -24944,15 +26080,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24983,11 +26121,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoSettings.verify = function verify(message) { + GoSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -25010,21 +26152,28 @@ * @param {Object.} object Plain object * @returns {google.api.GoSettings} GoSettings */ - GoSettings.fromObject = function fromObject(object) { + GoSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.GoSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.GoSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.GoSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.GoSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } return message; }; @@ -25051,8 +26200,11 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } return object; }; @@ -25109,7 +26261,7 @@ this.autoPopulatedFields = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25195,9 +26347,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodSettings.decode = function decode(reader, length, error) { + MethodSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25209,7 +26365,7 @@ break; } case 2: { - message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32()); + message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -25219,7 +26375,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25250,14 +26406,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodSettings.verify = function verify(message) { + MethodSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) return "selector: string expected"; if (message.longRunning != null && message.hasOwnProperty("longRunning")) { - var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning); + var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning, long + 1); if (error) return "longRunning." + error; } @@ -25279,16 +26439,20 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings} MethodSettings */ - MethodSettings.fromObject = function fromObject(object) { + MethodSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings(); if (object.selector != null) message.selector = String(object.selector); if (object.longRunning != null) { if (typeof object.longRunning !== "object") throw TypeError(".google.api.MethodSettings.longRunning: object expected"); - message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning); + message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning, long + 1); } if (object.autoPopulatedFields) { if (!Array.isArray(object.autoPopulatedFields)) @@ -25380,7 +26544,7 @@ function LongRunning(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25475,9 +26639,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LongRunning.decode = function decode(reader, length, error) { + LongRunning.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings.LongRunning(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25485,7 +26653,7 @@ break; switch (tag >>> 3) { case 1: { - message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -25493,15 +26661,15 @@ break; } case 3: { - message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25532,11 +26700,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LongRunning.verify = function verify(message) { + LongRunning.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.initialPollDelay != null && message.hasOwnProperty("initialPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.initialPollDelay); + var error = $root.google.protobuf.Duration.verify(message.initialPollDelay, long + 1); if (error) return "initialPollDelay." + error; } @@ -25544,12 +26716,12 @@ if (typeof message.pollDelayMultiplier !== "number") return "pollDelayMultiplier: number expected"; if (message.maxPollDelay != null && message.hasOwnProperty("maxPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.maxPollDelay); + var error = $root.google.protobuf.Duration.verify(message.maxPollDelay, long + 1); if (error) return "maxPollDelay." + error; } if (message.totalPollTimeout != null && message.hasOwnProperty("totalPollTimeout")) { - var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout); + var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout, long + 1); if (error) return "totalPollTimeout." + error; } @@ -25564,26 +26736,30 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings.LongRunning} LongRunning */ - LongRunning.fromObject = function fromObject(object) { + LongRunning.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings.LongRunning) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings.LongRunning(); if (object.initialPollDelay != null) { if (typeof object.initialPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected"); - message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay); + message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay, long + 1); } if (object.pollDelayMultiplier != null) message.pollDelayMultiplier = Number(object.pollDelayMultiplier); if (object.maxPollDelay != null) { if (typeof object.maxPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected"); - message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay); + message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay, long + 1); } if (object.totalPollTimeout != null) { if (typeof object.totalPollTimeout !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected"); - message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout); + message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout, long + 1); } return message; }; @@ -25714,7 +26890,7 @@ this.methods = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25790,9 +26966,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectiveGapicGeneration.decode = function decode(reader, length, error) { + SelectiveGapicGeneration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.SelectiveGapicGeneration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25810,7 +26990,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25841,9 +27021,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectiveGapicGeneration.verify = function verify(message) { + SelectiveGapicGeneration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methods != null && message.hasOwnProperty("methods")) { if (!Array.isArray(message.methods)) return "methods: array expected"; @@ -25865,9 +27049,13 @@ * @param {Object.} object Plain object * @returns {google.api.SelectiveGapicGeneration} SelectiveGapicGeneration */ - SelectiveGapicGeneration.fromObject = function fromObject(object) { + SelectiveGapicGeneration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.SelectiveGapicGeneration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.SelectiveGapicGeneration(); if (object.methods) { if (!Array.isArray(object.methods)) @@ -26019,7 +27207,7 @@ this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26149,9 +27337,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length, error) { + ResourceDescriptor.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26196,7 +27388,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26227,9 +27419,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -26281,9 +27477,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - ResourceDescriptor.fromObject = function fromObject(object) { + ResourceDescriptor.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceDescriptor) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceDescriptor(); if (object.type != null) message.type = String(object.type); @@ -26471,7 +27671,7 @@ function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26546,9 +27746,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length, error) { + ResourceReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26564,7 +27768,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26595,9 +27799,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + ResourceReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -26615,9 +27823,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceReference} ResourceReference */ - ResourceReference.fromObject = function fromObject(object) { + ResourceReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceReference(); if (object.type != null) message.type = String(object.type); @@ -26712,7 +27924,7 @@ this.file = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26778,9 +27990,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorSet.decode = function decode(reader, length, error) { + FileDescriptorSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26790,11 +28006,11 @@ case 1: { if (!(message.file && message.file.length)) message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26825,14 +28041,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorSet.verify = function verify(message) { + FileDescriptorSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.file != null && message.hasOwnProperty("file")) { if (!Array.isArray(message.file)) return "file: array expected"; for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i], long + 1); if (error) return "file." + error; } @@ -26848,9 +28068,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet */ - FileDescriptorSet.fromObject = function fromObject(object) { + FileDescriptorSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorSet(); if (object.file) { if (!Array.isArray(object.file)) @@ -26859,7 +28083,7 @@ for (var i = 0; i < object.file.length; ++i) { if (typeof object.file[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i], long + 1); } } return message; @@ -26992,7 +28216,7 @@ this.extension = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27195,9 +28419,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorProto.decode = function decode(reader, length, error) { + FileDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27249,33 +28477,33 @@ case 4: { if (!(message.messageType && message.messageType.length)) message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.service && message.service.length)) message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -27287,7 +28515,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27318,9 +28546,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorProto.verify = function verify(message) { + FileDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -27359,7 +28591,7 @@ if (!Array.isArray(message.messageType)) return "messageType: array expected"; for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i], long + 1); if (error) return "messageType." + error; } @@ -27368,7 +28600,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -27377,7 +28609,7 @@ if (!Array.isArray(message.service)) return "service: array expected"; for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i], long + 1); if (error) return "service." + error; } @@ -27386,18 +28618,18 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); + var error = $root.google.protobuf.FileOptions.verify(message.options, long + 1); if (error) return "options." + error; } if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo, long + 1); if (error) return "sourceCodeInfo." + error; } @@ -27433,9 +28665,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto */ - FileDescriptorProto.fromObject = function fromObject(object) { + FileDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -27476,7 +28712,7 @@ for (var i = 0; i < object.messageType.length; ++i) { if (typeof object.messageType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i], long + 1); } } if (object.enumType) { @@ -27486,7 +28722,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.service) { @@ -27496,7 +28732,7 @@ for (var i = 0; i < object.service.length; ++i) { if (typeof object.service[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i], long + 1); } } if (object.extension) { @@ -27506,18 +28742,18 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options, long + 1); } if (object.sourceCodeInfo != null) { if (typeof object.sourceCodeInfo !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo, long + 1); } if (object.syntax != null) message.syntax = String(object.syntax); @@ -27733,7 +28969,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27906,9 +29142,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DescriptorProto.decode = function decode(reader, length, error) { + DescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27922,47 +29162,47 @@ case 2: { if (!(message.field && message.field.length)) message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.nestedType && message.nestedType.length)) message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.extensionRange && message.extensionRange.length)) message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { if (!(message.oneofDecl && message.oneofDecl.length)) message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 10: { @@ -27976,7 +29216,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28007,9 +29247,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DescriptorProto.verify = function verify(message) { + DescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -28017,7 +29261,7 @@ if (!Array.isArray(message.field)) return "field: array expected"; for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i], long + 1); if (error) return "field." + error; } @@ -28026,7 +29270,7 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } @@ -28035,7 +29279,7 @@ if (!Array.isArray(message.nestedType)) return "nestedType: array expected"; for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i], long + 1); if (error) return "nestedType." + error; } @@ -28044,7 +29288,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -28053,7 +29297,7 @@ if (!Array.isArray(message.extensionRange)) return "extensionRange: array expected"; for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i], long + 1); if (error) return "extensionRange." + error; } @@ -28062,13 +29306,13 @@ if (!Array.isArray(message.oneofDecl)) return "oneofDecl: array expected"; for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i], long + 1); if (error) return "oneofDecl." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); + var error = $root.google.protobuf.MessageOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -28076,7 +29320,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -28108,9 +29352,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto} DescriptorProto */ - DescriptorProto.fromObject = function fromObject(object) { + DescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -28121,7 +29369,7 @@ for (var i = 0; i < object.field.length; ++i) { if (typeof object.field[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i], long + 1); } } if (object.extension) { @@ -28131,7 +29379,7 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.nestedType) { @@ -28141,7 +29389,7 @@ for (var i = 0; i < object.nestedType.length; ++i) { if (typeof object.nestedType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i], long + 1); } } if (object.enumType) { @@ -28151,7 +29399,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.extensionRange) { @@ -28161,7 +29409,7 @@ for (var i = 0; i < object.extensionRange.length; ++i) { if (typeof object.extensionRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i], long + 1); } } if (object.oneofDecl) { @@ -28171,13 +29419,13 @@ for (var i = 0; i < object.oneofDecl.length; ++i) { if (typeof object.oneofDecl[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -28186,7 +29434,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -28344,7 +29592,7 @@ function ExtensionRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28429,9 +29677,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRange.decode = function decode(reader, length, error) { + ExtensionRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28447,11 +29699,11 @@ break; } case 3: { - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28482,9 +29734,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRange.verify = function verify(message) { + ExtensionRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -28492,7 +29748,7 @@ if (!$util.isInteger(message.end)) return "end: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -28507,9 +29763,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange */ - ExtensionRange.fromObject = function fromObject(object) { + ExtensionRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); if (object.start != null) message.start = object.start | 0; @@ -28518,7 +29778,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options, long + 1); } return message; }; @@ -28600,7 +29860,7 @@ function ReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28675,9 +29935,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReservedRange.decode = function decode(reader, length, error) { + ReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28693,7 +29957,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28724,9 +29988,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReservedRange.verify = function verify(message) { + ReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -28744,9 +30012,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange */ - ReservedRange.fromObject = function fromObject(object) { + ReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -28836,7 +30108,7 @@ this.declaration = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28933,9 +30205,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRangeOptions.decode = function decode(reader, length, error) { + ExtensionRangeOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28945,17 +30221,17 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.declaration && message.declaration.length)) message.declaration = []; - message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32())); + message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -28963,7 +30239,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28994,14 +30270,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRangeOptions.verify = function verify(message) { + ExtensionRangeOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -29010,13 +30290,13 @@ if (!Array.isArray(message.declaration)) return "declaration: array expected"; for (var i = 0; i < message.declaration.length; ++i) { - var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]); + var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i], long + 1); if (error) return "declaration." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -29039,9 +30319,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions */ - ExtensionRangeOptions.fromObject = function fromObject(object) { + ExtensionRangeOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions(); if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -29050,7 +30334,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object.declaration) { @@ -29060,13 +30344,13 @@ for (var i = 0; i < object.declaration.length; ++i) { if (typeof object.declaration[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected"); - message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]); + message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } switch (object.verification) { case "DECLARATION": @@ -29175,7 +30459,7 @@ function Declaration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29280,9 +30564,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Declaration.decode = function decode(reader, length, error) { + Declaration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29310,7 +30598,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29341,9 +30629,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Declaration.verify = function verify(message) { + Declaration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.number != null && message.hasOwnProperty("number")) if (!$util.isInteger(message.number)) return "number: integer expected"; @@ -29370,9 +30662,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration */ - Declaration.fromObject = function fromObject(object) { + Declaration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); if (object.number != null) message.number = object.number | 0; @@ -29496,7 +30792,7 @@ function FieldDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29661,9 +30957,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldDescriptorProto.decode = function decode(reader, length, error) { + FieldDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29707,7 +31007,7 @@ break; } case 8: { - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -29715,7 +31015,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29746,9 +31046,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldDescriptorProto.verify = function verify(message) { + FieldDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -29804,7 +31108,7 @@ if (!$util.isString(message.jsonName)) return "jsonName: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); + var error = $root.google.protobuf.FieldOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -29822,9 +31126,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto */ - FieldDescriptorProto.fromObject = function fromObject(object) { + FieldDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -29943,7 +31251,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options, long + 1); } if (object.proto3Optional != null) message.proto3Optional = Boolean(object.proto3Optional); @@ -30113,7 +31421,7 @@ function OneofDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30188,9 +31496,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofDescriptorProto.decode = function decode(reader, length, error) { + OneofDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30202,11 +31514,11 @@ break; } case 2: { - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30237,14 +31549,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofDescriptorProto.verify = function verify(message) { + OneofDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); + var error = $root.google.protobuf.OneofOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -30259,16 +31575,20 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto */ - OneofDescriptorProto.fromObject = function fromObject(object) { + OneofDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofDescriptorProto(); if (object.name != null) message.name = String(object.name); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options, long + 1); } return message; }; @@ -30354,7 +31674,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30472,9 +31792,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumDescriptorProto.decode = function decode(reader, length, error) { + EnumDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30488,17 +31812,17 @@ case 2: { if (!(message.value && message.value.length)) message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -30512,7 +31836,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30543,9 +31867,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumDescriptorProto.verify = function verify(message) { + EnumDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -30553,13 +31881,13 @@ if (!Array.isArray(message.value)) return "value: array expected"; for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i], long + 1); if (error) return "value." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); + var error = $root.google.protobuf.EnumOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -30567,7 +31895,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -30599,9 +31927,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto */ - EnumDescriptorProto.fromObject = function fromObject(object) { + EnumDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -30612,13 +31944,13 @@ for (var i = 0; i < object.value.length; ++i) { if (typeof object.value[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -30627,7 +31959,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -30754,7 +32086,7 @@ function EnumReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30829,9 +32161,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumReservedRange.decode = function decode(reader, length, error) { + EnumReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30847,7 +32183,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30878,9 +32214,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumReservedRange.verify = function verify(message) { + EnumReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -30898,9 +32238,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange */ - EnumReservedRange.fromObject = function fromObject(object) { + EnumReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -30987,7 +32331,7 @@ function EnumValueDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31072,9 +32416,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueDescriptorProto.decode = function decode(reader, length, error) { + EnumValueDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31090,11 +32438,11 @@ break; } case 3: { - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31125,9 +32473,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueDescriptorProto.verify = function verify(message) { + EnumValueDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -31135,7 +32487,7 @@ if (!$util.isInteger(message.number)) return "number: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + var error = $root.google.protobuf.EnumValueOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -31150,9 +32502,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { + EnumValueDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -31161,7 +32517,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options, long + 1); } return message; }; @@ -31245,7 +32601,7 @@ this.method = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31331,9 +32687,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceDescriptorProto.decode = function decode(reader, length, error) { + ServiceDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31347,15 +32707,15 @@ case 2: { if (!(message.method && message.method.length)) message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31386,9 +32746,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceDescriptorProto.verify = function verify(message) { + ServiceDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -31396,13 +32760,13 @@ if (!Array.isArray(message.method)) return "method: array expected"; for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i], long + 1); if (error) return "method." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); + var error = $root.google.protobuf.ServiceOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -31417,9 +32781,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto */ - ServiceDescriptorProto.fromObject = function fromObject(object) { + ServiceDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -31430,13 +32798,13 @@ for (var i = 0; i < object.method.length; ++i) { if (typeof object.method[i] !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options, long + 1); } return message; }; @@ -31526,7 +32894,7 @@ function MethodDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31641,9 +33009,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodDescriptorProto.decode = function decode(reader, length, error) { + MethodDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31663,7 +33035,7 @@ break; } case 4: { - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -31675,7 +33047,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31706,9 +33078,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodDescriptorProto.verify = function verify(message) { + MethodDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -31719,7 +33095,7 @@ if (!$util.isString(message.outputType)) return "outputType: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); + var error = $root.google.protobuf.MethodOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -31740,9 +33116,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto */ - MethodDescriptorProto.fromObject = function fromObject(object) { + MethodDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -31753,7 +33133,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options, long + 1); } if (object.clientStreaming != null) message.clientStreaming = Boolean(object.clientStreaming); @@ -31870,7 +33250,7 @@ this[".google.api.resourceDefinition"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32147,9 +33527,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileOptions.decode = function decode(reader, length, error) { + FileOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32233,23 +33617,23 @@ break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32280,9 +33664,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileOptions.verify = function verify(message) { + FileOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) if (!$util.isString(message.javaPackage)) return "javaPackage: string expected"; @@ -32347,7 +33735,7 @@ if (!$util.isString(message.rubyPackage)) return "rubyPackage: string expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -32355,7 +33743,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -32364,7 +33752,7 @@ if (!Array.isArray(message[".google.api.resourceDefinition"])) return ".google.api.resourceDefinition: array expected"; for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i], long + 1); if (error) return ".google.api.resourceDefinition." + error; } @@ -32380,9 +33768,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileOptions} FileOptions */ - FileOptions.fromObject = function fromObject(object) { + FileOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileOptions(); if (object.javaPackage != null) message.javaPackage = String(object.javaPackage); @@ -32443,7 +33835,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FileOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -32452,7 +33844,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resourceDefinition"]) { @@ -32462,7 +33854,7 @@ for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { if (typeof object[".google.api.resourceDefinition"][i] !== "object") throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i], long + 1); } } return message; @@ -32633,7 +34025,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32769,9 +34161,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageOptions.decode = function decode(reader, length, error) { + MessageOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32799,21 +34195,21 @@ break; } case 12: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32844,9 +34240,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MessageOptions.verify = function verify(message) { + MessageOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) if (typeof message.messageSetWireFormat !== "boolean") return "messageSetWireFormat: boolean expected"; @@ -32863,7 +34263,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -32871,13 +34271,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"], long + 1); if (error) return ".google.api.resource." + error; } @@ -32892,9 +34292,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MessageOptions} MessageOptions */ - MessageOptions.fromObject = function fromObject(object) { + MessageOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MessageOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MessageOptions(); if (object.messageSetWireFormat != null) message.messageSetWireFormat = Boolean(object.messageSetWireFormat); @@ -32909,7 +34313,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MessageOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -32918,13 +34322,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resource"] != null) { if (typeof object[".google.api.resource"] !== "object") throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"], long + 1); } return message; }; @@ -33043,7 +34447,7 @@ this[".google.api.fieldBehavior"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33262,9 +34666,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decode = function decode(reader, length, error) { + FieldOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33321,21 +34729,21 @@ case 20: { if (!(message.editionDefaults && message.editionDefaults.length)) message.editionDefaults = []; - message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32())); + message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1052: { @@ -33350,11 +34758,11 @@ break; } case 1055: { - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33385,9 +34793,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldOptions.verify = function verify(message) { + FieldOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ctype != null && message.hasOwnProperty("ctype")) switch (message.ctype) { default: @@ -33457,18 +34869,18 @@ if (!Array.isArray(message.editionDefaults)) return "editionDefaults: array expected"; for (var i = 0; i < message.editionDefaults.length; ++i) { - var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]); + var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i], long + 1); if (error) return "editionDefaults." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -33476,7 +34888,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -33501,7 +34913,7 @@ } } if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"], long + 1); if (error) return ".google.api.resourceReference." + error; } @@ -33516,9 +34928,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions} FieldOptions */ - FieldOptions.fromObject = function fromObject(object) { + FieldOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions(); switch (object.ctype) { default: @@ -33652,18 +35068,18 @@ for (var i = 0; i < object.editionDefaults.length; ++i) { if (typeof object.editionDefaults[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected"); - message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]); + message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FieldOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -33672,7 +35088,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.fieldBehavior"]) { @@ -33727,7 +35143,7 @@ if (object[".google.api.resourceReference"] != null) { if (typeof object[".google.api.resourceReference"] !== "object") throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"], long + 1); } return message; }; @@ -33937,7 +35353,7 @@ function EditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34012,9 +35428,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EditionDefault.decode = function decode(reader, length, error) { + EditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34030,7 +35450,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34061,9 +35481,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EditionDefault.verify = function verify(message) { + EditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -34096,9 +35520,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault */ - EditionDefault.fromObject = function fromObject(object) { + EditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.EditionDefault(); switch (object.edition) { default: @@ -34237,7 +35665,7 @@ function FeatureSupport(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34332,9 +35760,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSupport.decode = function decode(reader, length, error) { + FeatureSupport.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.FeatureSupport(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34358,7 +35790,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34389,9 +35821,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSupport.verify = function verify(message) { + FeatureSupport.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.editionIntroduced != null && message.hasOwnProperty("editionIntroduced")) switch (message.editionIntroduced) { default: @@ -34460,9 +35896,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.FeatureSupport} FeatureSupport */ - FeatureSupport.fromObject = function fromObject(object) { + FeatureSupport.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.FeatureSupport) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.FeatureSupport(); switch (object.editionIntroduced) { default: @@ -34721,7 +36161,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34797,9 +36237,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decode = function decode(reader, length, error) { + OneofOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34807,17 +36251,17 @@ break; switch (tag >>> 3) { case 1: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34848,11 +36292,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofOptions.verify = function verify(message) { + OneofOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -34860,7 +36308,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -34876,14 +36324,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofOptions} OneofOptions */ - OneofOptions.fromObject = function fromObject(object) { + OneofOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.OneofOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -34892,7 +36344,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -34979,7 +36431,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35085,9 +36537,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decode = function decode(reader, length, error) { + EnumOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35107,17 +36563,17 @@ break; } case 7: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35148,9 +36604,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumOptions.verify = function verify(message) { + EnumOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) if (typeof message.allowAlias !== "boolean") return "allowAlias: boolean expected"; @@ -35161,7 +36621,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -35169,7 +36629,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -35185,9 +36645,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumOptions} EnumOptions */ - EnumOptions.fromObject = function fromObject(object) { + EnumOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumOptions(); if (object.allowAlias != null) message.allowAlias = Boolean(object.allowAlias); @@ -35198,7 +36662,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -35207,7 +36671,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -35304,7 +36768,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35410,9 +36874,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decode = function decode(reader, length, error) { + EnumValueOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35424,7 +36892,7 @@ break; } case 2: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -35432,17 +36900,17 @@ break; } case 4: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35473,14 +36941,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueOptions.verify = function verify(message) { + EnumValueOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -35488,7 +36960,7 @@ if (typeof message.debugRedact !== "boolean") return "debugRedact: boolean expected"; if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -35496,7 +36968,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -35512,23 +36984,27 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueOptions} EnumValueOptions */ - EnumValueOptions.fromObject = function fromObject(object) { + EnumValueOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumValueOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.debugRedact != null) message.debugRedact = Boolean(object.debugRedact); if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -35537,7 +37013,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -35635,7 +37111,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35751,9 +37227,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decode = function decode(reader, length, error) { + ServiceOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35761,7 +37241,7 @@ break; switch (tag >>> 3) { case 34: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 33: { @@ -35771,7 +37251,7 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1049: { @@ -35787,7 +37267,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35818,11 +37298,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceOptions.verify = function verify(message) { + ServiceOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -35833,7 +37317,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -35858,14 +37342,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceOptions} ServiceOptions */ - ServiceOptions.fromObject = function fromObject(object) { + ServiceOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ServiceOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -35876,7 +37364,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.defaultHost"] != null) @@ -35985,7 +37473,7 @@ this[".google.api.methodSignature"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36112,9 +37600,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decode = function decode(reader, length, error) { + MethodOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36130,17 +37622,17 @@ break; } case 35: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 72295728: { - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1051: { @@ -36150,11 +37642,11 @@ break; } case 1049: { - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36185,9 +37677,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodOptions.verify = function verify(message) { + MethodOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; @@ -36201,7 +37697,7 @@ break; } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -36209,13 +37705,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + var error = $root.google.api.HttpRule.verify(message[".google.api.http"], long + 1); if (error) return ".google.api.http." + error; } @@ -36227,7 +37723,7 @@ return ".google.api.methodSignature: string[] expected"; } if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { - var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); + var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"], long + 1); if (error) return ".google.longrunning.operationInfo." + error; } @@ -36242,9 +37738,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodOptions} MethodOptions */ - MethodOptions.fromObject = function fromObject(object) { + MethodOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -36271,7 +37771,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MethodOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -36280,13 +37780,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.http"] != null) { if (typeof object[".google.api.http"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"], long + 1); } if (object[".google.api.methodSignature"]) { if (!Array.isArray(object[".google.api.methodSignature"])) @@ -36298,7 +37798,7 @@ if (object[".google.longrunning.operationInfo"] != null) { if (typeof object[".google.longrunning.operationInfo"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"], long + 1); } return message; }; @@ -36422,7 +37922,7 @@ this.name = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36548,9 +38048,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.decode = function decode(reader, length, error) { + UninterpretedOption.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36560,7 +38064,7 @@ case 2: { if (!(message.name && message.name.length)) message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -36588,7 +38092,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36619,14 +38123,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UninterpretedOption.verify = function verify(message) { + UninterpretedOption.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) { if (!Array.isArray(message.name)) return "name: array expected"; for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i], long + 1); if (error) return "name." + error; } @@ -36660,9 +38168,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption} UninterpretedOption */ - UninterpretedOption.fromObject = function fromObject(object) { + UninterpretedOption.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption(); if (object.name) { if (!Array.isArray(object.name)) @@ -36671,7 +38183,7 @@ for (var i = 0; i < object.name.length; ++i) { if (typeof object.name[i] !== "object") throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i], long + 1); } } if (object.identifierValue != null) @@ -36816,7 +38328,7 @@ function NamePart(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36889,9 +38401,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NamePart.decode = function decode(reader, length, error) { + NamePart.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36907,7 +38423,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36942,9 +38458,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NamePart.verify = function verify(message) { + NamePart.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (!$util.isString(message.namePart)) return "namePart: string expected"; if (typeof message.isExtension !== "boolean") @@ -36960,9 +38480,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart */ - NamePart.fromObject = function fromObject(object) { + NamePart.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption.NamePart(); if (object.namePart != null) message.namePart = String(object.namePart); @@ -37054,7 +38578,7 @@ function FeatureSet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37189,9 +38713,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSet.decode = function decode(reader, length, error) { + FeatureSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37231,7 +38759,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37262,9 +38790,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSet.verify = function verify(message) { + FeatureSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence")) switch (message.fieldPresence) { default: @@ -37351,9 +38883,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet} FeatureSet */ - FeatureSet.fromObject = function fromObject(object) { + FeatureSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSet(); switch (object.fieldPresence) { default: @@ -37731,7 +39267,7 @@ function VisibilityFeature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37786,9 +39322,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VisibilityFeature.decode = function decode(reader, length, error) { + VisibilityFeature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet.VisibilityFeature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37796,7 +39336,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37827,9 +39367,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VisibilityFeature.verify = function verify(message) { + VisibilityFeature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -37841,9 +39385,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet.VisibilityFeature} VisibilityFeature */ - VisibilityFeature.fromObject = function fromObject(object) { + VisibilityFeature.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.FeatureSet.VisibilityFeature(); }; @@ -37935,7 +39483,7 @@ this.defaults = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38021,9 +39569,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetDefaults.decode = function decode(reader, length, error) { + FeatureSetDefaults.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38033,7 +39585,7 @@ case 1: { if (!(message.defaults && message.defaults.length)) message.defaults = []; - message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32())); + message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -38045,7 +39597,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38076,14 +39628,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetDefaults.verify = function verify(message) { + FeatureSetDefaults.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.defaults != null && message.hasOwnProperty("defaults")) { if (!Array.isArray(message.defaults)) return "defaults: array expected"; for (var i = 0; i < message.defaults.length; ++i) { - var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]); + var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i], long + 1); if (error) return "defaults." + error; } @@ -38135,9 +39691,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults */ - FeatureSetDefaults.fromObject = function fromObject(object) { + FeatureSetDefaults.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults(); if (object.defaults) { if (!Array.isArray(object.defaults)) @@ -38146,7 +39706,7 @@ for (var i = 0; i < object.defaults.length; ++i) { if (typeof object.defaults[i] !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected"); - message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]); + message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i], long + 1); } } switch (object.minimumEdition) { @@ -38343,7 +39903,7 @@ function FeatureSetEditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38428,9 +39988,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetEditionDefault.decode = function decode(reader, length, error) { + FeatureSetEditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38442,15 +40006,15 @@ break; } case 4: { - message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38481,9 +40045,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetEditionDefault.verify = function verify(message) { + FeatureSetEditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -38503,12 +40071,12 @@ break; } if (message.overridableFeatures != null && message.hasOwnProperty("overridableFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures, long + 1); if (error) return "overridableFeatures." + error; } if (message.fixedFeatures != null && message.hasOwnProperty("fixedFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures, long + 1); if (error) return "fixedFeatures." + error; } @@ -38523,9 +40091,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault */ - FeatureSetEditionDefault.fromObject = function fromObject(object) { + FeatureSetEditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); switch (object.edition) { default: @@ -38586,12 +40158,12 @@ if (object.overridableFeatures != null) { if (typeof object.overridableFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected"); - message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures); + message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures, long + 1); } if (object.fixedFeatures != null) { if (typeof object.fixedFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected"); - message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures); + message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures, long + 1); } return message; }; @@ -38676,7 +40248,7 @@ this.location = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38742,9 +40314,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decode = function decode(reader, length, error) { + SourceCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38754,11 +40330,11 @@ case 1: { if (!(message.location && message.location.length)) message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38789,14 +40365,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCodeInfo.verify = function verify(message) { + SourceCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.location != null && message.hasOwnProperty("location")) { if (!Array.isArray(message.location)) return "location: array expected"; for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i], long + 1); if (error) return "location." + error; } @@ -38812,9 +40392,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo */ - SourceCodeInfo.fromObject = function fromObject(object) { + SourceCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo(); if (object.location) { if (!Array.isArray(object.location)) @@ -38823,7 +40407,7 @@ for (var i = 0; i < object.location.length; ++i) { if (typeof object.location[i] !== "object") throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i], long + 1); } } return message; @@ -38905,7 +40489,7 @@ this.leadingDetachedComments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39019,9 +40603,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Location.decode = function decode(reader, length, error) { + Location.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39065,7 +40653,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39096,9 +40684,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Location.verify = function verify(message) { + Location.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -39137,9 +40729,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo.Location} Location */ - Location.fromObject = function fromObject(object) { + Location.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo.Location(); if (object.path) { if (!Array.isArray(object.path)) @@ -39266,7 +40862,7 @@ this.annotation = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39332,9 +40928,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GeneratedCodeInfo.decode = function decode(reader, length, error) { + GeneratedCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39344,11 +40944,11 @@ case 1: { if (!(message.annotation && message.annotation.length)) message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39379,14 +40979,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GeneratedCodeInfo.verify = function verify(message) { + GeneratedCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.annotation != null && message.hasOwnProperty("annotation")) { if (!Array.isArray(message.annotation)) return "annotation: array expected"; for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i], long + 1); if (error) return "annotation." + error; } @@ -39402,9 +41006,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo */ - GeneratedCodeInfo.fromObject = function fromObject(object) { + GeneratedCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo(); if (object.annotation) { if (!Array.isArray(object.annotation)) @@ -39413,7 +41021,7 @@ for (var i = 0; i < object.annotation.length; ++i) { if (typeof object.annotation[i] !== "object") throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i], long + 1); } } return message; @@ -39493,7 +41101,7 @@ this.path = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39602,9 +41210,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decode = function decode(reader, length, error) { + Annotation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39639,7 +41251,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39670,9 +41282,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Annotation.verify = function verify(message) { + Annotation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -39709,9 +41325,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation */ - Annotation.fromObject = function fromObject(object) { + Annotation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); if (object.path) { if (!Array.isArray(object.path)) @@ -39871,7 +41491,7 @@ function Duration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39946,9 +41566,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decode = function decode(reader, length, error) { + Duration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Duration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39964,7 +41588,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39995,9 +41619,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Duration.verify = function verify(message) { + Duration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -40015,9 +41643,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Duration} Duration */ - Duration.fromObject = function fromObject(object) { + Duration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Duration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Duration(); if (object.seconds != null) if ($util.Long) @@ -40114,7 +41746,7 @@ this.paths = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40180,9 +41812,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decode = function decode(reader, length, error) { + FieldMask.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldMask(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40196,7 +41832,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40227,9 +41863,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldMask.verify = function verify(message) { + FieldMask.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.paths != null && message.hasOwnProperty("paths")) { if (!Array.isArray(message.paths)) return "paths: array expected"; @@ -40248,9 +41888,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldMask} FieldMask */ - FieldMask.fromObject = function fromObject(object) { + FieldMask.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldMask) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldMask(); if (object.paths) { if (!Array.isArray(object.paths)) @@ -40335,7 +41979,7 @@ function Any(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40410,9 +42054,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decode = function decode(reader, length, error) { + Any.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40428,7 +42076,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40459,9 +42107,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Any.verify = function verify(message) { + Any.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type_url != null && message.hasOwnProperty("type_url")) if (!$util.isString(message.type_url)) return "type_url: string expected"; @@ -40479,9 +42131,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Any} Any */ - Any.fromObject = function fromObject(object) { + Any.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Any) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Any(); if (object.type_url != null) message.type_url = String(object.type_url); @@ -40571,7 +42227,7 @@ function Empty(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40626,9 +42282,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length, error) { + Empty.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40636,7 +42296,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40667,9 +42327,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Empty.verify = function verify(message) { + Empty.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -40681,9 +42345,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Empty} Empty */ - Empty.fromObject = function fromObject(object) { + Empty.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Empty) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.Empty(); }; @@ -40750,7 +42418,7 @@ function Timestamp(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40825,9 +42493,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decode = function decode(reader, length, error) { + Timestamp.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40843,7 +42515,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40874,9 +42546,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Timestamp.verify = function verify(message) { + Timestamp.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -40894,9 +42570,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Timestamp} Timestamp */ - Timestamp.fromObject = function fromObject(object) { + Timestamp.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Timestamp) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Timestamp(); if (object.seconds != null) if ($util.Long) @@ -41149,7 +42829,7 @@ function SetIamPolicyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41234,9 +42914,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetIamPolicyRequest.decode = function decode(reader, length, error) { + SetIamPolicyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.SetIamPolicyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41248,15 +42932,15 @@ break; } case 2: { - message.policy = $root.google.iam.v1.Policy.decode(reader, reader.uint32()); + message.policy = $root.google.iam.v1.Policy.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41287,19 +42971,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetIamPolicyRequest.verify = function verify(message) { + SetIamPolicyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.resource != null && message.hasOwnProperty("resource")) if (!$util.isString(message.resource)) return "resource: string expected"; if (message.policy != null && message.hasOwnProperty("policy")) { - var error = $root.google.iam.v1.Policy.verify(message.policy); + var error = $root.google.iam.v1.Policy.verify(message.policy, long + 1); if (error) return "policy." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -41314,21 +43002,25 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.SetIamPolicyRequest} SetIamPolicyRequest */ - SetIamPolicyRequest.fromObject = function fromObject(object) { + SetIamPolicyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.SetIamPolicyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.SetIamPolicyRequest(); if (object.resource != null) message.resource = String(object.resource); if (object.policy != null) { if (typeof object.policy !== "object") throw TypeError(".google.iam.v1.SetIamPolicyRequest.policy: object expected"); - message.policy = $root.google.iam.v1.Policy.fromObject(object.policy); + message.policy = $root.google.iam.v1.Policy.fromObject(object.policy, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.iam.v1.SetIamPolicyRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -41410,7 +43102,7 @@ function GetIamPolicyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41485,9 +43177,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetIamPolicyRequest.decode = function decode(reader, length, error) { + GetIamPolicyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.GetIamPolicyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41499,11 +43195,11 @@ break; } case 2: { - message.options = $root.google.iam.v1.GetPolicyOptions.decode(reader, reader.uint32()); + message.options = $root.google.iam.v1.GetPolicyOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41534,14 +43230,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetIamPolicyRequest.verify = function verify(message) { + GetIamPolicyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.resource != null && message.hasOwnProperty("resource")) if (!$util.isString(message.resource)) return "resource: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.iam.v1.GetPolicyOptions.verify(message.options); + var error = $root.google.iam.v1.GetPolicyOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -41556,16 +43256,20 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.GetIamPolicyRequest} GetIamPolicyRequest */ - GetIamPolicyRequest.fromObject = function fromObject(object) { + GetIamPolicyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.GetIamPolicyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.GetIamPolicyRequest(); if (object.resource != null) message.resource = String(object.resource); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.iam.v1.GetIamPolicyRequest.options: object expected"); - message.options = $root.google.iam.v1.GetPolicyOptions.fromObject(object.options); + message.options = $root.google.iam.v1.GetPolicyOptions.fromObject(object.options, long + 1); } return message; }; @@ -41645,7 +43349,7 @@ this.permissions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41721,9 +43425,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TestIamPermissionsRequest.decode = function decode(reader, length, error) { + TestIamPermissionsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.TestIamPermissionsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41741,7 +43449,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41772,9 +43480,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TestIamPermissionsRequest.verify = function verify(message) { + TestIamPermissionsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.resource != null && message.hasOwnProperty("resource")) if (!$util.isString(message.resource)) return "resource: string expected"; @@ -41796,9 +43508,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.TestIamPermissionsRequest} TestIamPermissionsRequest */ - TestIamPermissionsRequest.fromObject = function fromObject(object) { + TestIamPermissionsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.TestIamPermissionsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.TestIamPermissionsRequest(); if (object.resource != null) message.resource = String(object.resource); @@ -41889,7 +43605,7 @@ this.permissions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41955,9 +43671,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TestIamPermissionsResponse.decode = function decode(reader, length, error) { + TestIamPermissionsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.TestIamPermissionsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41971,7 +43691,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42002,9 +43722,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TestIamPermissionsResponse.verify = function verify(message) { + TestIamPermissionsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.permissions != null && message.hasOwnProperty("permissions")) { if (!Array.isArray(message.permissions)) return "permissions: array expected"; @@ -42023,9 +43747,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.TestIamPermissionsResponse} TestIamPermissionsResponse */ - TestIamPermissionsResponse.fromObject = function fromObject(object) { + TestIamPermissionsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.TestIamPermissionsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.TestIamPermissionsResponse(); if (object.permissions) { if (!Array.isArray(object.permissions)) @@ -42109,7 +43837,7 @@ function GetPolicyOptions(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42174,9 +43902,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetPolicyOptions.decode = function decode(reader, length, error) { + GetPolicyOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.GetPolicyOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42188,7 +43920,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42219,9 +43951,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetPolicyOptions.verify = function verify(message) { + GetPolicyOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.requestedPolicyVersion != null && message.hasOwnProperty("requestedPolicyVersion")) if (!$util.isInteger(message.requestedPolicyVersion)) return "requestedPolicyVersion: integer expected"; @@ -42236,9 +43972,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.GetPolicyOptions} GetPolicyOptions */ - GetPolicyOptions.fromObject = function fromObject(object) { + GetPolicyOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.GetPolicyOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.GetPolicyOptions(); if (object.requestedPolicyVersion != null) message.requestedPolicyVersion = object.requestedPolicyVersion | 0; @@ -42319,7 +44059,7 @@ this.auditConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42416,9 +44156,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Policy.decode = function decode(reader, length, error) { + Policy.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.Policy(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42432,13 +44176,13 @@ case 4: { if (!(message.bindings && message.bindings.length)) message.bindings = []; - message.bindings.push($root.google.iam.v1.Binding.decode(reader, reader.uint32())); + message.bindings.push($root.google.iam.v1.Binding.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.auditConfigs && message.auditConfigs.length)) message.auditConfigs = []; - message.auditConfigs.push($root.google.iam.v1.AuditConfig.decode(reader, reader.uint32())); + message.auditConfigs.push($root.google.iam.v1.AuditConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -42446,7 +44190,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42477,9 +44221,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Policy.verify = function verify(message) { + Policy.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isInteger(message.version)) return "version: integer expected"; @@ -42487,7 +44235,7 @@ if (!Array.isArray(message.bindings)) return "bindings: array expected"; for (var i = 0; i < message.bindings.length; ++i) { - var error = $root.google.iam.v1.Binding.verify(message.bindings[i]); + var error = $root.google.iam.v1.Binding.verify(message.bindings[i], long + 1); if (error) return "bindings." + error; } @@ -42496,7 +44244,7 @@ if (!Array.isArray(message.auditConfigs)) return "auditConfigs: array expected"; for (var i = 0; i < message.auditConfigs.length; ++i) { - var error = $root.google.iam.v1.AuditConfig.verify(message.auditConfigs[i]); + var error = $root.google.iam.v1.AuditConfig.verify(message.auditConfigs[i], long + 1); if (error) return "auditConfigs." + error; } @@ -42515,9 +44263,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.Policy} Policy */ - Policy.fromObject = function fromObject(object) { + Policy.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.Policy) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.Policy(); if (object.version != null) message.version = object.version | 0; @@ -42528,7 +44280,7 @@ for (var i = 0; i < object.bindings.length; ++i) { if (typeof object.bindings[i] !== "object") throw TypeError(".google.iam.v1.Policy.bindings: object expected"); - message.bindings[i] = $root.google.iam.v1.Binding.fromObject(object.bindings[i]); + message.bindings[i] = $root.google.iam.v1.Binding.fromObject(object.bindings[i], long + 1); } } if (object.auditConfigs) { @@ -42538,7 +44290,7 @@ for (var i = 0; i < object.auditConfigs.length; ++i) { if (typeof object.auditConfigs[i] !== "object") throw TypeError(".google.iam.v1.Policy.auditConfigs: object expected"); - message.auditConfigs[i] = $root.google.iam.v1.AuditConfig.fromObject(object.auditConfigs[i]); + message.auditConfigs[i] = $root.google.iam.v1.AuditConfig.fromObject(object.auditConfigs[i], long + 1); } } if (object.etag != null) @@ -42645,7 +44397,7 @@ this.members = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42731,9 +44483,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Binding.decode = function decode(reader, length, error) { + Binding.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.Binding(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42751,11 +44507,11 @@ break; } case 3: { - message.condition = $root.google.type.Expr.decode(reader, reader.uint32()); + message.condition = $root.google.type.Expr.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42786,9 +44542,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Binding.verify = function verify(message) { + Binding.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.role != null && message.hasOwnProperty("role")) if (!$util.isString(message.role)) return "role: string expected"; @@ -42800,7 +44560,7 @@ return "members: string[] expected"; } if (message.condition != null && message.hasOwnProperty("condition")) { - var error = $root.google.type.Expr.verify(message.condition); + var error = $root.google.type.Expr.verify(message.condition, long + 1); if (error) return "condition." + error; } @@ -42815,9 +44575,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.Binding} Binding */ - Binding.fromObject = function fromObject(object) { + Binding.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.Binding) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.Binding(); if (object.role != null) message.role = String(object.role); @@ -42831,7 +44595,7 @@ if (object.condition != null) { if (typeof object.condition !== "object") throw TypeError(".google.iam.v1.Binding.condition: object expected"); - message.condition = $root.google.type.Expr.fromObject(object.condition); + message.condition = $root.google.type.Expr.fromObject(object.condition, long + 1); } return message; }; @@ -42918,7 +44682,7 @@ this.auditLogConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42994,9 +44758,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuditConfig.decode = function decode(reader, length, error) { + AuditConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.AuditConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43010,11 +44778,11 @@ case 3: { if (!(message.auditLogConfigs && message.auditLogConfigs.length)) message.auditLogConfigs = []; - message.auditLogConfigs.push($root.google.iam.v1.AuditLogConfig.decode(reader, reader.uint32())); + message.auditLogConfigs.push($root.google.iam.v1.AuditLogConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43045,9 +44813,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuditConfig.verify = function verify(message) { + AuditConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.service != null && message.hasOwnProperty("service")) if (!$util.isString(message.service)) return "service: string expected"; @@ -43055,7 +44827,7 @@ if (!Array.isArray(message.auditLogConfigs)) return "auditLogConfigs: array expected"; for (var i = 0; i < message.auditLogConfigs.length; ++i) { - var error = $root.google.iam.v1.AuditLogConfig.verify(message.auditLogConfigs[i]); + var error = $root.google.iam.v1.AuditLogConfig.verify(message.auditLogConfigs[i], long + 1); if (error) return "auditLogConfigs." + error; } @@ -43071,9 +44843,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.AuditConfig} AuditConfig */ - AuditConfig.fromObject = function fromObject(object) { + AuditConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.AuditConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.AuditConfig(); if (object.service != null) message.service = String(object.service); @@ -43084,7 +44860,7 @@ for (var i = 0; i < object.auditLogConfigs.length; ++i) { if (typeof object.auditLogConfigs[i] !== "object") throw TypeError(".google.iam.v1.AuditConfig.auditLogConfigs: object expected"); - message.auditLogConfigs[i] = $root.google.iam.v1.AuditLogConfig.fromObject(object.auditLogConfigs[i]); + message.auditLogConfigs[i] = $root.google.iam.v1.AuditLogConfig.fromObject(object.auditLogConfigs[i], long + 1); } } return message; @@ -43168,7 +44944,7 @@ this.exemptedMembers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43244,9 +45020,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuditLogConfig.decode = function decode(reader, length, error) { + AuditLogConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.AuditLogConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43264,7 +45044,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43295,9 +45075,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuditLogConfig.verify = function verify(message) { + AuditLogConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.logType != null && message.hasOwnProperty("logType")) switch (message.logType) { default: @@ -43326,9 +45110,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.AuditLogConfig} AuditLogConfig */ - AuditLogConfig.fromObject = function fromObject(object) { + AuditLogConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.AuditLogConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.AuditLogConfig(); switch (object.logType) { default: @@ -43461,7 +45249,7 @@ this.auditConfigDeltas = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43538,9 +45326,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PolicyDelta.decode = function decode(reader, length, error) { + PolicyDelta.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.PolicyDelta(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43550,17 +45342,17 @@ case 1: { if (!(message.bindingDeltas && message.bindingDeltas.length)) message.bindingDeltas = []; - message.bindingDeltas.push($root.google.iam.v1.BindingDelta.decode(reader, reader.uint32())); + message.bindingDeltas.push($root.google.iam.v1.BindingDelta.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.auditConfigDeltas && message.auditConfigDeltas.length)) message.auditConfigDeltas = []; - message.auditConfigDeltas.push($root.google.iam.v1.AuditConfigDelta.decode(reader, reader.uint32())); + message.auditConfigDeltas.push($root.google.iam.v1.AuditConfigDelta.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43591,14 +45383,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PolicyDelta.verify = function verify(message) { + PolicyDelta.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.bindingDeltas != null && message.hasOwnProperty("bindingDeltas")) { if (!Array.isArray(message.bindingDeltas)) return "bindingDeltas: array expected"; for (var i = 0; i < message.bindingDeltas.length; ++i) { - var error = $root.google.iam.v1.BindingDelta.verify(message.bindingDeltas[i]); + var error = $root.google.iam.v1.BindingDelta.verify(message.bindingDeltas[i], long + 1); if (error) return "bindingDeltas." + error; } @@ -43607,7 +45403,7 @@ if (!Array.isArray(message.auditConfigDeltas)) return "auditConfigDeltas: array expected"; for (var i = 0; i < message.auditConfigDeltas.length; ++i) { - var error = $root.google.iam.v1.AuditConfigDelta.verify(message.auditConfigDeltas[i]); + var error = $root.google.iam.v1.AuditConfigDelta.verify(message.auditConfigDeltas[i], long + 1); if (error) return "auditConfigDeltas." + error; } @@ -43623,9 +45419,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.PolicyDelta} PolicyDelta */ - PolicyDelta.fromObject = function fromObject(object) { + PolicyDelta.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.PolicyDelta) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.PolicyDelta(); if (object.bindingDeltas) { if (!Array.isArray(object.bindingDeltas)) @@ -43634,7 +45434,7 @@ for (var i = 0; i < object.bindingDeltas.length; ++i) { if (typeof object.bindingDeltas[i] !== "object") throw TypeError(".google.iam.v1.PolicyDelta.bindingDeltas: object expected"); - message.bindingDeltas[i] = $root.google.iam.v1.BindingDelta.fromObject(object.bindingDeltas[i]); + message.bindingDeltas[i] = $root.google.iam.v1.BindingDelta.fromObject(object.bindingDeltas[i], long + 1); } } if (object.auditConfigDeltas) { @@ -43644,7 +45444,7 @@ for (var i = 0; i < object.auditConfigDeltas.length; ++i) { if (typeof object.auditConfigDeltas[i] !== "object") throw TypeError(".google.iam.v1.PolicyDelta.auditConfigDeltas: object expected"); - message.auditConfigDeltas[i] = $root.google.iam.v1.AuditConfigDelta.fromObject(object.auditConfigDeltas[i]); + message.auditConfigDeltas[i] = $root.google.iam.v1.AuditConfigDelta.fromObject(object.auditConfigDeltas[i], long + 1); } } return message; @@ -43732,7 +45532,7 @@ function BindingDelta(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43827,9 +45627,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BindingDelta.decode = function decode(reader, length, error) { + BindingDelta.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.BindingDelta(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43849,11 +45653,11 @@ break; } case 4: { - message.condition = $root.google.type.Expr.decode(reader, reader.uint32()); + message.condition = $root.google.type.Expr.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43884,9 +45688,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BindingDelta.verify = function verify(message) { + BindingDelta.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.action != null && message.hasOwnProperty("action")) switch (message.action) { default: @@ -43903,7 +45711,7 @@ if (!$util.isString(message.member)) return "member: string expected"; if (message.condition != null && message.hasOwnProperty("condition")) { - var error = $root.google.type.Expr.verify(message.condition); + var error = $root.google.type.Expr.verify(message.condition, long + 1); if (error) return "condition." + error; } @@ -43918,9 +45726,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.BindingDelta} BindingDelta */ - BindingDelta.fromObject = function fromObject(object) { + BindingDelta.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.BindingDelta) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.BindingDelta(); switch (object.action) { default: @@ -43949,7 +45761,7 @@ if (object.condition != null) { if (typeof object.condition !== "object") throw TypeError(".google.iam.v1.BindingDelta.condition: object expected"); - message.condition = $root.google.type.Expr.fromObject(object.condition); + message.condition = $root.google.type.Expr.fromObject(object.condition, long + 1); } return message; }; @@ -44052,7 +45864,7 @@ function AuditConfigDelta(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44147,9 +45959,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuditConfigDelta.decode = function decode(reader, length, error) { + AuditConfigDelta.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.AuditConfigDelta(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44173,7 +45989,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44204,9 +46020,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuditConfigDelta.verify = function verify(message) { + AuditConfigDelta.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.action != null && message.hasOwnProperty("action")) switch (message.action) { default: @@ -44236,9 +46056,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.AuditConfigDelta} AuditConfigDelta */ - AuditConfigDelta.fromObject = function fromObject(object) { + AuditConfigDelta.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.AuditConfigDelta) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.AuditConfigDelta(); switch (object.action) { default: @@ -44382,7 +46206,7 @@ function Expr(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44477,9 +46301,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Expr.decode = function decode(reader, length, error) { + Expr.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.type.Expr(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44503,7 +46331,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44534,9 +46362,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Expr.verify = function verify(message) { + Expr.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.expression != null && message.hasOwnProperty("expression")) if (!$util.isString(message.expression)) return "expression: string expected"; @@ -44560,9 +46392,13 @@ * @param {Object.} object Plain object * @returns {google.type.Expr} Expr */ - Expr.fromObject = function fromObject(object) { + Expr.fromObject = function fromObject(object, long) { if (object instanceof $root.google.type.Expr) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.type.Expr(); if (object.expression != null) message.expression = String(object.expression); @@ -44870,7 +46706,7 @@ function Operation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44989,9 +46825,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Operation.decode = function decode(reader, length, error) { + Operation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.Operation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45003,7 +46843,7 @@ break; } case 2: { - message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -45011,15 +46851,15 @@ break; } case 4: { - message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.error = $root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.response = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45050,15 +46890,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Operation.verify = function verify(message) { + Operation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.google.protobuf.Any.verify(message.metadata); + var error = $root.google.protobuf.Any.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -45068,7 +46912,7 @@ if (message.error != null && message.hasOwnProperty("error")) { properties.result = 1; { - var error = $root.google.rpc.Status.verify(message.error); + var error = $root.google.rpc.Status.verify(message.error, long + 1); if (error) return "error." + error; } @@ -45078,7 +46922,7 @@ return "result: multiple values"; properties.result = 1; { - var error = $root.google.protobuf.Any.verify(message.response); + var error = $root.google.protobuf.Any.verify(message.response, long + 1); if (error) return "response." + error; } @@ -45094,28 +46938,32 @@ * @param {Object.} object Plain object * @returns {google.longrunning.Operation} Operation */ - Operation.fromObject = function fromObject(object) { + Operation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.Operation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.Operation(); if (object.name != null) message.name = String(object.name); if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".google.longrunning.Operation.metadata: object expected"); - message.metadata = $root.google.protobuf.Any.fromObject(object.metadata); + message.metadata = $root.google.protobuf.Any.fromObject(object.metadata, long + 1); } if (object.done != null) message.done = Boolean(object.done); if (object.error != null) { if (typeof object.error !== "object") throw TypeError(".google.longrunning.Operation.error: object expected"); - message.error = $root.google.rpc.Status.fromObject(object.error); + message.error = $root.google.rpc.Status.fromObject(object.error, long + 1); } if (object.response != null) { if (typeof object.response !== "object") throw TypeError(".google.longrunning.Operation.response: object expected"); - message.response = $root.google.protobuf.Any.fromObject(object.response); + message.response = $root.google.protobuf.Any.fromObject(object.response, long + 1); } return message; }; @@ -45206,7 +47054,7 @@ function GetOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45271,9 +47119,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOperationRequest.decode = function decode(reader, length, error) { + GetOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.GetOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45285,7 +47137,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45316,9 +47168,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOperationRequest.verify = function verify(message) { + GetOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -45333,9 +47189,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.GetOperationRequest} GetOperationRequest */ - GetOperationRequest.fromObject = function fromObject(object) { + GetOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.GetOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.GetOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -45414,7 +47274,7 @@ function ListOperationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45509,9 +47369,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsRequest.decode = function decode(reader, length, error) { + ListOperationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45535,7 +47399,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45566,9 +47430,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsRequest.verify = function verify(message) { + ListOperationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -45592,9 +47460,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest */ - ListOperationsRequest.fromObject = function fromObject(object) { + ListOperationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsRequest(); if (object.name != null) message.name = String(object.name); @@ -45688,7 +47560,7 @@ this.operations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45764,9 +47636,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsResponse.decode = function decode(reader, length, error) { + ListOperationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45776,7 +47652,7 @@ case 1: { if (!(message.operations && message.operations.length)) message.operations = []; - message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); + message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -45784,7 +47660,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45815,14 +47691,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsResponse.verify = function verify(message) { + ListOperationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.operations != null && message.hasOwnProperty("operations")) { if (!Array.isArray(message.operations)) return "operations: array expected"; for (var i = 0; i < message.operations.length; ++i) { - var error = $root.google.longrunning.Operation.verify(message.operations[i]); + var error = $root.google.longrunning.Operation.verify(message.operations[i], long + 1); if (error) return "operations." + error; } @@ -45841,9 +47721,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse */ - ListOperationsResponse.fromObject = function fromObject(object) { + ListOperationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsResponse(); if (object.operations) { if (!Array.isArray(object.operations)) @@ -45852,7 +47736,7 @@ for (var i = 0; i < object.operations.length; ++i) { if (typeof object.operations[i] !== "object") throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected"); - message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i]); + message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i], long + 1); } } if (object.nextPageToken != null) @@ -45936,7 +47820,7 @@ function CancelOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46001,9 +47885,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CancelOperationRequest.decode = function decode(reader, length, error) { + CancelOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.CancelOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46015,7 +47903,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46046,9 +47934,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CancelOperationRequest.verify = function verify(message) { + CancelOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46063,9 +47955,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest */ - CancelOperationRequest.fromObject = function fromObject(object) { + CancelOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.CancelOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.CancelOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -46141,7 +48037,7 @@ function DeleteOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46206,9 +48102,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteOperationRequest.decode = function decode(reader, length, error) { + DeleteOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.DeleteOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46220,7 +48120,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46251,9 +48151,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteOperationRequest.verify = function verify(message) { + DeleteOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46268,9 +48172,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest */ - DeleteOperationRequest.fromObject = function fromObject(object) { + DeleteOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.DeleteOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.DeleteOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -46347,7 +48255,7 @@ function WaitOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46422,9 +48330,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WaitOperationRequest.decode = function decode(reader, length, error) { + WaitOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.WaitOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46436,11 +48348,11 @@ break; } case 2: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46471,14 +48383,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WaitOperationRequest.verify = function verify(message) { + WaitOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -46493,16 +48409,20 @@ * @param {Object.} object Plain object * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest */ - WaitOperationRequest.fromObject = function fromObject(object) { + WaitOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.WaitOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.WaitOperationRequest(); if (object.name != null) message.name = String(object.name); if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } return message; }; @@ -46581,7 +48501,7 @@ function OperationInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46656,9 +48576,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationInfo.decode = function decode(reader, length, error) { + OperationInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.OperationInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46674,7 +48598,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46705,9 +48629,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationInfo.verify = function verify(message) { + OperationInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.responseType != null && message.hasOwnProperty("responseType")) if (!$util.isString(message.responseType)) return "responseType: string expected"; @@ -46725,9 +48653,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.OperationInfo} OperationInfo */ - OperationInfo.fromObject = function fromObject(object) { + OperationInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.OperationInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.OperationInfo(); if (object.responseType != null) message.responseType = String(object.responseType); @@ -46824,7 +48756,7 @@ this.details = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46910,9 +48842,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Status.decode = function decode(reader, length, error) { + Status.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.rpc.Status(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46930,11 +48866,11 @@ case 3: { if (!(message.details && message.details.length)) message.details = []; - message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46965,9 +48901,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Status.verify = function verify(message) { + Status.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isInteger(message.code)) return "code: integer expected"; @@ -46978,7 +48918,7 @@ if (!Array.isArray(message.details)) return "details: array expected"; for (var i = 0; i < message.details.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.details[i]); + var error = $root.google.protobuf.Any.verify(message.details[i], long + 1); if (error) return "details." + error; } @@ -46994,9 +48934,13 @@ * @param {Object.} object Plain object * @returns {google.rpc.Status} Status */ - Status.fromObject = function fromObject(object) { + Status.fromObject = function fromObject(object, long) { if (object instanceof $root.google.rpc.Status) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.rpc.Status(); if (object.code != null) message.code = object.code | 0; @@ -47009,7 +48953,7 @@ for (var i = 0; i < object.details.length; ++i) { if (typeof object.details[i] !== "object") throw TypeError(".google.rpc.Status.details: object expected"); - message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]); + message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i], long + 1); } } return message; diff --git a/packages/google-cloud-retail/README.md b/packages/google-cloud-retail/README.md index 270c99fd2a27..635043087a60 100644 --- a/packages/google-cloud-retail/README.md +++ b/packages/google-cloud-retail/README.md @@ -112,7 +112,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | list serving configs | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2/serving_config_service.list_serving_configs.js) | | remove control | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2/serving_config_service.remove_control.js) | | update serving config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2/serving_config_service.update_serving_config.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2/snippet_metadata_google.cloud.retail.v2.json) | | collect user event | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2/user_event_service.collect_user_event.js) | | import user events | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2/user_event_service.import_user_events.js) | | purge user events | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2/user_event_service.purge_user_events.js) | @@ -187,7 +186,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | list serving configs | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2alpha/serving_config_service.list_serving_configs.js) | | remove control | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2alpha/serving_config_service.remove_control.js) | | update serving config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2alpha/serving_config_service.update_serving_config.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2alpha/snippet_metadata_google.cloud.retail.v2alpha.json) | | collect user event | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2alpha/user_event_service.collect_user_event.js) | | export user events | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2alpha/user_event_service.export_user_events.js) | | import user events | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2alpha/user_event_service.import_user_events.js) | @@ -252,7 +250,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | list serving configs | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2beta/serving_config_service.list_serving_configs.js) | | remove control | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2beta/serving_config_service.remove_control.js) | | update serving config | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2beta/serving_config_service.update_serving_config.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2beta/snippet_metadata_google.cloud.retail.v2beta.json) | | collect user event | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2beta/user_event_service.collect_user_event.js) | | export user events | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2beta/user_event_service.export_user_events.js) | | import user events | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-retail/samples/generated/v2beta/user_event_service.import_user_events.js) | diff --git a/packages/google-cloud-retail/protos/protos.js b/packages/google-cloud-retail/protos/protos.js index 33a46e417fb7..c74d5c7f72ee 100644 --- a/packages/google-cloud-retail/protos/protos.js +++ b/packages/google-cloud-retail/protos/protos.js @@ -155,7 +155,7 @@ function OutputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -244,9 +244,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OutputConfig.decode = function decode(reader, length, error) { + OutputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.OutputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -254,15 +258,15 @@ break; switch (tag >>> 3) { case 1: { - message.gcsDestination = $root.google.cloud.retail.v2.OutputConfig.GcsDestination.decode(reader, reader.uint32()); + message.gcsDestination = $root.google.cloud.retail.v2.OutputConfig.GcsDestination.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.bigqueryDestination = $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination.decode(reader, reader.uint32()); + message.bigqueryDestination = $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -293,14 +297,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OutputConfig.verify = function verify(message) { + OutputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsDestination != null && message.hasOwnProperty("gcsDestination")) { properties.destination = 1; { - var error = $root.google.cloud.retail.v2.OutputConfig.GcsDestination.verify(message.gcsDestination); + var error = $root.google.cloud.retail.v2.OutputConfig.GcsDestination.verify(message.gcsDestination, long + 1); if (error) return "gcsDestination." + error; } @@ -310,7 +318,7 @@ return "destination: multiple values"; properties.destination = 1; { - var error = $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination.verify(message.bigqueryDestination); + var error = $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination.verify(message.bigqueryDestination, long + 1); if (error) return "bigqueryDestination." + error; } @@ -326,19 +334,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.OutputConfig} OutputConfig */ - OutputConfig.fromObject = function fromObject(object) { + OutputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.OutputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.OutputConfig(); if (object.gcsDestination != null) { if (typeof object.gcsDestination !== "object") throw TypeError(".google.cloud.retail.v2.OutputConfig.gcsDestination: object expected"); - message.gcsDestination = $root.google.cloud.retail.v2.OutputConfig.GcsDestination.fromObject(object.gcsDestination); + message.gcsDestination = $root.google.cloud.retail.v2.OutputConfig.GcsDestination.fromObject(object.gcsDestination, long + 1); } if (object.bigqueryDestination != null) { if (typeof object.bigqueryDestination !== "object") throw TypeError(".google.cloud.retail.v2.OutputConfig.bigqueryDestination: object expected"); - message.bigqueryDestination = $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination.fromObject(object.bigqueryDestination); + message.bigqueryDestination = $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination.fromObject(object.bigqueryDestination, long + 1); } return message; }; @@ -415,7 +427,7 @@ function GcsDestination(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -480,9 +492,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsDestination.decode = function decode(reader, length, error) { + GcsDestination.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.OutputConfig.GcsDestination(); while (reader.pos < end) { var tag = reader.uint32(); @@ -494,7 +510,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -525,9 +541,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsDestination.verify = function verify(message) { + GcsDestination.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.outputUriPrefix != null && message.hasOwnProperty("outputUriPrefix")) if (!$util.isString(message.outputUriPrefix)) return "outputUriPrefix: string expected"; @@ -542,9 +562,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.OutputConfig.GcsDestination} GcsDestination */ - GcsDestination.fromObject = function fromObject(object) { + GcsDestination.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.OutputConfig.GcsDestination) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.OutputConfig.GcsDestination(); if (object.outputUriPrefix != null) message.outputUriPrefix = String(object.outputUriPrefix); @@ -622,7 +646,7 @@ function BigQueryDestination(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -707,9 +731,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQueryDestination.decode = function decode(reader, length, error) { + BigQueryDestination.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination(); while (reader.pos < end) { var tag = reader.uint32(); @@ -729,7 +757,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -760,9 +788,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQueryDestination.verify = function verify(message) { + BigQueryDestination.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.datasetId != null && message.hasOwnProperty("datasetId")) if (!$util.isString(message.datasetId)) return "datasetId: string expected"; @@ -783,9 +815,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.OutputConfig.BigQueryDestination} BigQueryDestination */ - BigQueryDestination.fromObject = function fromObject(object) { + BigQueryDestination.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.OutputConfig.BigQueryDestination(); if (object.datasetId != null) message.datasetId = String(object.datasetId); @@ -875,7 +911,7 @@ function ExportErrorsConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -954,9 +990,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportErrorsConfig.decode = function decode(reader, length, error) { + ExportErrorsConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ExportErrorsConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -968,7 +1008,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -999,9 +1039,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportErrorsConfig.verify = function verify(message) { + ExportErrorsConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsPrefix != null && message.hasOwnProperty("gcsPrefix")) { properties.destination = 1; @@ -1019,9 +1063,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ExportErrorsConfig} ExportErrorsConfig */ - ExportErrorsConfig.fromObject = function fromObject(object) { + ExportErrorsConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ExportErrorsConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ExportErrorsConfig(); if (object.gcsPrefix != null) message.gcsPrefix = String(object.gcsPrefix); @@ -1100,7 +1148,7 @@ function ExportAnalyticsMetricsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1185,9 +1233,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportAnalyticsMetricsRequest.decode = function decode(reader, length, error) { + ExportAnalyticsMetricsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ExportAnalyticsMetricsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1199,7 +1251,7 @@ break; } case 2: { - message.outputConfig = $root.google.cloud.retail.v2.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.retail.v2.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -1207,7 +1259,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1238,14 +1290,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportAnalyticsMetricsRequest.verify = function verify(message) { + ExportAnalyticsMetricsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.retail.v2.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.retail.v2.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -1263,16 +1319,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ExportAnalyticsMetricsRequest} ExportAnalyticsMetricsRequest */ - ExportAnalyticsMetricsRequest.fromObject = function fromObject(object) { + ExportAnalyticsMetricsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ExportAnalyticsMetricsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ExportAnalyticsMetricsRequest(); if (object.catalog != null) message.catalog = String(object.catalog); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.retail.v2.ExportAnalyticsMetricsRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.retail.v2.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.retail.v2.OutputConfig.fromObject(object.outputConfig, long + 1); } if (object.filter != null) message.filter = String(object.filter); @@ -1356,7 +1416,7 @@ function ExportMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1431,9 +1491,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportMetadata.decode = function decode(reader, length, error) { + ExportMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ExportMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1441,15 +1505,15 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1480,16 +1544,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportMetadata.verify = function verify(message) { + ExportMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -1504,19 +1572,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ExportMetadata} ExportMetadata */ - ExportMetadata.fromObject = function fromObject(object) { + ExportMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ExportMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ExportMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2.ExportMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2.ExportMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } return message; }; @@ -1597,7 +1669,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1683,9 +1755,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportAnalyticsMetricsResponse.decode = function decode(reader, length, error) { + ExportAnalyticsMetricsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ExportAnalyticsMetricsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1695,19 +1771,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2.ExportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2.ExportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.outputResult = $root.google.cloud.retail.v2.OutputResult.decode(reader, reader.uint32()); + message.outputResult = $root.google.cloud.retail.v2.OutputResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1738,25 +1814,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportAnalyticsMetricsResponse.verify = function verify(message) { + ExportAnalyticsMetricsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2.ExportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2.ExportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.outputResult != null && message.hasOwnProperty("outputResult")) { - var error = $root.google.cloud.retail.v2.OutputResult.verify(message.outputResult); + var error = $root.google.cloud.retail.v2.OutputResult.verify(message.outputResult, long + 1); if (error) return "outputResult." + error; } @@ -1771,9 +1851,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ExportAnalyticsMetricsResponse} ExportAnalyticsMetricsResponse */ - ExportAnalyticsMetricsResponse.fromObject = function fromObject(object) { + ExportAnalyticsMetricsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ExportAnalyticsMetricsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ExportAnalyticsMetricsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -1782,18 +1866,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2.ExportAnalyticsMetricsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2.ExportAnalyticsMetricsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2.ExportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2.ExportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.outputResult != null) { if (typeof object.outputResult !== "object") throw TypeError(".google.cloud.retail.v2.ExportAnalyticsMetricsResponse.outputResult: object expected"); - message.outputResult = $root.google.cloud.retail.v2.OutputResult.fromObject(object.outputResult); + message.outputResult = $root.google.cloud.retail.v2.OutputResult.fromObject(object.outputResult, long + 1); } return message; }; @@ -1881,7 +1965,7 @@ this.gcsResult = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1958,9 +2042,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OutputResult.decode = function decode(reader, length, error) { + OutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.OutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1970,17 +2058,17 @@ case 1: { if (!(message.bigqueryResult && message.bigqueryResult.length)) message.bigqueryResult = []; - message.bigqueryResult.push($root.google.cloud.retail.v2.BigQueryOutputResult.decode(reader, reader.uint32())); + message.bigqueryResult.push($root.google.cloud.retail.v2.BigQueryOutputResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.gcsResult && message.gcsResult.length)) message.gcsResult = []; - message.gcsResult.push($root.google.cloud.retail.v2.GcsOutputResult.decode(reader, reader.uint32())); + message.gcsResult.push($root.google.cloud.retail.v2.GcsOutputResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2011,14 +2099,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OutputResult.verify = function verify(message) { + OutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.bigqueryResult != null && message.hasOwnProperty("bigqueryResult")) { if (!Array.isArray(message.bigqueryResult)) return "bigqueryResult: array expected"; for (var i = 0; i < message.bigqueryResult.length; ++i) { - var error = $root.google.cloud.retail.v2.BigQueryOutputResult.verify(message.bigqueryResult[i]); + var error = $root.google.cloud.retail.v2.BigQueryOutputResult.verify(message.bigqueryResult[i], long + 1); if (error) return "bigqueryResult." + error; } @@ -2027,7 +2119,7 @@ if (!Array.isArray(message.gcsResult)) return "gcsResult: array expected"; for (var i = 0; i < message.gcsResult.length; ++i) { - var error = $root.google.cloud.retail.v2.GcsOutputResult.verify(message.gcsResult[i]); + var error = $root.google.cloud.retail.v2.GcsOutputResult.verify(message.gcsResult[i], long + 1); if (error) return "gcsResult." + error; } @@ -2043,9 +2135,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.OutputResult} OutputResult */ - OutputResult.fromObject = function fromObject(object) { + OutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.OutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.OutputResult(); if (object.bigqueryResult) { if (!Array.isArray(object.bigqueryResult)) @@ -2054,7 +2150,7 @@ for (var i = 0; i < object.bigqueryResult.length; ++i) { if (typeof object.bigqueryResult[i] !== "object") throw TypeError(".google.cloud.retail.v2.OutputResult.bigqueryResult: object expected"); - message.bigqueryResult[i] = $root.google.cloud.retail.v2.BigQueryOutputResult.fromObject(object.bigqueryResult[i]); + message.bigqueryResult[i] = $root.google.cloud.retail.v2.BigQueryOutputResult.fromObject(object.bigqueryResult[i], long + 1); } } if (object.gcsResult) { @@ -2064,7 +2160,7 @@ for (var i = 0; i < object.gcsResult.length; ++i) { if (typeof object.gcsResult[i] !== "object") throw TypeError(".google.cloud.retail.v2.OutputResult.gcsResult: object expected"); - message.gcsResult[i] = $root.google.cloud.retail.v2.GcsOutputResult.fromObject(object.gcsResult[i]); + message.gcsResult[i] = $root.google.cloud.retail.v2.GcsOutputResult.fromObject(object.gcsResult[i], long + 1); } } return message; @@ -2150,7 +2246,7 @@ function BigQueryOutputResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2225,9 +2321,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQueryOutputResult.decode = function decode(reader, length, error) { + BigQueryOutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.BigQueryOutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2243,7 +2343,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2274,9 +2374,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQueryOutputResult.verify = function verify(message) { + BigQueryOutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.datasetId != null && message.hasOwnProperty("datasetId")) if (!$util.isString(message.datasetId)) return "datasetId: string expected"; @@ -2294,9 +2398,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.BigQueryOutputResult} BigQueryOutputResult */ - BigQueryOutputResult.fromObject = function fromObject(object) { + BigQueryOutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.BigQueryOutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.BigQueryOutputResult(); if (object.datasetId != null) message.datasetId = String(object.datasetId); @@ -2378,7 +2486,7 @@ function GcsOutputResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2443,9 +2551,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsOutputResult.decode = function decode(reader, length, error) { + GcsOutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GcsOutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2457,7 +2569,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2488,9 +2600,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsOutputResult.verify = function verify(message) { + GcsOutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.outputUri != null && message.hasOwnProperty("outputUri")) if (!$util.isString(message.outputUri)) return "outputUri: string expected"; @@ -2505,9 +2621,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GcsOutputResult} GcsOutputResult */ - GcsOutputResult.fromObject = function fromObject(object) { + GcsOutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GcsOutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GcsOutputResult(); if (object.outputUri != null) message.outputUri = String(object.outputUri); @@ -2584,7 +2704,7 @@ function ProductLevelConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2659,9 +2779,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductLevelConfig.decode = function decode(reader, length, error) { + ProductLevelConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ProductLevelConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2677,7 +2801,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2708,9 +2832,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductLevelConfig.verify = function verify(message) { + ProductLevelConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ingestionProductType != null && message.hasOwnProperty("ingestionProductType")) if (!$util.isString(message.ingestionProductType)) return "ingestionProductType: string expected"; @@ -2728,9 +2856,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ProductLevelConfig} ProductLevelConfig */ - ProductLevelConfig.fromObject = function fromObject(object) { + ProductLevelConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ProductLevelConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ProductLevelConfig(); if (object.ingestionProductType != null) message.ingestionProductType = String(object.ingestionProductType); @@ -2820,7 +2952,7 @@ function CatalogAttribute(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2965,9 +3097,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CatalogAttribute.decode = function decode(reader, length, error) { + CatalogAttribute.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CatalogAttribute(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3007,11 +3143,11 @@ break; } case 13: { - message.facetConfig = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.decode(reader, reader.uint32()); + message.facetConfig = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3042,9 +3178,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CatalogAttribute.verify = function verify(message) { + CatalogAttribute.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -3106,7 +3246,7 @@ break; } if (message.facetConfig != null && message.hasOwnProperty("facetConfig")) { - var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.verify(message.facetConfig); + var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.verify(message.facetConfig, long + 1); if (error) return "facetConfig." + error; } @@ -3121,9 +3261,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CatalogAttribute} CatalogAttribute */ - CatalogAttribute.fromObject = function fromObject(object) { + CatalogAttribute.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CatalogAttribute) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CatalogAttribute(); if (object.key != null) message.key = String(object.key); @@ -3252,7 +3396,7 @@ if (object.facetConfig != null) { if (typeof object.facetConfig !== "object") throw TypeError(".google.cloud.retail.v2.CatalogAttribute.facetConfig: object expected"); - message.facetConfig = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.fromObject(object.facetConfig); + message.facetConfig = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.fromObject(object.facetConfig, long + 1); } return message; }; @@ -3355,7 +3499,7 @@ this.mergedFacetValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3463,9 +3607,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetConfig.decode = function decode(reader, length, error) { + FacetConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3475,31 +3623,31 @@ case 1: { if (!(message.facetIntervals && message.facetIntervals.length)) message.facetIntervals = []; - message.facetIntervals.push($root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32())); + message.facetIntervals.push($root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.ignoredFacetValues && message.ignoredFacetValues.length)) message.ignoredFacetValues = []; - message.ignoredFacetValues.push($root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues.decode(reader, reader.uint32())); + message.ignoredFacetValues.push($root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.mergedFacetValues && message.mergedFacetValues.length)) message.mergedFacetValues = []; - message.mergedFacetValues.push($root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue.decode(reader, reader.uint32())); + message.mergedFacetValues.push($root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.mergedFacet = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet.decode(reader, reader.uint32()); + message.mergedFacet = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.rerankConfig = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig.decode(reader, reader.uint32()); + message.rerankConfig = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3530,14 +3678,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetConfig.verify = function verify(message) { + FacetConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetIntervals != null && message.hasOwnProperty("facetIntervals")) { if (!Array.isArray(message.facetIntervals)) return "facetIntervals: array expected"; for (var i = 0; i < message.facetIntervals.length; ++i) { - var error = $root.google.cloud.retail.v2.Interval.verify(message.facetIntervals[i]); + var error = $root.google.cloud.retail.v2.Interval.verify(message.facetIntervals[i], long + 1); if (error) return "facetIntervals." + error; } @@ -3546,7 +3698,7 @@ if (!Array.isArray(message.ignoredFacetValues)) return "ignoredFacetValues: array expected"; for (var i = 0; i < message.ignoredFacetValues.length; ++i) { - var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues.verify(message.ignoredFacetValues[i]); + var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues.verify(message.ignoredFacetValues[i], long + 1); if (error) return "ignoredFacetValues." + error; } @@ -3555,18 +3707,18 @@ if (!Array.isArray(message.mergedFacetValues)) return "mergedFacetValues: array expected"; for (var i = 0; i < message.mergedFacetValues.length; ++i) { - var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue.verify(message.mergedFacetValues[i]); + var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue.verify(message.mergedFacetValues[i], long + 1); if (error) return "mergedFacetValues." + error; } } if (message.mergedFacet != null && message.hasOwnProperty("mergedFacet")) { - var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet.verify(message.mergedFacet); + var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet.verify(message.mergedFacet, long + 1); if (error) return "mergedFacet." + error; } if (message.rerankConfig != null && message.hasOwnProperty("rerankConfig")) { - var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig.verify(message.rerankConfig); + var error = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig.verify(message.rerankConfig, long + 1); if (error) return "rerankConfig." + error; } @@ -3581,9 +3733,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CatalogAttribute.FacetConfig} FacetConfig */ - FacetConfig.fromObject = function fromObject(object) { + FacetConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig(); if (object.facetIntervals) { if (!Array.isArray(object.facetIntervals)) @@ -3592,7 +3748,7 @@ for (var i = 0; i < object.facetIntervals.length; ++i) { if (typeof object.facetIntervals[i] !== "object") throw TypeError(".google.cloud.retail.v2.CatalogAttribute.FacetConfig.facetIntervals: object expected"); - message.facetIntervals[i] = $root.google.cloud.retail.v2.Interval.fromObject(object.facetIntervals[i]); + message.facetIntervals[i] = $root.google.cloud.retail.v2.Interval.fromObject(object.facetIntervals[i], long + 1); } } if (object.ignoredFacetValues) { @@ -3602,7 +3758,7 @@ for (var i = 0; i < object.ignoredFacetValues.length; ++i) { if (typeof object.ignoredFacetValues[i] !== "object") throw TypeError(".google.cloud.retail.v2.CatalogAttribute.FacetConfig.ignoredFacetValues: object expected"); - message.ignoredFacetValues[i] = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues.fromObject(object.ignoredFacetValues[i]); + message.ignoredFacetValues[i] = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues.fromObject(object.ignoredFacetValues[i], long + 1); } } if (object.mergedFacetValues) { @@ -3612,18 +3768,18 @@ for (var i = 0; i < object.mergedFacetValues.length; ++i) { if (typeof object.mergedFacetValues[i] !== "object") throw TypeError(".google.cloud.retail.v2.CatalogAttribute.FacetConfig.mergedFacetValues: object expected"); - message.mergedFacetValues[i] = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue.fromObject(object.mergedFacetValues[i]); + message.mergedFacetValues[i] = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue.fromObject(object.mergedFacetValues[i], long + 1); } } if (object.mergedFacet != null) { if (typeof object.mergedFacet !== "object") throw TypeError(".google.cloud.retail.v2.CatalogAttribute.FacetConfig.mergedFacet: object expected"); - message.mergedFacet = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet.fromObject(object.mergedFacet); + message.mergedFacet = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet.fromObject(object.mergedFacet, long + 1); } if (object.rerankConfig != null) { if (typeof object.rerankConfig !== "object") throw TypeError(".google.cloud.retail.v2.CatalogAttribute.FacetConfig.rerankConfig: object expected"); - message.rerankConfig = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig.fromObject(object.rerankConfig); + message.rerankConfig = $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig.fromObject(object.rerankConfig, long + 1); } return message; }; @@ -3721,7 +3877,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3807,9 +3963,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - IgnoredFacetValues.decode = function decode(reader, length, error) { + IgnoredFacetValues.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3823,15 +3983,15 @@ break; } case 2: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3862,9 +4022,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - IgnoredFacetValues.verify = function verify(message) { + IgnoredFacetValues.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -3873,12 +4037,12 @@ return "values: string[] expected"; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -3893,9 +4057,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues} IgnoredFacetValues */ - IgnoredFacetValues.fromObject = function fromObject(object) { + IgnoredFacetValues.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues(); if (object.values) { if (!Array.isArray(object.values)) @@ -3907,12 +4075,12 @@ if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.retail.v2.CatalogAttribute.FacetConfig.IgnoredFacetValues.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } return message; }; @@ -3999,7 +4167,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4075,9 +4243,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MergedFacetValue.decode = function decode(reader, length, error) { + MergedFacetValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4095,7 +4267,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4126,9 +4298,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MergedFacetValue.verify = function verify(message) { + MergedFacetValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -4150,9 +4326,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue} MergedFacetValue */ - MergedFacetValue.fromObject = function fromObject(object) { + MergedFacetValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacetValue(); if (object.values) { if (!Array.isArray(object.values)) @@ -4242,7 +4422,7 @@ function MergedFacet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4307,9 +4487,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MergedFacet.decode = function decode(reader, length, error) { + MergedFacet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4321,7 +4505,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4352,9 +4536,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MergedFacet.verify = function verify(message) { + MergedFacet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mergedFacetKey != null && message.hasOwnProperty("mergedFacetKey")) if (!$util.isString(message.mergedFacetKey)) return "mergedFacetKey: string expected"; @@ -4369,9 +4557,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet} MergedFacet */ - MergedFacet.fromObject = function fromObject(object) { + MergedFacet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.MergedFacet(); if (object.mergedFacetKey != null) message.mergedFacetKey = String(object.mergedFacetKey); @@ -4449,7 +4641,7 @@ this.facetValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4525,9 +4717,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RerankConfig.decode = function decode(reader, length, error) { + RerankConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4545,7 +4741,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4576,9 +4772,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RerankConfig.verify = function verify(message) { + RerankConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rerankFacet != null && message.hasOwnProperty("rerankFacet")) if (typeof message.rerankFacet !== "boolean") return "rerankFacet: boolean expected"; @@ -4600,9 +4800,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig} RerankConfig */ - RerankConfig.fromObject = function fromObject(object) { + RerankConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CatalogAttribute.FacetConfig.RerankConfig(); if (object.rerankFacet != null) message.rerankFacet = Boolean(object.rerankFacet); @@ -4797,7 +5001,7 @@ this.catalogAttributes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4885,9 +5089,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AttributesConfig.decode = function decode(reader, length, error) { + AttributesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AttributesConfig(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -4911,13 +5119,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2.CatalogAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.catalogAttributes, key); message.catalogAttributes[key] = value; break; } @@ -4926,7 +5136,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4957,9 +5167,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AttributesConfig.verify = function verify(message) { + AttributesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -4968,7 +5182,7 @@ return "catalogAttributes: object expected"; var key = Object.keys(message.catalogAttributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2.CatalogAttribute.verify(message.catalogAttributes[key[i]]); + var error = $root.google.cloud.retail.v2.CatalogAttribute.verify(message.catalogAttributes[key[i]], long + 1); if (error) return "catalogAttributes." + error; } @@ -4993,9 +5207,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AttributesConfig} AttributesConfig */ - AttributesConfig.fromObject = function fromObject(object) { + AttributesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AttributesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.AttributesConfig(); if (object.name != null) message.name = String(object.name); @@ -5004,9 +5222,11 @@ throw TypeError(".google.cloud.retail.v2.AttributesConfig.catalogAttributes: object expected"); message.catalogAttributes = {}; for (var keys = Object.keys(object.catalogAttributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.catalogAttributes, keys[i]); if (typeof object.catalogAttributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.AttributesConfig.catalogAttributes: object expected"); - message.catalogAttributes[keys[i]] = $root.google.cloud.retail.v2.CatalogAttribute.fromObject(object.catalogAttributes[keys[i]]); + message.catalogAttributes[keys[i]] = $root.google.cloud.retail.v2.CatalogAttribute.fromObject(object.catalogAttributes[keys[i]], long + 1); } } switch (object.attributeConfigLevel) { @@ -5056,8 +5276,11 @@ var keys2; if (message.catalogAttributes && (keys2 = Object.keys(message.catalogAttributes)).length) { object.catalogAttributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.catalogAttributes, keys2[j]); object.catalogAttributes[keys2[j]] = $root.google.cloud.retail.v2.CatalogAttribute.toObject(message.catalogAttributes[keys2[j]], options); + } } if (message.attributeConfigLevel != null && message.hasOwnProperty("attributeConfigLevel")) object.attributeConfigLevel = options.enums === String ? $root.google.cloud.retail.v2.AttributeConfigLevel[message.attributeConfigLevel] === undefined ? message.attributeConfigLevel : $root.google.cloud.retail.v2.AttributeConfigLevel[message.attributeConfigLevel] : message.attributeConfigLevel; @@ -5123,7 +5346,7 @@ function CompletionConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5288,9 +5511,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionConfig.decode = function decode(reader, length, error) { + CompletionConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CompletionConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5318,7 +5545,7 @@ break; } case 5: { - message.suggestionsInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.suggestionsInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -5326,7 +5553,7 @@ break; } case 7: { - message.denylistInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.denylistInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -5334,7 +5561,7 @@ break; } case 9: { - message.allowlistInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.allowlistInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -5342,7 +5569,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5373,9 +5600,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionConfig.verify = function verify(message) { + CompletionConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -5392,7 +5623,7 @@ if (typeof message.autoLearning !== "boolean") return "autoLearning: boolean expected"; if (message.suggestionsInputConfig != null && message.hasOwnProperty("suggestionsInputConfig")) { - var error = $root.google.cloud.retail.v2.CompletionDataInputConfig.verify(message.suggestionsInputConfig); + var error = $root.google.cloud.retail.v2.CompletionDataInputConfig.verify(message.suggestionsInputConfig, long + 1); if (error) return "suggestionsInputConfig." + error; } @@ -5400,7 +5631,7 @@ if (!$util.isString(message.lastSuggestionsImportOperation)) return "lastSuggestionsImportOperation: string expected"; if (message.denylistInputConfig != null && message.hasOwnProperty("denylistInputConfig")) { - var error = $root.google.cloud.retail.v2.CompletionDataInputConfig.verify(message.denylistInputConfig); + var error = $root.google.cloud.retail.v2.CompletionDataInputConfig.verify(message.denylistInputConfig, long + 1); if (error) return "denylistInputConfig." + error; } @@ -5408,7 +5639,7 @@ if (!$util.isString(message.lastDenylistImportOperation)) return "lastDenylistImportOperation: string expected"; if (message.allowlistInputConfig != null && message.hasOwnProperty("allowlistInputConfig")) { - var error = $root.google.cloud.retail.v2.CompletionDataInputConfig.verify(message.allowlistInputConfig); + var error = $root.google.cloud.retail.v2.CompletionDataInputConfig.verify(message.allowlistInputConfig, long + 1); if (error) return "allowlistInputConfig." + error; } @@ -5426,9 +5657,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CompletionConfig} CompletionConfig */ - CompletionConfig.fromObject = function fromObject(object) { + CompletionConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CompletionConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CompletionConfig(); if (object.name != null) message.name = String(object.name); @@ -5443,21 +5678,21 @@ if (object.suggestionsInputConfig != null) { if (typeof object.suggestionsInputConfig !== "object") throw TypeError(".google.cloud.retail.v2.CompletionConfig.suggestionsInputConfig: object expected"); - message.suggestionsInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.fromObject(object.suggestionsInputConfig); + message.suggestionsInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.fromObject(object.suggestionsInputConfig, long + 1); } if (object.lastSuggestionsImportOperation != null) message.lastSuggestionsImportOperation = String(object.lastSuggestionsImportOperation); if (object.denylistInputConfig != null) { if (typeof object.denylistInputConfig !== "object") throw TypeError(".google.cloud.retail.v2.CompletionConfig.denylistInputConfig: object expected"); - message.denylistInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.fromObject(object.denylistInputConfig); + message.denylistInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.fromObject(object.denylistInputConfig, long + 1); } if (object.lastDenylistImportOperation != null) message.lastDenylistImportOperation = String(object.lastDenylistImportOperation); if (object.allowlistInputConfig != null) { if (typeof object.allowlistInputConfig !== "object") throw TypeError(".google.cloud.retail.v2.CompletionConfig.allowlistInputConfig: object expected"); - message.allowlistInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.fromObject(object.allowlistInputConfig); + message.allowlistInputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.fromObject(object.allowlistInputConfig, long + 1); } if (object.lastAllowlistImportOperation != null) message.lastAllowlistImportOperation = String(object.lastAllowlistImportOperation); @@ -5566,7 +5801,7 @@ function Catalog(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5651,9 +5886,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Catalog.decode = function decode(reader, length, error) { + Catalog.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Catalog(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5669,11 +5908,11 @@ break; } case 4: { - message.productLevelConfig = $root.google.cloud.retail.v2.ProductLevelConfig.decode(reader, reader.uint32()); + message.productLevelConfig = $root.google.cloud.retail.v2.ProductLevelConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5704,9 +5943,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Catalog.verify = function verify(message) { + Catalog.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -5714,7 +5957,7 @@ if (!$util.isString(message.displayName)) return "displayName: string expected"; if (message.productLevelConfig != null && message.hasOwnProperty("productLevelConfig")) { - var error = $root.google.cloud.retail.v2.ProductLevelConfig.verify(message.productLevelConfig); + var error = $root.google.cloud.retail.v2.ProductLevelConfig.verify(message.productLevelConfig, long + 1); if (error) return "productLevelConfig." + error; } @@ -5729,9 +5972,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Catalog} Catalog */ - Catalog.fromObject = function fromObject(object) { + Catalog.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Catalog) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Catalog(); if (object.name != null) message.name = String(object.name); @@ -5740,7 +5987,7 @@ if (object.productLevelConfig != null) { if (typeof object.productLevelConfig !== "object") throw TypeError(".google.cloud.retail.v2.Catalog.productLevelConfig: object expected"); - message.productLevelConfig = $root.google.cloud.retail.v2.ProductLevelConfig.fromObject(object.productLevelConfig); + message.productLevelConfig = $root.google.cloud.retail.v2.ProductLevelConfig.fromObject(object.productLevelConfig, long + 1); } return message; }; @@ -5890,7 +6137,7 @@ this.pageCategories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5978,9 +6225,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Condition.decode = function decode(reader, length, error) { + Condition.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Condition(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5990,13 +6241,13 @@ case 1: { if (!(message.queryTerms && message.queryTerms.length)) message.queryTerms = []; - message.queryTerms.push($root.google.cloud.retail.v2.Condition.QueryTerm.decode(reader, reader.uint32())); + message.queryTerms.push($root.google.cloud.retail.v2.Condition.QueryTerm.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.activeTimeRange && message.activeTimeRange.length)) message.activeTimeRange = []; - message.activeTimeRange.push($root.google.cloud.retail.v2.Condition.TimeRange.decode(reader, reader.uint32())); + message.activeTimeRange.push($root.google.cloud.retail.v2.Condition.TimeRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -6006,7 +6257,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6037,14 +6288,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Condition.verify = function verify(message) { + Condition.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; for (var i = 0; i < message.queryTerms.length; ++i) { - var error = $root.google.cloud.retail.v2.Condition.QueryTerm.verify(message.queryTerms[i]); + var error = $root.google.cloud.retail.v2.Condition.QueryTerm.verify(message.queryTerms[i], long + 1); if (error) return "queryTerms." + error; } @@ -6053,7 +6308,7 @@ if (!Array.isArray(message.activeTimeRange)) return "activeTimeRange: array expected"; for (var i = 0; i < message.activeTimeRange.length; ++i) { - var error = $root.google.cloud.retail.v2.Condition.TimeRange.verify(message.activeTimeRange[i]); + var error = $root.google.cloud.retail.v2.Condition.TimeRange.verify(message.activeTimeRange[i], long + 1); if (error) return "activeTimeRange." + error; } @@ -6076,9 +6331,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Condition} Condition */ - Condition.fromObject = function fromObject(object) { + Condition.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Condition) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Condition(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -6087,7 +6346,7 @@ for (var i = 0; i < object.queryTerms.length; ++i) { if (typeof object.queryTerms[i] !== "object") throw TypeError(".google.cloud.retail.v2.Condition.queryTerms: object expected"); - message.queryTerms[i] = $root.google.cloud.retail.v2.Condition.QueryTerm.fromObject(object.queryTerms[i]); + message.queryTerms[i] = $root.google.cloud.retail.v2.Condition.QueryTerm.fromObject(object.queryTerms[i], long + 1); } } if (object.activeTimeRange) { @@ -6097,7 +6356,7 @@ for (var i = 0; i < object.activeTimeRange.length; ++i) { if (typeof object.activeTimeRange[i] !== "object") throw TypeError(".google.cloud.retail.v2.Condition.activeTimeRange: object expected"); - message.activeTimeRange[i] = $root.google.cloud.retail.v2.Condition.TimeRange.fromObject(object.activeTimeRange[i]); + message.activeTimeRange[i] = $root.google.cloud.retail.v2.Condition.TimeRange.fromObject(object.activeTimeRange[i], long + 1); } } if (object.pageCategories) { @@ -6193,7 +6452,7 @@ function QueryTerm(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6268,9 +6527,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryTerm.decode = function decode(reader, length, error) { + QueryTerm.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Condition.QueryTerm(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6286,7 +6549,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6317,9 +6580,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryTerm.verify = function verify(message) { + QueryTerm.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!$util.isString(message.value)) return "value: string expected"; @@ -6337,9 +6604,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Condition.QueryTerm} QueryTerm */ - QueryTerm.fromObject = function fromObject(object) { + QueryTerm.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Condition.QueryTerm) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Condition.QueryTerm(); if (object.value != null) message.value = String(object.value); @@ -6422,7 +6693,7 @@ function TimeRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6497,9 +6768,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TimeRange.decode = function decode(reader, length, error) { + TimeRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Condition.TimeRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6507,15 +6782,15 @@ break; switch (tag >>> 3) { case 1: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6546,16 +6821,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TimeRange.verify = function verify(message) { + TimeRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -6570,19 +6849,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Condition.TimeRange} TimeRange */ - TimeRange.fromObject = function fromObject(object) { + TimeRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Condition.TimeRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Condition.TimeRange(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.retail.v2.Condition.TimeRange.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.retail.v2.Condition.TimeRange.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } return message; }; @@ -6674,7 +6957,7 @@ function Rule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6863,9 +7146,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Rule.decode = function decode(reader, length, error) { + Rule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6873,55 +7160,55 @@ break; switch (tag >>> 3) { case 2: { - message.boostAction = $root.google.cloud.retail.v2.Rule.BoostAction.decode(reader, reader.uint32()); + message.boostAction = $root.google.cloud.retail.v2.Rule.BoostAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.redirectAction = $root.google.cloud.retail.v2.Rule.RedirectAction.decode(reader, reader.uint32()); + message.redirectAction = $root.google.cloud.retail.v2.Rule.RedirectAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.onewaySynonymsAction = $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction.decode(reader, reader.uint32()); + message.onewaySynonymsAction = $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.doNotAssociateAction = $root.google.cloud.retail.v2.Rule.DoNotAssociateAction.decode(reader, reader.uint32()); + message.doNotAssociateAction = $root.google.cloud.retail.v2.Rule.DoNotAssociateAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.replacementAction = $root.google.cloud.retail.v2.Rule.ReplacementAction.decode(reader, reader.uint32()); + message.replacementAction = $root.google.cloud.retail.v2.Rule.ReplacementAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.ignoreAction = $root.google.cloud.retail.v2.Rule.IgnoreAction.decode(reader, reader.uint32()); + message.ignoreAction = $root.google.cloud.retail.v2.Rule.IgnoreAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.filterAction = $root.google.cloud.retail.v2.Rule.FilterAction.decode(reader, reader.uint32()); + message.filterAction = $root.google.cloud.retail.v2.Rule.FilterAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.twowaySynonymsAction = $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction.decode(reader, reader.uint32()); + message.twowaySynonymsAction = $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { - message.forceReturnFacetAction = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.decode(reader, reader.uint32()); + message.forceReturnFacetAction = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.removeFacetAction = $root.google.cloud.retail.v2.Rule.RemoveFacetAction.decode(reader, reader.uint32()); + message.removeFacetAction = $root.google.cloud.retail.v2.Rule.RemoveFacetAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.pinAction = $root.google.cloud.retail.v2.Rule.PinAction.decode(reader, reader.uint32()); + message.pinAction = $root.google.cloud.retail.v2.Rule.PinAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { - message.condition = $root.google.cloud.retail.v2.Condition.decode(reader, reader.uint32()); + message.condition = $root.google.cloud.retail.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6952,14 +7239,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Rule.verify = function verify(message) { + Rule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.boostAction != null && message.hasOwnProperty("boostAction")) { properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.BoostAction.verify(message.boostAction); + var error = $root.google.cloud.retail.v2.Rule.BoostAction.verify(message.boostAction, long + 1); if (error) return "boostAction." + error; } @@ -6969,7 +7260,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.RedirectAction.verify(message.redirectAction); + var error = $root.google.cloud.retail.v2.Rule.RedirectAction.verify(message.redirectAction, long + 1); if (error) return "redirectAction." + error; } @@ -6979,7 +7270,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction.verify(message.onewaySynonymsAction); + var error = $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction.verify(message.onewaySynonymsAction, long + 1); if (error) return "onewaySynonymsAction." + error; } @@ -6989,7 +7280,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.DoNotAssociateAction.verify(message.doNotAssociateAction); + var error = $root.google.cloud.retail.v2.Rule.DoNotAssociateAction.verify(message.doNotAssociateAction, long + 1); if (error) return "doNotAssociateAction." + error; } @@ -6999,7 +7290,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.ReplacementAction.verify(message.replacementAction); + var error = $root.google.cloud.retail.v2.Rule.ReplacementAction.verify(message.replacementAction, long + 1); if (error) return "replacementAction." + error; } @@ -7009,7 +7300,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.IgnoreAction.verify(message.ignoreAction); + var error = $root.google.cloud.retail.v2.Rule.IgnoreAction.verify(message.ignoreAction, long + 1); if (error) return "ignoreAction." + error; } @@ -7019,7 +7310,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.FilterAction.verify(message.filterAction); + var error = $root.google.cloud.retail.v2.Rule.FilterAction.verify(message.filterAction, long + 1); if (error) return "filterAction." + error; } @@ -7029,7 +7320,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction.verify(message.twowaySynonymsAction); + var error = $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction.verify(message.twowaySynonymsAction, long + 1); if (error) return "twowaySynonymsAction." + error; } @@ -7039,7 +7330,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.verify(message.forceReturnFacetAction); + var error = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.verify(message.forceReturnFacetAction, long + 1); if (error) return "forceReturnFacetAction." + error; } @@ -7049,7 +7340,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.RemoveFacetAction.verify(message.removeFacetAction); + var error = $root.google.cloud.retail.v2.Rule.RemoveFacetAction.verify(message.removeFacetAction, long + 1); if (error) return "removeFacetAction." + error; } @@ -7059,13 +7350,13 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2.Rule.PinAction.verify(message.pinAction); + var error = $root.google.cloud.retail.v2.Rule.PinAction.verify(message.pinAction, long + 1); if (error) return "pinAction." + error; } } if (message.condition != null && message.hasOwnProperty("condition")) { - var error = $root.google.cloud.retail.v2.Condition.verify(message.condition); + var error = $root.google.cloud.retail.v2.Condition.verify(message.condition, long + 1); if (error) return "condition." + error; } @@ -7080,69 +7371,73 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule} Rule */ - Rule.fromObject = function fromObject(object) { + Rule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule(); if (object.boostAction != null) { if (typeof object.boostAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.boostAction: object expected"); - message.boostAction = $root.google.cloud.retail.v2.Rule.BoostAction.fromObject(object.boostAction); + message.boostAction = $root.google.cloud.retail.v2.Rule.BoostAction.fromObject(object.boostAction, long + 1); } if (object.redirectAction != null) { if (typeof object.redirectAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.redirectAction: object expected"); - message.redirectAction = $root.google.cloud.retail.v2.Rule.RedirectAction.fromObject(object.redirectAction); + message.redirectAction = $root.google.cloud.retail.v2.Rule.RedirectAction.fromObject(object.redirectAction, long + 1); } if (object.onewaySynonymsAction != null) { if (typeof object.onewaySynonymsAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.onewaySynonymsAction: object expected"); - message.onewaySynonymsAction = $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction.fromObject(object.onewaySynonymsAction); + message.onewaySynonymsAction = $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction.fromObject(object.onewaySynonymsAction, long + 1); } if (object.doNotAssociateAction != null) { if (typeof object.doNotAssociateAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.doNotAssociateAction: object expected"); - message.doNotAssociateAction = $root.google.cloud.retail.v2.Rule.DoNotAssociateAction.fromObject(object.doNotAssociateAction); + message.doNotAssociateAction = $root.google.cloud.retail.v2.Rule.DoNotAssociateAction.fromObject(object.doNotAssociateAction, long + 1); } if (object.replacementAction != null) { if (typeof object.replacementAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.replacementAction: object expected"); - message.replacementAction = $root.google.cloud.retail.v2.Rule.ReplacementAction.fromObject(object.replacementAction); + message.replacementAction = $root.google.cloud.retail.v2.Rule.ReplacementAction.fromObject(object.replacementAction, long + 1); } if (object.ignoreAction != null) { if (typeof object.ignoreAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.ignoreAction: object expected"); - message.ignoreAction = $root.google.cloud.retail.v2.Rule.IgnoreAction.fromObject(object.ignoreAction); + message.ignoreAction = $root.google.cloud.retail.v2.Rule.IgnoreAction.fromObject(object.ignoreAction, long + 1); } if (object.filterAction != null) { if (typeof object.filterAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.filterAction: object expected"); - message.filterAction = $root.google.cloud.retail.v2.Rule.FilterAction.fromObject(object.filterAction); + message.filterAction = $root.google.cloud.retail.v2.Rule.FilterAction.fromObject(object.filterAction, long + 1); } if (object.twowaySynonymsAction != null) { if (typeof object.twowaySynonymsAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.twowaySynonymsAction: object expected"); - message.twowaySynonymsAction = $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction.fromObject(object.twowaySynonymsAction); + message.twowaySynonymsAction = $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction.fromObject(object.twowaySynonymsAction, long + 1); } if (object.forceReturnFacetAction != null) { if (typeof object.forceReturnFacetAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.forceReturnFacetAction: object expected"); - message.forceReturnFacetAction = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.fromObject(object.forceReturnFacetAction); + message.forceReturnFacetAction = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.fromObject(object.forceReturnFacetAction, long + 1); } if (object.removeFacetAction != null) { if (typeof object.removeFacetAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.removeFacetAction: object expected"); - message.removeFacetAction = $root.google.cloud.retail.v2.Rule.RemoveFacetAction.fromObject(object.removeFacetAction); + message.removeFacetAction = $root.google.cloud.retail.v2.Rule.RemoveFacetAction.fromObject(object.removeFacetAction, long + 1); } if (object.pinAction != null) { if (typeof object.pinAction !== "object") throw TypeError(".google.cloud.retail.v2.Rule.pinAction: object expected"); - message.pinAction = $root.google.cloud.retail.v2.Rule.PinAction.fromObject(object.pinAction); + message.pinAction = $root.google.cloud.retail.v2.Rule.PinAction.fromObject(object.pinAction, long + 1); } if (object.condition != null) { if (typeof object.condition !== "object") throw TypeError(".google.cloud.retail.v2.Rule.condition: object expected"); - message.condition = $root.google.cloud.retail.v2.Condition.fromObject(object.condition); + message.condition = $root.google.cloud.retail.v2.Condition.fromObject(object.condition, long + 1); } return message; }; @@ -7269,7 +7564,7 @@ function BoostAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7344,9 +7639,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BoostAction.decode = function decode(reader, length, error) { + BoostAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.BoostAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7362,7 +7661,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7393,9 +7692,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BoostAction.verify = function verify(message) { + BoostAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.boost != null && message.hasOwnProperty("boost")) if (typeof message.boost !== "number") return "boost: number expected"; @@ -7413,9 +7716,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.BoostAction} BoostAction */ - BoostAction.fromObject = function fromObject(object) { + BoostAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.BoostAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.BoostAction(); if (object.boost != null) message.boost = Number(object.boost); @@ -7497,7 +7804,7 @@ function FilterAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7562,9 +7869,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FilterAction.decode = function decode(reader, length, error) { + FilterAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.FilterAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7576,7 +7887,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7607,9 +7918,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FilterAction.verify = function verify(message) { + FilterAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.filter != null && message.hasOwnProperty("filter")) if (!$util.isString(message.filter)) return "filter: string expected"; @@ -7624,9 +7939,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.FilterAction} FilterAction */ - FilterAction.fromObject = function fromObject(object) { + FilterAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.FilterAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.FilterAction(); if (object.filter != null) message.filter = String(object.filter); @@ -7702,7 +8021,7 @@ function RedirectAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7767,9 +8086,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RedirectAction.decode = function decode(reader, length, error) { + RedirectAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.RedirectAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7781,7 +8104,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7812,9 +8135,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RedirectAction.verify = function verify(message) { + RedirectAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.redirectUri != null && message.hasOwnProperty("redirectUri")) if (!$util.isString(message.redirectUri)) return "redirectUri: string expected"; @@ -7829,9 +8156,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.RedirectAction} RedirectAction */ - RedirectAction.fromObject = function fromObject(object) { + RedirectAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.RedirectAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.RedirectAction(); if (object.redirectUri != null) message.redirectUri = String(object.redirectUri); @@ -7908,7 +8239,7 @@ this.synonyms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7974,9 +8305,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TwowaySynonymsAction.decode = function decode(reader, length, error) { + TwowaySynonymsAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7990,7 +8325,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8021,9 +8356,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TwowaySynonymsAction.verify = function verify(message) { + TwowaySynonymsAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.synonyms != null && message.hasOwnProperty("synonyms")) { if (!Array.isArray(message.synonyms)) return "synonyms: array expected"; @@ -8042,9 +8381,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.TwowaySynonymsAction} TwowaySynonymsAction */ - TwowaySynonymsAction.fromObject = function fromObject(object) { + TwowaySynonymsAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.TwowaySynonymsAction(); if (object.synonyms) { if (!Array.isArray(object.synonyms)) @@ -8133,7 +8476,7 @@ this.onewayTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8221,9 +8564,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OnewaySynonymsAction.decode = function decode(reader, length, error) { + OnewaySynonymsAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8249,7 +8596,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8280,9 +8627,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OnewaySynonymsAction.verify = function verify(message) { + OnewaySynonymsAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -8315,9 +8666,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.OnewaySynonymsAction} OnewaySynonymsAction */ - OnewaySynonymsAction.fromObject = function fromObject(object) { + OnewaySynonymsAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.OnewaySynonymsAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -8433,7 +8788,7 @@ this.terms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8521,9 +8876,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DoNotAssociateAction.decode = function decode(reader, length, error) { + DoNotAssociateAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.DoNotAssociateAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8549,7 +8908,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8580,9 +8939,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DoNotAssociateAction.verify = function verify(message) { + DoNotAssociateAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -8615,9 +8978,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.DoNotAssociateAction} DoNotAssociateAction */ - DoNotAssociateAction.fromObject = function fromObject(object) { + DoNotAssociateAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.DoNotAssociateAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.DoNotAssociateAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -8731,7 +9098,7 @@ this.queryTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8817,9 +9184,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReplacementAction.decode = function decode(reader, length, error) { + ReplacementAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.ReplacementAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8841,7 +9212,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8872,9 +9243,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReplacementAction.verify = function verify(message) { + ReplacementAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -8899,9 +9274,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.ReplacementAction} ReplacementAction */ - ReplacementAction.fromObject = function fromObject(object) { + ReplacementAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.ReplacementAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.ReplacementAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -8998,7 +9377,7 @@ this.ignoreTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9064,9 +9443,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - IgnoreAction.decode = function decode(reader, length, error) { + IgnoreAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.IgnoreAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9080,7 +9463,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9111,9 +9494,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - IgnoreAction.verify = function verify(message) { + IgnoreAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ignoreTerms != null && message.hasOwnProperty("ignoreTerms")) { if (!Array.isArray(message.ignoreTerms)) return "ignoreTerms: array expected"; @@ -9132,9 +9519,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.IgnoreAction} IgnoreAction */ - IgnoreAction.fromObject = function fromObject(object) { + IgnoreAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.IgnoreAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.IgnoreAction(); if (object.ignoreTerms) { if (!Array.isArray(object.ignoreTerms)) @@ -9219,7 +9610,7 @@ this.facetPositionAdjustments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9285,9 +9676,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ForceReturnFacetAction.decode = function decode(reader, length, error) { + ForceReturnFacetAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9297,11 +9692,11 @@ case 1: { if (!(message.facetPositionAdjustments && message.facetPositionAdjustments.length)) message.facetPositionAdjustments = []; - message.facetPositionAdjustments.push($root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment.decode(reader, reader.uint32())); + message.facetPositionAdjustments.push($root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9332,14 +9727,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ForceReturnFacetAction.verify = function verify(message) { + ForceReturnFacetAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetPositionAdjustments != null && message.hasOwnProperty("facetPositionAdjustments")) { if (!Array.isArray(message.facetPositionAdjustments)) return "facetPositionAdjustments: array expected"; for (var i = 0; i < message.facetPositionAdjustments.length; ++i) { - var error = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment.verify(message.facetPositionAdjustments[i]); + var error = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment.verify(message.facetPositionAdjustments[i], long + 1); if (error) return "facetPositionAdjustments." + error; } @@ -9355,9 +9754,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.ForceReturnFacetAction} ForceReturnFacetAction */ - ForceReturnFacetAction.fromObject = function fromObject(object) { + ForceReturnFacetAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction(); if (object.facetPositionAdjustments) { if (!Array.isArray(object.facetPositionAdjustments)) @@ -9366,7 +9769,7 @@ for (var i = 0; i < object.facetPositionAdjustments.length; ++i) { if (typeof object.facetPositionAdjustments[i] !== "object") throw TypeError(".google.cloud.retail.v2.Rule.ForceReturnFacetAction.facetPositionAdjustments: object expected"); - message.facetPositionAdjustments[i] = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment.fromObject(object.facetPositionAdjustments[i]); + message.facetPositionAdjustments[i] = $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment.fromObject(object.facetPositionAdjustments[i], long + 1); } } return message; @@ -9442,7 +9845,7 @@ function FacetPositionAdjustment(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9517,9 +9920,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetPositionAdjustment.decode = function decode(reader, length, error) { + FacetPositionAdjustment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9535,7 +9942,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9566,9 +9973,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetPositionAdjustment.verify = function verify(message) { + FacetPositionAdjustment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributeName != null && message.hasOwnProperty("attributeName")) if (!$util.isString(message.attributeName)) return "attributeName: string expected"; @@ -9586,9 +9997,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment} FacetPositionAdjustment */ - FacetPositionAdjustment.fromObject = function fromObject(object) { + FacetPositionAdjustment.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.ForceReturnFacetAction.FacetPositionAdjustment(); if (object.attributeName != null) message.attributeName = String(object.attributeName); @@ -9674,7 +10089,7 @@ this.attributeNames = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9740,9 +10155,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFacetAction.decode = function decode(reader, length, error) { + RemoveFacetAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.RemoveFacetAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9756,7 +10175,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9787,9 +10206,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFacetAction.verify = function verify(message) { + RemoveFacetAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributeNames != null && message.hasOwnProperty("attributeNames")) { if (!Array.isArray(message.attributeNames)) return "attributeNames: array expected"; @@ -9808,9 +10231,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.RemoveFacetAction} RemoveFacetAction */ - RemoveFacetAction.fromObject = function fromObject(object) { + RemoveFacetAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.RemoveFacetAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.RemoveFacetAction(); if (object.attributeNames) { if (!Array.isArray(object.attributeNames)) @@ -9895,7 +10322,7 @@ this.pinMap = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9961,9 +10388,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PinAction.decode = function decode(reader, length, error) { + PinAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rule.PinAction(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -9986,7 +10417,7 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -9994,7 +10425,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10025,9 +10456,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PinAction.verify = function verify(message) { + PinAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pinMap != null && message.hasOwnProperty("pinMap")) { if (!$util.isObject(message.pinMap)) return "pinMap: object expected"; @@ -10050,16 +10485,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rule.PinAction} PinAction */ - PinAction.fromObject = function fromObject(object) { + PinAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rule.PinAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rule.PinAction(); if (object.pinMap) { if (typeof object.pinMap !== "object") throw TypeError(".google.cloud.retail.v2.Rule.PinAction.pinMap: object expected"); message.pinMap = {}; - for (var keys = Object.keys(object.pinMap), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.pinMap), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.pinMap, keys[i]); message.pinMap[keys[i]] = String(object.pinMap[keys[i]]); + } } return message; }; @@ -10082,8 +10524,11 @@ var keys2; if (message.pinMap && (keys2 = Object.keys(message.pinMap)).length) { object.pinMap = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.pinMap, keys2[j]); object.pinMap[keys2[j]] = message.pinMap[keys2[j]]; + } } return object; }; @@ -10143,7 +10588,7 @@ this.ageGroups = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10220,9 +10665,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Audience.decode = function decode(reader, length, error) { + Audience.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Audience(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10242,7 +10691,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10273,9 +10722,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Audience.verify = function verify(message) { + Audience.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.genders != null && message.hasOwnProperty("genders")) { if (!Array.isArray(message.genders)) return "genders: array expected"; @@ -10301,9 +10754,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Audience} Audience */ - Audience.fromObject = function fromObject(object) { + Audience.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Audience) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Audience(); if (object.genders) { if (!Array.isArray(object.genders)) @@ -10404,7 +10861,7 @@ this.colors = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10481,9 +10938,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ColorInfo.decode = function decode(reader, length, error) { + ColorInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ColorInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10503,7 +10964,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10534,9 +10995,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ColorInfo.verify = function verify(message) { + ColorInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.colorFamilies != null && message.hasOwnProperty("colorFamilies")) { if (!Array.isArray(message.colorFamilies)) return "colorFamilies: array expected"; @@ -10562,9 +11027,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ColorInfo} ColorInfo */ - ColorInfo.fromObject = function fromObject(object) { + ColorInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ColorInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ColorInfo(); if (object.colorFamilies) { if (!Array.isArray(object.colorFamilies)) @@ -10667,7 +11136,7 @@ this.numbers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10782,9 +11251,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomAttribute.decode = function decode(reader, length, error) { + CustomAttribute.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CustomAttribute(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10817,7 +11290,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10848,9 +11321,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomAttribute.verify = function verify(message) { + CustomAttribute.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.text != null && message.hasOwnProperty("text")) { if (!Array.isArray(message.text)) @@ -10887,9 +11364,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CustomAttribute} CustomAttribute */ - CustomAttribute.fromObject = function fromObject(object) { + CustomAttribute.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CustomAttribute) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CustomAttribute(); if (object.text) { if (!Array.isArray(object.text)) @@ -11003,7 +11484,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11079,9 +11560,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FulfillmentInfo.decode = function decode(reader, length, error) { + FulfillmentInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.FulfillmentInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11099,7 +11584,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11130,9 +11615,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FulfillmentInfo.verify = function verify(message) { + FulfillmentInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -11154,9 +11643,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.FulfillmentInfo} FulfillmentInfo */ - FulfillmentInfo.fromObject = function fromObject(object) { + FulfillmentInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.FulfillmentInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.FulfillmentInfo(); if (object.type != null) message.type = String(object.type); @@ -11248,7 +11741,7 @@ function Image(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11333,9 +11826,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Image.decode = function decode(reader, length, error) { + Image.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Image(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11355,7 +11852,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11386,9 +11883,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Image.verify = function verify(message) { + Image.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -11409,9 +11910,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Image} Image */ - Image.fromObject = function fromObject(object) { + Image.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Image) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Image(); if (object.uri != null) message.uri = String(object.uri); @@ -11501,7 +12006,7 @@ function Interval(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11621,9 +12126,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Interval.decode = function decode(reader, length, error) { + Interval.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Interval(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11647,7 +12156,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11678,9 +12187,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Interval.verify = function verify(message) { + Interval.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.minimum != null && message.hasOwnProperty("minimum")) { properties.min = 1; @@ -11717,9 +12230,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Interval} Interval */ - Interval.fromObject = function fromObject(object) { + Interval.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Interval) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Interval(); if (object.minimum != null) message.minimum = Number(object.minimum); @@ -11823,7 +12340,7 @@ function PriceInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11948,9 +12465,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PriceInfo.decode = function decode(reader, length, error) { + PriceInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PriceInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11974,19 +12495,19 @@ break; } case 5: { - message.priceEffectiveTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.priceEffectiveTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.priceExpireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.priceExpireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.priceRange = $root.google.cloud.retail.v2.PriceInfo.PriceRange.decode(reader, reader.uint32()); + message.priceRange = $root.google.cloud.retail.v2.PriceInfo.PriceRange.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12017,9 +12538,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PriceInfo.verify = function verify(message) { + PriceInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.currencyCode != null && message.hasOwnProperty("currencyCode")) if (!$util.isString(message.currencyCode)) return "currencyCode: string expected"; @@ -12033,17 +12558,17 @@ if (typeof message.cost !== "number") return "cost: number expected"; if (message.priceEffectiveTime != null && message.hasOwnProperty("priceEffectiveTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.priceEffectiveTime); + var error = $root.google.protobuf.Timestamp.verify(message.priceEffectiveTime, long + 1); if (error) return "priceEffectiveTime." + error; } if (message.priceExpireTime != null && message.hasOwnProperty("priceExpireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.priceExpireTime); + var error = $root.google.protobuf.Timestamp.verify(message.priceExpireTime, long + 1); if (error) return "priceExpireTime." + error; } if (message.priceRange != null && message.hasOwnProperty("priceRange")) { - var error = $root.google.cloud.retail.v2.PriceInfo.PriceRange.verify(message.priceRange); + var error = $root.google.cloud.retail.v2.PriceInfo.PriceRange.verify(message.priceRange, long + 1); if (error) return "priceRange." + error; } @@ -12058,9 +12583,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PriceInfo} PriceInfo */ - PriceInfo.fromObject = function fromObject(object) { + PriceInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PriceInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PriceInfo(); if (object.currencyCode != null) message.currencyCode = String(object.currencyCode); @@ -12073,17 +12602,17 @@ if (object.priceEffectiveTime != null) { if (typeof object.priceEffectiveTime !== "object") throw TypeError(".google.cloud.retail.v2.PriceInfo.priceEffectiveTime: object expected"); - message.priceEffectiveTime = $root.google.protobuf.Timestamp.fromObject(object.priceEffectiveTime); + message.priceEffectiveTime = $root.google.protobuf.Timestamp.fromObject(object.priceEffectiveTime, long + 1); } if (object.priceExpireTime != null) { if (typeof object.priceExpireTime !== "object") throw TypeError(".google.cloud.retail.v2.PriceInfo.priceExpireTime: object expected"); - message.priceExpireTime = $root.google.protobuf.Timestamp.fromObject(object.priceExpireTime); + message.priceExpireTime = $root.google.protobuf.Timestamp.fromObject(object.priceExpireTime, long + 1); } if (object.priceRange != null) { if (typeof object.priceRange !== "object") throw TypeError(".google.cloud.retail.v2.PriceInfo.priceRange: object expected"); - message.priceRange = $root.google.cloud.retail.v2.PriceInfo.PriceRange.fromObject(object.priceRange); + message.priceRange = $root.google.cloud.retail.v2.PriceInfo.PriceRange.fromObject(object.priceRange, long + 1); } return message; }; @@ -12174,7 +12703,7 @@ function PriceRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12249,9 +12778,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PriceRange.decode = function decode(reader, length, error) { + PriceRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PriceInfo.PriceRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12259,15 +12792,15 @@ break; switch (tag >>> 3) { case 1: { - message.price = $root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32()); + message.price = $root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.originalPrice = $root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32()); + message.originalPrice = $root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12298,16 +12831,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PriceRange.verify = function verify(message) { + PriceRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.price != null && message.hasOwnProperty("price")) { - var error = $root.google.cloud.retail.v2.Interval.verify(message.price); + var error = $root.google.cloud.retail.v2.Interval.verify(message.price, long + 1); if (error) return "price." + error; } if (message.originalPrice != null && message.hasOwnProperty("originalPrice")) { - var error = $root.google.cloud.retail.v2.Interval.verify(message.originalPrice); + var error = $root.google.cloud.retail.v2.Interval.verify(message.originalPrice, long + 1); if (error) return "originalPrice." + error; } @@ -12322,19 +12859,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PriceInfo.PriceRange} PriceRange */ - PriceRange.fromObject = function fromObject(object) { + PriceRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PriceInfo.PriceRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PriceInfo.PriceRange(); if (object.price != null) { if (typeof object.price !== "object") throw TypeError(".google.cloud.retail.v2.PriceInfo.PriceRange.price: object expected"); - message.price = $root.google.cloud.retail.v2.Interval.fromObject(object.price); + message.price = $root.google.cloud.retail.v2.Interval.fromObject(object.price, long + 1); } if (object.originalPrice != null) { if (typeof object.originalPrice !== "object") throw TypeError(".google.cloud.retail.v2.PriceInfo.PriceRange.originalPrice: object expected"); - message.originalPrice = $root.google.cloud.retail.v2.Interval.fromObject(object.originalPrice); + message.originalPrice = $root.google.cloud.retail.v2.Interval.fromObject(object.originalPrice, long + 1); } return message; }; @@ -12418,7 +12959,7 @@ this.ratingHistogram = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12507,9 +13048,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Rating.decode = function decode(reader, length, error) { + Rating.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Rating(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12536,7 +13081,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12567,9 +13112,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Rating.verify = function verify(message) { + Rating.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ratingCount != null && message.hasOwnProperty("ratingCount")) if (!$util.isInteger(message.ratingCount)) return "ratingCount: integer expected"; @@ -12594,9 +13143,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Rating} Rating */ - Rating.fromObject = function fromObject(object) { + Rating.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Rating) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Rating(); if (object.ratingCount != null) message.ratingCount = object.ratingCount | 0; @@ -12695,7 +13248,7 @@ function UserInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12790,9 +13343,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserInfo.decode = function decode(reader, length, error) { + UserInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UserInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12816,7 +13373,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12847,9 +13404,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserInfo.verify = function verify(message) { + UserInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userId != null && message.hasOwnProperty("userId")) if (!$util.isString(message.userId)) return "userId: string expected"; @@ -12873,9 +13434,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UserInfo} UserInfo */ - UserInfo.fromObject = function fromObject(object) { + UserInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UserInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UserInfo(); if (object.userId != null) message.userId = String(object.userId); @@ -12972,7 +13537,7 @@ this.fulfillmentTypes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13071,9 +13636,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LocalInventory.decode = function decode(reader, length, error) { + LocalInventory.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.LocalInventory(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -13085,7 +13654,7 @@ break; } case 2: { - message.priceInfo = $root.google.cloud.retail.v2.PriceInfo.decode(reader, reader.uint32()); + message.priceInfo = $root.google.cloud.retail.v2.PriceInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -13101,13 +13670,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -13118,7 +13689,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13149,14 +13720,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LocalInventory.verify = function verify(message) { + LocalInventory.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placeId != null && message.hasOwnProperty("placeId")) if (!$util.isString(message.placeId)) return "placeId: string expected"; if (message.priceInfo != null && message.hasOwnProperty("priceInfo")) { - var error = $root.google.cloud.retail.v2.PriceInfo.verify(message.priceInfo); + var error = $root.google.cloud.retail.v2.PriceInfo.verify(message.priceInfo, long + 1); if (error) return "priceInfo." + error; } @@ -13165,7 +13740,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -13188,25 +13763,31 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.LocalInventory} LocalInventory */ - LocalInventory.fromObject = function fromObject(object) { + LocalInventory.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.LocalInventory) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.LocalInventory(); if (object.placeId != null) message.placeId = String(object.placeId); if (object.priceInfo != null) { if (typeof object.priceInfo !== "object") throw TypeError(".google.cloud.retail.v2.LocalInventory.priceInfo: object expected"); - message.priceInfo = $root.google.cloud.retail.v2.PriceInfo.fromObject(object.priceInfo); + message.priceInfo = $root.google.cloud.retail.v2.PriceInfo.fromObject(object.priceInfo, long + 1); } if (object.attributes) { if (typeof object.attributes !== "object") throw TypeError(".google.cloud.retail.v2.LocalInventory.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.LocalInventory.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.fulfillmentTypes) { @@ -13247,8 +13828,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.fulfillmentTypes && message.fulfillmentTypes.length) { object.fulfillmentTypes = []; @@ -13310,7 +13894,7 @@ this.droppedPins = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13391,9 +13975,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PinControlMetadata.decode = function decode(reader, length, error) { + PinControlMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PinControlMetadata(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -13413,10 +14001,10 @@ key = reader.int64(); break; case 2: - value = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -13436,10 +14024,10 @@ key = reader.int64(); break; case 2: - value = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -13447,7 +14035,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13478,9 +14066,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PinControlMetadata.verify = function verify(message) { + PinControlMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allMatchedPins != null && message.hasOwnProperty("allMatchedPins")) { if (!$util.isObject(message.allMatchedPins)) return "allMatchedPins: object expected"; @@ -13489,7 +14081,7 @@ if (!$util.key64Re.test(key[i])) return "allMatchedPins: integer|Long key{k:int64} expected"; { - var error = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.verify(message.allMatchedPins[key[i]]); + var error = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.verify(message.allMatchedPins[key[i]], long + 1); if (error) return "allMatchedPins." + error; } @@ -13503,7 +14095,7 @@ if (!$util.key64Re.test(key[i])) return "droppedPins: integer|Long key{k:int64} expected"; { - var error = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.verify(message.droppedPins[key[i]]); + var error = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.verify(message.droppedPins[key[i]], long + 1); if (error) return "droppedPins." + error; } @@ -13520,18 +14112,24 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PinControlMetadata} PinControlMetadata */ - PinControlMetadata.fromObject = function fromObject(object) { + PinControlMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PinControlMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PinControlMetadata(); if (object.allMatchedPins) { if (typeof object.allMatchedPins !== "object") throw TypeError(".google.cloud.retail.v2.PinControlMetadata.allMatchedPins: object expected"); message.allMatchedPins = {}; for (var keys = Object.keys(object.allMatchedPins), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.allMatchedPins, keys[i]); if (typeof object.allMatchedPins[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.PinControlMetadata.allMatchedPins: object expected"); - message.allMatchedPins[keys[i]] = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.fromObject(object.allMatchedPins[keys[i]]); + message.allMatchedPins[keys[i]] = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.fromObject(object.allMatchedPins[keys[i]], long + 1); } } if (object.droppedPins) { @@ -13539,9 +14137,11 @@ throw TypeError(".google.cloud.retail.v2.PinControlMetadata.droppedPins: object expected"); message.droppedPins = {}; for (var keys = Object.keys(object.droppedPins), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.droppedPins, keys[i]); if (typeof object.droppedPins[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.PinControlMetadata.droppedPins: object expected"); - message.droppedPins[keys[i]] = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.fromObject(object.droppedPins[keys[i]]); + message.droppedPins[keys[i]] = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.fromObject(object.droppedPins[keys[i]], long + 1); } } return message; @@ -13567,13 +14167,19 @@ var keys2; if (message.allMatchedPins && (keys2 = Object.keys(message.allMatchedPins)).length) { object.allMatchedPins = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.allMatchedPins, keys2[j]); object.allMatchedPins[keys2[j]] = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.toObject(message.allMatchedPins[keys2[j]], options); + } } if (message.droppedPins && (keys2 = Object.keys(message.droppedPins)).length) { object.droppedPins = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.droppedPins, keys2[j]); object.droppedPins[keys2[j]] = $root.google.cloud.retail.v2.PinControlMetadata.ProductPins.toObject(message.droppedPins[keys2[j]], options); + } } return object; }; @@ -13625,7 +14231,7 @@ this.productId = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13691,9 +14297,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductPins.decode = function decode(reader, length, error) { + ProductPins.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PinControlMetadata.ProductPins(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13707,7 +14317,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13738,9 +14348,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductPins.verify = function verify(message) { + ProductPins.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productId != null && message.hasOwnProperty("productId")) { if (!Array.isArray(message.productId)) return "productId: array expected"; @@ -13759,9 +14373,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PinControlMetadata.ProductPins} ProductPins */ - ProductPins.fromObject = function fromObject(object) { + ProductPins.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PinControlMetadata.ProductPins) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PinControlMetadata.ProductPins(); if (object.productId) { if (!Array.isArray(object.productId)) @@ -13849,7 +14467,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13915,9 +14533,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StringList.decode = function decode(reader, length, error) { + StringList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.StringList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13931,7 +14553,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13962,9 +14584,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StringList.verify = function verify(message) { + StringList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -13983,9 +14609,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.StringList} StringList */ - StringList.fromObject = function fromObject(object) { + StringList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.StringList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.StringList(); if (object.values) { if (!Array.isArray(object.values)) @@ -14070,7 +14700,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14139,9 +14769,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DoubleList.decode = function decode(reader, length, error) { + DoubleList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.DoubleList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14160,7 +14794,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14191,9 +14825,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DoubleList.verify = function verify(message) { + DoubleList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -14212,9 +14850,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.DoubleList} DoubleList */ - DoubleList.fromObject = function fromObject(object) { + DoubleList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.DoubleList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.DoubleList(); if (object.values) { if (!Array.isArray(object.values)) @@ -14300,7 +14942,7 @@ this.inputUris = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14376,9 +15018,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsSource.decode = function decode(reader, length, error) { + GcsSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GcsSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14396,7 +15042,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14427,9 +15073,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsSource.verify = function verify(message) { + GcsSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.inputUris != null && message.hasOwnProperty("inputUris")) { if (!Array.isArray(message.inputUris)) return "inputUris: array expected"; @@ -14451,9 +15101,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GcsSource} GcsSource */ - GcsSource.fromObject = function fromObject(object) { + GcsSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GcsSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GcsSource(); if (object.inputUris) { if (!Array.isArray(object.inputUris)) @@ -14548,7 +15202,7 @@ function BigQuerySource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14677,9 +15331,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQuerySource.decode = function decode(reader, length, error) { + BigQuerySource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.BigQuerySource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14687,7 +15345,7 @@ break; switch (tag >>> 3) { case 6: { - message.partitionDate = $root.google.type.Date.decode(reader, reader.uint32()); + message.partitionDate = $root.google.type.Date.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -14711,7 +15369,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14742,14 +15400,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQuerySource.verify = function verify(message) { + BigQuerySource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.partitionDate != null && message.hasOwnProperty("partitionDate")) { properties.partition = 1; { - var error = $root.google.type.Date.verify(message.partitionDate); + var error = $root.google.type.Date.verify(message.partitionDate, long + 1); if (error) return "partitionDate." + error; } @@ -14780,14 +15442,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.BigQuerySource} BigQuerySource */ - BigQuerySource.fromObject = function fromObject(object) { + BigQuerySource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.BigQuerySource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.BigQuerySource(); if (object.partitionDate != null) { if (typeof object.partitionDate !== "object") throw TypeError(".google.cloud.retail.v2.BigQuerySource.partitionDate: object expected"); - message.partitionDate = $root.google.type.Date.fromObject(object.partitionDate); + message.partitionDate = $root.google.type.Date.fromObject(object.partitionDate, long + 1); } if (object.projectId != null) message.projectId = String(object.projectId); @@ -14890,7 +15556,7 @@ this.products = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14956,9 +15622,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductInlineSource.decode = function decode(reader, length, error) { + ProductInlineSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ProductInlineSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -14968,11 +15638,11 @@ case 1: { if (!(message.products && message.products.length)) message.products = []; - message.products.push($root.google.cloud.retail.v2.Product.decode(reader, reader.uint32())); + message.products.push($root.google.cloud.retail.v2.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15003,14 +15673,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductInlineSource.verify = function verify(message) { + ProductInlineSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.products != null && message.hasOwnProperty("products")) { if (!Array.isArray(message.products)) return "products: array expected"; for (var i = 0; i < message.products.length; ++i) { - var error = $root.google.cloud.retail.v2.Product.verify(message.products[i]); + var error = $root.google.cloud.retail.v2.Product.verify(message.products[i], long + 1); if (error) return "products." + error; } @@ -15026,9 +15700,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ProductInlineSource} ProductInlineSource */ - ProductInlineSource.fromObject = function fromObject(object) { + ProductInlineSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ProductInlineSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ProductInlineSource(); if (object.products) { if (!Array.isArray(object.products)) @@ -15037,7 +15715,7 @@ for (var i = 0; i < object.products.length; ++i) { if (typeof object.products[i] !== "object") throw TypeError(".google.cloud.retail.v2.ProductInlineSource.products: object expected"); - message.products[i] = $root.google.cloud.retail.v2.Product.fromObject(object.products[i]); + message.products[i] = $root.google.cloud.retail.v2.Product.fromObject(object.products[i], long + 1); } } return message; @@ -15116,7 +15794,7 @@ this.userEvents = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15182,9 +15860,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventInlineSource.decode = function decode(reader, length, error) { + UserEventInlineSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UserEventInlineSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15194,11 +15876,11 @@ case 1: { if (!(message.userEvents && message.userEvents.length)) message.userEvents = []; - message.userEvents.push($root.google.cloud.retail.v2.UserEvent.decode(reader, reader.uint32())); + message.userEvents.push($root.google.cloud.retail.v2.UserEvent.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15229,14 +15911,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventInlineSource.verify = function verify(message) { + UserEventInlineSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userEvents != null && message.hasOwnProperty("userEvents")) { if (!Array.isArray(message.userEvents)) return "userEvents: array expected"; for (var i = 0; i < message.userEvents.length; ++i) { - var error = $root.google.cloud.retail.v2.UserEvent.verify(message.userEvents[i]); + var error = $root.google.cloud.retail.v2.UserEvent.verify(message.userEvents[i], long + 1); if (error) return "userEvents." + error; } @@ -15252,9 +15938,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UserEventInlineSource} UserEventInlineSource */ - UserEventInlineSource.fromObject = function fromObject(object) { + UserEventInlineSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UserEventInlineSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UserEventInlineSource(); if (object.userEvents) { if (!Array.isArray(object.userEvents)) @@ -15263,7 +15953,7 @@ for (var i = 0; i < object.userEvents.length; ++i) { if (typeof object.userEvents[i] !== "object") throw TypeError(".google.cloud.retail.v2.UserEventInlineSource.userEvents: object expected"); - message.userEvents[i] = $root.google.cloud.retail.v2.UserEvent.fromObject(object.userEvents[i]); + message.userEvents[i] = $root.google.cloud.retail.v2.UserEvent.fromObject(object.userEvents[i], long + 1); } } return message; @@ -15341,7 +16031,7 @@ function ImportErrorsConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15420,9 +16110,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportErrorsConfig.decode = function decode(reader, length, error) { + ImportErrorsConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ImportErrorsConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15434,7 +16128,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15465,9 +16159,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportErrorsConfig.verify = function verify(message) { + ImportErrorsConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsPrefix != null && message.hasOwnProperty("gcsPrefix")) { properties.destination = 1; @@ -15485,9 +16183,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ImportErrorsConfig} ImportErrorsConfig */ - ImportErrorsConfig.fromObject = function fromObject(object) { + ImportErrorsConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ImportErrorsConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ImportErrorsConfig(); if (object.gcsPrefix != null) message.gcsPrefix = String(object.gcsPrefix); @@ -15570,7 +16272,7 @@ function ImportProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15695,9 +16397,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportProductsRequest.decode = function decode(reader, length, error) { + ImportProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ImportProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15713,15 +16419,15 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2.ProductInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2.ProductInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -15733,7 +16439,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15764,9 +16470,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportProductsRequest.verify = function verify(message) { + ImportProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -15774,17 +16484,17 @@ if (!$util.isString(message.requestId)) return "requestId: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2.ProductInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2.ProductInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -15811,9 +16521,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ImportProductsRequest} ImportProductsRequest */ - ImportProductsRequest.fromObject = function fromObject(object) { + ImportProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ImportProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ImportProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -15822,17 +16536,17 @@ if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2.ImportProductsRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2.ProductInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2.ProductInputConfig.fromObject(object.inputConfig, long + 1); } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2.ImportProductsRequest.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.ImportProductsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } switch (object.reconciliationMode) { default: @@ -15965,7 +16679,7 @@ function ImportUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16050,9 +16764,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportUserEventsRequest.decode = function decode(reader, length, error) { + ImportUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ImportUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16064,15 +16782,15 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2.UserEventInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2.UserEventInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16103,19 +16821,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportUserEventsRequest.verify = function verify(message) { + ImportUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2.UserEventInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2.UserEventInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } @@ -16130,21 +16852,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ImportUserEventsRequest} ImportUserEventsRequest */ - ImportUserEventsRequest.fromObject = function fromObject(object) { + ImportUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ImportUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ImportUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2.ImportUserEventsRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2.UserEventInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2.UserEventInputConfig.fromObject(object.inputConfig, long + 1); } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2.ImportUserEventsRequest.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } return message; }; @@ -16227,7 +16953,7 @@ function ImportCompletionDataRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16312,9 +17038,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportCompletionDataRequest.decode = function decode(reader, length, error) { + ImportCompletionDataRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ImportCompletionDataRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16326,7 +17056,7 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -16334,7 +17064,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16365,14 +17095,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportCompletionDataRequest.verify = function verify(message) { + ImportCompletionDataRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2.CompletionDataInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2.CompletionDataInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } @@ -16390,16 +17124,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ImportCompletionDataRequest} ImportCompletionDataRequest */ - ImportCompletionDataRequest.fromObject = function fromObject(object) { + ImportCompletionDataRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ImportCompletionDataRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ImportCompletionDataRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2.ImportCompletionDataRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2.CompletionDataInputConfig.fromObject(object.inputConfig, long + 1); } if (object.notificationPubsubTopic != null) message.notificationPubsubTopic = String(object.notificationPubsubTopic); @@ -16484,7 +17222,7 @@ function ProductInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16583,9 +17321,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductInputConfig.decode = function decode(reader, length, error) { + ProductInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ProductInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16593,19 +17335,19 @@ break; switch (tag >>> 3) { case 1: { - message.productInlineSource = $root.google.cloud.retail.v2.ProductInlineSource.decode(reader, reader.uint32()); + message.productInlineSource = $root.google.cloud.retail.v2.ProductInlineSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.gcsSource = $root.google.cloud.retail.v2.GcsSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.retail.v2.GcsSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16636,14 +17378,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductInputConfig.verify = function verify(message) { + ProductInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.productInlineSource != null && message.hasOwnProperty("productInlineSource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2.ProductInlineSource.verify(message.productInlineSource); + var error = $root.google.cloud.retail.v2.ProductInlineSource.verify(message.productInlineSource, long + 1); if (error) return "productInlineSource." + error; } @@ -16653,7 +17399,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2.GcsSource.verify(message.gcsSource); + var error = $root.google.cloud.retail.v2.GcsSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -16663,7 +17409,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -16679,24 +17425,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ProductInputConfig} ProductInputConfig */ - ProductInputConfig.fromObject = function fromObject(object) { + ProductInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ProductInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ProductInputConfig(); if (object.productInlineSource != null) { if (typeof object.productInlineSource !== "object") throw TypeError(".google.cloud.retail.v2.ProductInputConfig.productInlineSource: object expected"); - message.productInlineSource = $root.google.cloud.retail.v2.ProductInlineSource.fromObject(object.productInlineSource); + message.productInlineSource = $root.google.cloud.retail.v2.ProductInlineSource.fromObject(object.productInlineSource, long + 1); } if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.retail.v2.ProductInputConfig.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.retail.v2.GcsSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.retail.v2.GcsSource.fromObject(object.gcsSource, long + 1); } if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2.ProductInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -16783,7 +17533,7 @@ function UserEventInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16882,9 +17632,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventInputConfig.decode = function decode(reader, length, error) { + UserEventInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UserEventInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16892,19 +17646,19 @@ break; switch (tag >>> 3) { case 1: { - message.userEventInlineSource = $root.google.cloud.retail.v2.UserEventInlineSource.decode(reader, reader.uint32()); + message.userEventInlineSource = $root.google.cloud.retail.v2.UserEventInlineSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.gcsSource = $root.google.cloud.retail.v2.GcsSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.retail.v2.GcsSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16935,14 +17689,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventInputConfig.verify = function verify(message) { + UserEventInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.userEventInlineSource != null && message.hasOwnProperty("userEventInlineSource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2.UserEventInlineSource.verify(message.userEventInlineSource); + var error = $root.google.cloud.retail.v2.UserEventInlineSource.verify(message.userEventInlineSource, long + 1); if (error) return "userEventInlineSource." + error; } @@ -16952,7 +17710,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2.GcsSource.verify(message.gcsSource); + var error = $root.google.cloud.retail.v2.GcsSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -16962,7 +17720,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -16978,24 +17736,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UserEventInputConfig} UserEventInputConfig */ - UserEventInputConfig.fromObject = function fromObject(object) { + UserEventInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UserEventInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UserEventInputConfig(); if (object.userEventInlineSource != null) { if (typeof object.userEventInlineSource !== "object") throw TypeError(".google.cloud.retail.v2.UserEventInputConfig.userEventInlineSource: object expected"); - message.userEventInlineSource = $root.google.cloud.retail.v2.UserEventInlineSource.fromObject(object.userEventInlineSource); + message.userEventInlineSource = $root.google.cloud.retail.v2.UserEventInlineSource.fromObject(object.userEventInlineSource, long + 1); } if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.retail.v2.UserEventInputConfig.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.retail.v2.GcsSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.retail.v2.GcsSource.fromObject(object.gcsSource, long + 1); } if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2.UserEventInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -17080,7 +17842,7 @@ function CompletionDataInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17159,9 +17921,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionDataInputConfig.decode = function decode(reader, length, error) { + CompletionDataInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CompletionDataInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17169,11 +17935,11 @@ break; switch (tag >>> 3) { case 1: { - message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17204,14 +17970,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionDataInputConfig.verify = function verify(message) { + CompletionDataInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.bigQuerySource != null && message.hasOwnProperty("bigQuerySource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -17227,14 +17997,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CompletionDataInputConfig} CompletionDataInputConfig */ - CompletionDataInputConfig.fromObject = function fromObject(object) { + CompletionDataInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CompletionDataInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CompletionDataInputConfig(); if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2.CompletionDataInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -17314,7 +18088,7 @@ function ImportMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17429,9 +18203,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportMetadata.decode = function decode(reader, length, error) { + ImportMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ImportMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17439,11 +18217,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -17463,7 +18241,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17494,16 +18272,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportMetadata.verify = function verify(message) { + ImportMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -17530,19 +18312,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ImportMetadata} ImportMetadata */ - ImportMetadata.fromObject = function fromObject(object) { + ImportMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ImportMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ImportMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2.ImportMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2.ImportMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.successCount != null) if ($util.Long) @@ -17670,7 +18456,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17746,9 +18532,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportProductsResponse.decode = function decode(reader, length, error) { + ImportProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ImportProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -17758,15 +18548,15 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17797,20 +18587,24 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportProductsResponse.verify = function verify(message) { + ImportProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } @@ -17825,9 +18619,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ImportProductsResponse} ImportProductsResponse */ - ImportProductsResponse.fromObject = function fromObject(object) { + ImportProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ImportProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ImportProductsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -17836,13 +18634,13 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2.ImportProductsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2.ImportProductsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } return message; }; @@ -17926,7 +18724,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18012,9 +18810,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportUserEventsResponse.decode = function decode(reader, length, error) { + ImportUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ImportUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18024,19 +18826,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.importSummary = $root.google.cloud.retail.v2.UserEventImportSummary.decode(reader, reader.uint32()); + message.importSummary = $root.google.cloud.retail.v2.UserEventImportSummary.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18067,25 +18869,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportUserEventsResponse.verify = function verify(message) { + ImportUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.importSummary != null && message.hasOwnProperty("importSummary")) { - var error = $root.google.cloud.retail.v2.UserEventImportSummary.verify(message.importSummary); + var error = $root.google.cloud.retail.v2.UserEventImportSummary.verify(message.importSummary, long + 1); if (error) return "importSummary." + error; } @@ -18100,9 +18906,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ImportUserEventsResponse} ImportUserEventsResponse */ - ImportUserEventsResponse.fromObject = function fromObject(object) { + ImportUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ImportUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ImportUserEventsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -18111,18 +18921,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2.ImportUserEventsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2.ImportUserEventsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.importSummary != null) { if (typeof object.importSummary !== "object") throw TypeError(".google.cloud.retail.v2.ImportUserEventsResponse.importSummary: object expected"); - message.importSummary = $root.google.cloud.retail.v2.UserEventImportSummary.fromObject(object.importSummary); + message.importSummary = $root.google.cloud.retail.v2.UserEventImportSummary.fromObject(object.importSummary, long + 1); } return message; }; @@ -18208,7 +19018,7 @@ function UserEventImportSummary(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18283,9 +19093,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventImportSummary.decode = function decode(reader, length, error) { + UserEventImportSummary.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UserEventImportSummary(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18301,7 +19115,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18332,9 +19146,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventImportSummary.verify = function verify(message) { + UserEventImportSummary.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.joinedEventsCount != null && message.hasOwnProperty("joinedEventsCount")) if (!$util.isInteger(message.joinedEventsCount) && !(message.joinedEventsCount && $util.isInteger(message.joinedEventsCount.low) && $util.isInteger(message.joinedEventsCount.high))) return "joinedEventsCount: integer|Long expected"; @@ -18352,9 +19170,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UserEventImportSummary} UserEventImportSummary */ - UserEventImportSummary.fromObject = function fromObject(object) { + UserEventImportSummary.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UserEventImportSummary) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UserEventImportSummary(); if (object.joinedEventsCount != null) if ($util.Long) @@ -18465,7 +19287,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18531,9 +19353,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportCompletionDataResponse.decode = function decode(reader, length, error) { + ImportCompletionDataResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ImportCompletionDataResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18543,11 +19369,11 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18578,14 +19404,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportCompletionDataResponse.verify = function verify(message) { + ImportCompletionDataResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } @@ -18601,9 +19431,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ImportCompletionDataResponse} ImportCompletionDataResponse */ - ImportCompletionDataResponse.fromObject = function fromObject(object) { + ImportCompletionDataResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ImportCompletionDataResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ImportCompletionDataResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -18612,7 +19446,7 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2.ImportCompletionDataResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } return message; @@ -18737,7 +19571,7 @@ this.localInventories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19162,9 +19996,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Product.decode = function decode(reader, length, error) { + Product.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Product(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -19172,11 +20010,11 @@ break; switch (tag >>> 3) { case 16: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { - message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -19242,13 +20080,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -19259,15 +20099,15 @@ break; } case 14: { - message.priceInfo = $root.google.cloud.retail.v2.PriceInfo.decode(reader, reader.uint32()); + message.priceInfo = $root.google.cloud.retail.v2.PriceInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { - message.rating = $root.google.cloud.retail.v2.Rating.decode(reader, reader.uint32()); + message.rating = $root.google.cloud.retail.v2.Rating.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { - message.availableTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.availableTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -19275,13 +20115,13 @@ break; } case 20: { - message.availableQuantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32()); + message.availableQuantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32(), undefined, long + 1); break; } case 21: { if (!(message.fulfillmentInfo && message.fulfillmentInfo.length)) message.fulfillmentInfo = []; - message.fulfillmentInfo.push($root.google.cloud.retail.v2.FulfillmentInfo.decode(reader, reader.uint32())); + message.fulfillmentInfo.push($root.google.cloud.retail.v2.FulfillmentInfo.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { @@ -19291,15 +20131,15 @@ case 23: { if (!(message.images && message.images.length)) message.images = []; - message.images.push($root.google.cloud.retail.v2.Image.decode(reader, reader.uint32())); + message.images.push($root.google.cloud.retail.v2.Image.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 24: { - message.audience = $root.google.cloud.retail.v2.Audience.decode(reader, reader.uint32()); + message.audience = $root.google.cloud.retail.v2.Audience.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.colorInfo = $root.google.cloud.retail.v2.ColorInfo.decode(reader, reader.uint32()); + message.colorInfo = $root.google.cloud.retail.v2.ColorInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { @@ -19329,31 +20169,31 @@ case 34: { if (!(message.promotions && message.promotions.length)) message.promotions = []; - message.promotions.push($root.google.cloud.retail.v2.Promotion.decode(reader, reader.uint32())); + message.promotions.push($root.google.cloud.retail.v2.Promotion.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 33: { - message.publishTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.publishTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 30: { - message.retrievableFields = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.retrievableFields = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 31: { if (!(message.variants && message.variants.length)) message.variants = []; - message.variants.push($root.google.cloud.retail.v2.Product.decode(reader, reader.uint32())); + message.variants.push($root.google.cloud.retail.v2.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 35: { if (!(message.localInventories && message.localInventories.length)) message.localInventories = []; - message.localInventories.push($root.google.cloud.retail.v2.LocalInventory.decode(reader, reader.uint32())); + message.localInventories.push($root.google.cloud.retail.v2.LocalInventory.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19384,14 +20224,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Product.verify = function verify(message) { + Product.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.expireTime != null && message.hasOwnProperty("expireTime")) { properties.expiration = 1; { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -19401,7 +20245,7 @@ return "expiration: multiple values"; properties.expiration = 1; { - var error = $root.google.protobuf.Duration.verify(message.ttl); + var error = $root.google.protobuf.Duration.verify(message.ttl, long + 1); if (error) return "ttl." + error; } @@ -19463,7 +20307,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -19476,17 +20320,17 @@ return "tags: string[] expected"; } if (message.priceInfo != null && message.hasOwnProperty("priceInfo")) { - var error = $root.google.cloud.retail.v2.PriceInfo.verify(message.priceInfo); + var error = $root.google.cloud.retail.v2.PriceInfo.verify(message.priceInfo, long + 1); if (error) return "priceInfo." + error; } if (message.rating != null && message.hasOwnProperty("rating")) { - var error = $root.google.cloud.retail.v2.Rating.verify(message.rating); + var error = $root.google.cloud.retail.v2.Rating.verify(message.rating, long + 1); if (error) return "rating." + error; } if (message.availableTime != null && message.hasOwnProperty("availableTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.availableTime); + var error = $root.google.protobuf.Timestamp.verify(message.availableTime, long + 1); if (error) return "availableTime." + error; } @@ -19502,7 +20346,7 @@ break; } if (message.availableQuantity != null && message.hasOwnProperty("availableQuantity")) { - var error = $root.google.protobuf.Int32Value.verify(message.availableQuantity); + var error = $root.google.protobuf.Int32Value.verify(message.availableQuantity, long + 1); if (error) return "availableQuantity." + error; } @@ -19510,7 +20354,7 @@ if (!Array.isArray(message.fulfillmentInfo)) return "fulfillmentInfo: array expected"; for (var i = 0; i < message.fulfillmentInfo.length; ++i) { - var error = $root.google.cloud.retail.v2.FulfillmentInfo.verify(message.fulfillmentInfo[i]); + var error = $root.google.cloud.retail.v2.FulfillmentInfo.verify(message.fulfillmentInfo[i], long + 1); if (error) return "fulfillmentInfo." + error; } @@ -19522,18 +20366,18 @@ if (!Array.isArray(message.images)) return "images: array expected"; for (var i = 0; i < message.images.length; ++i) { - var error = $root.google.cloud.retail.v2.Image.verify(message.images[i]); + var error = $root.google.cloud.retail.v2.Image.verify(message.images[i], long + 1); if (error) return "images." + error; } } if (message.audience != null && message.hasOwnProperty("audience")) { - var error = $root.google.cloud.retail.v2.Audience.verify(message.audience); + var error = $root.google.cloud.retail.v2.Audience.verify(message.audience, long + 1); if (error) return "audience." + error; } if (message.colorInfo != null && message.hasOwnProperty("colorInfo")) { - var error = $root.google.cloud.retail.v2.ColorInfo.verify(message.colorInfo); + var error = $root.google.cloud.retail.v2.ColorInfo.verify(message.colorInfo, long + 1); if (error) return "colorInfo." + error; } @@ -19569,18 +20413,18 @@ if (!Array.isArray(message.promotions)) return "promotions: array expected"; for (var i = 0; i < message.promotions.length; ++i) { - var error = $root.google.cloud.retail.v2.Promotion.verify(message.promotions[i]); + var error = $root.google.cloud.retail.v2.Promotion.verify(message.promotions[i], long + 1); if (error) return "promotions." + error; } } if (message.publishTime != null && message.hasOwnProperty("publishTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.publishTime); + var error = $root.google.protobuf.Timestamp.verify(message.publishTime, long + 1); if (error) return "publishTime." + error; } if (message.retrievableFields != null && message.hasOwnProperty("retrievableFields")) { - var error = $root.google.protobuf.FieldMask.verify(message.retrievableFields); + var error = $root.google.protobuf.FieldMask.verify(message.retrievableFields, long + 1); if (error) return "retrievableFields." + error; } @@ -19588,7 +20432,7 @@ if (!Array.isArray(message.variants)) return "variants: array expected"; for (var i = 0; i < message.variants.length; ++i) { - var error = $root.google.cloud.retail.v2.Product.verify(message.variants[i]); + var error = $root.google.cloud.retail.v2.Product.verify(message.variants[i], long + 1); if (error) return "variants." + error; } @@ -19597,7 +20441,7 @@ if (!Array.isArray(message.localInventories)) return "localInventories: array expected"; for (var i = 0; i < message.localInventories.length; ++i) { - var error = $root.google.cloud.retail.v2.LocalInventory.verify(message.localInventories[i]); + var error = $root.google.cloud.retail.v2.LocalInventory.verify(message.localInventories[i], long + 1); if (error) return "localInventories." + error; } @@ -19613,19 +20457,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Product} Product */ - Product.fromObject = function fromObject(object) { + Product.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Product) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Product(); if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.retail.v2.Product.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.ttl != null) { if (typeof object.ttl !== "object") throw TypeError(".google.cloud.retail.v2.Product.ttl: object expected"); - message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl); + message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl, long + 1); } if (object.name != null) message.name = String(object.name); @@ -19691,9 +20539,11 @@ throw TypeError(".google.cloud.retail.v2.Product.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.Product.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.tags) { @@ -19706,17 +20556,17 @@ if (object.priceInfo != null) { if (typeof object.priceInfo !== "object") throw TypeError(".google.cloud.retail.v2.Product.priceInfo: object expected"); - message.priceInfo = $root.google.cloud.retail.v2.PriceInfo.fromObject(object.priceInfo); + message.priceInfo = $root.google.cloud.retail.v2.PriceInfo.fromObject(object.priceInfo, long + 1); } if (object.rating != null) { if (typeof object.rating !== "object") throw TypeError(".google.cloud.retail.v2.Product.rating: object expected"); - message.rating = $root.google.cloud.retail.v2.Rating.fromObject(object.rating); + message.rating = $root.google.cloud.retail.v2.Rating.fromObject(object.rating, long + 1); } if (object.availableTime != null) { if (typeof object.availableTime !== "object") throw TypeError(".google.cloud.retail.v2.Product.availableTime: object expected"); - message.availableTime = $root.google.protobuf.Timestamp.fromObject(object.availableTime); + message.availableTime = $root.google.protobuf.Timestamp.fromObject(object.availableTime, long + 1); } switch (object.availability) { default: @@ -19749,7 +20599,7 @@ if (object.availableQuantity != null) { if (typeof object.availableQuantity !== "object") throw TypeError(".google.cloud.retail.v2.Product.availableQuantity: object expected"); - message.availableQuantity = $root.google.protobuf.Int32Value.fromObject(object.availableQuantity); + message.availableQuantity = $root.google.protobuf.Int32Value.fromObject(object.availableQuantity, long + 1); } if (object.fulfillmentInfo) { if (!Array.isArray(object.fulfillmentInfo)) @@ -19758,7 +20608,7 @@ for (var i = 0; i < object.fulfillmentInfo.length; ++i) { if (typeof object.fulfillmentInfo[i] !== "object") throw TypeError(".google.cloud.retail.v2.Product.fulfillmentInfo: object expected"); - message.fulfillmentInfo[i] = $root.google.cloud.retail.v2.FulfillmentInfo.fromObject(object.fulfillmentInfo[i]); + message.fulfillmentInfo[i] = $root.google.cloud.retail.v2.FulfillmentInfo.fromObject(object.fulfillmentInfo[i], long + 1); } } if (object.uri != null) @@ -19770,18 +20620,18 @@ for (var i = 0; i < object.images.length; ++i) { if (typeof object.images[i] !== "object") throw TypeError(".google.cloud.retail.v2.Product.images: object expected"); - message.images[i] = $root.google.cloud.retail.v2.Image.fromObject(object.images[i]); + message.images[i] = $root.google.cloud.retail.v2.Image.fromObject(object.images[i], long + 1); } } if (object.audience != null) { if (typeof object.audience !== "object") throw TypeError(".google.cloud.retail.v2.Product.audience: object expected"); - message.audience = $root.google.cloud.retail.v2.Audience.fromObject(object.audience); + message.audience = $root.google.cloud.retail.v2.Audience.fromObject(object.audience, long + 1); } if (object.colorInfo != null) { if (typeof object.colorInfo !== "object") throw TypeError(".google.cloud.retail.v2.Product.colorInfo: object expected"); - message.colorInfo = $root.google.cloud.retail.v2.ColorInfo.fromObject(object.colorInfo); + message.colorInfo = $root.google.cloud.retail.v2.ColorInfo.fromObject(object.colorInfo, long + 1); } if (object.sizes) { if (!Array.isArray(object.sizes)) @@ -19818,18 +20668,18 @@ for (var i = 0; i < object.promotions.length; ++i) { if (typeof object.promotions[i] !== "object") throw TypeError(".google.cloud.retail.v2.Product.promotions: object expected"); - message.promotions[i] = $root.google.cloud.retail.v2.Promotion.fromObject(object.promotions[i]); + message.promotions[i] = $root.google.cloud.retail.v2.Promotion.fromObject(object.promotions[i], long + 1); } } if (object.publishTime != null) { if (typeof object.publishTime !== "object") throw TypeError(".google.cloud.retail.v2.Product.publishTime: object expected"); - message.publishTime = $root.google.protobuf.Timestamp.fromObject(object.publishTime); + message.publishTime = $root.google.protobuf.Timestamp.fromObject(object.publishTime, long + 1); } if (object.retrievableFields != null) { if (typeof object.retrievableFields !== "object") throw TypeError(".google.cloud.retail.v2.Product.retrievableFields: object expected"); - message.retrievableFields = $root.google.protobuf.FieldMask.fromObject(object.retrievableFields); + message.retrievableFields = $root.google.protobuf.FieldMask.fromObject(object.retrievableFields, long + 1); } if (object.variants) { if (!Array.isArray(object.variants)) @@ -19838,7 +20688,7 @@ for (var i = 0; i < object.variants.length; ++i) { if (typeof object.variants[i] !== "object") throw TypeError(".google.cloud.retail.v2.Product.variants: object expected"); - message.variants[i] = $root.google.cloud.retail.v2.Product.fromObject(object.variants[i]); + message.variants[i] = $root.google.cloud.retail.v2.Product.fromObject(object.variants[i], long + 1); } } if (object.localInventories) { @@ -19848,7 +20698,7 @@ for (var i = 0; i < object.localInventories.length; ++i) { if (typeof object.localInventories[i] !== "object") throw TypeError(".google.cloud.retail.v2.Product.localInventories: object expected"); - message.localInventories[i] = $root.google.cloud.retail.v2.LocalInventory.fromObject(object.localInventories[i]); + message.localInventories[i] = $root.google.cloud.retail.v2.LocalInventory.fromObject(object.localInventories[i], long + 1); } } return message; @@ -19938,8 +20788,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.tags && message.tags.length) { object.tags = []; @@ -20111,7 +20964,7 @@ function Promotion(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20176,9 +21029,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Promotion.decode = function decode(reader, length, error) { + Promotion.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Promotion(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20190,7 +21047,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20221,9 +21078,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Promotion.verify = function verify(message) { + Promotion.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.promotionId != null && message.hasOwnProperty("promotionId")) if (!$util.isString(message.promotionId)) return "promotionId: string expected"; @@ -20238,9 +21099,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Promotion} Promotion */ - Promotion.fromObject = function fromObject(object) { + Promotion.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Promotion) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Promotion(); if (object.promotionId != null) message.promotionId = String(object.promotionId); @@ -20340,7 +21205,7 @@ this.pageCategories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20611,9 +21476,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEvent.decode = function decode(reader, length, error) { + UserEvent.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UserEvent(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -20633,7 +21502,7 @@ break; } case 3: { - message.eventTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.eventTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -20649,11 +21518,11 @@ case 6: { if (!(message.productDetails && message.productDetails.length)) message.productDetails = []; - message.productDetails.push($root.google.cloud.retail.v2.ProductDetail.decode(reader, reader.uint32())); + message.productDetails.push($root.google.cloud.retail.v2.ProductDetail.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { - message.completionDetail = $root.google.cloud.retail.v2.CompletionDetail.decode(reader, reader.uint32()); + message.completionDetail = $root.google.cloud.retail.v2.CompletionDetail.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -20669,13 +21538,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -20684,7 +21555,7 @@ break; } case 9: { - message.purchaseTransaction = $root.google.cloud.retail.v2.PurchaseTransaction.decode(reader, reader.uint32()); + message.purchaseTransaction = $root.google.cloud.retail.v2.PurchaseTransaction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -20710,7 +21581,7 @@ break; } case 12: { - message.userInfo = $root.google.cloud.retail.v2.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { @@ -20730,7 +21601,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20761,9 +21632,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEvent.verify = function verify(message) { + UserEvent.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.eventType != null && message.hasOwnProperty("eventType")) if (!$util.isString(message.eventType)) return "eventType: string expected"; @@ -20774,7 +21649,7 @@ if (!$util.isString(message.sessionId)) return "sessionId: string expected"; if (message.eventTime != null && message.hasOwnProperty("eventTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.eventTime); + var error = $root.google.protobuf.Timestamp.verify(message.eventTime, long + 1); if (error) return "eventTime." + error; } @@ -20792,13 +21667,13 @@ if (!Array.isArray(message.productDetails)) return "productDetails: array expected"; for (var i = 0; i < message.productDetails.length; ++i) { - var error = $root.google.cloud.retail.v2.ProductDetail.verify(message.productDetails[i]); + var error = $root.google.cloud.retail.v2.ProductDetail.verify(message.productDetails[i], long + 1); if (error) return "productDetails." + error; } } if (message.completionDetail != null && message.hasOwnProperty("completionDetail")) { - var error = $root.google.cloud.retail.v2.CompletionDetail.verify(message.completionDetail); + var error = $root.google.cloud.retail.v2.CompletionDetail.verify(message.completionDetail, long + 1); if (error) return "completionDetail." + error; } @@ -20807,7 +21682,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -20816,7 +21691,7 @@ if (!$util.isString(message.cartId)) return "cartId: string expected"; if (message.purchaseTransaction != null && message.hasOwnProperty("purchaseTransaction")) { - var error = $root.google.cloud.retail.v2.PurchaseTransaction.verify(message.purchaseTransaction); + var error = $root.google.cloud.retail.v2.PurchaseTransaction.verify(message.purchaseTransaction, long + 1); if (error) return "purchaseTransaction." + error; } @@ -20840,7 +21715,7 @@ return "pageCategories: string[] expected"; } if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } @@ -20867,9 +21742,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UserEvent} UserEvent */ - UserEvent.fromObject = function fromObject(object) { + UserEvent.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UserEvent) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UserEvent(); if (object.eventType != null) message.eventType = String(object.eventType); @@ -20880,7 +21759,7 @@ if (object.eventTime != null) { if (typeof object.eventTime !== "object") throw TypeError(".google.cloud.retail.v2.UserEvent.eventTime: object expected"); - message.eventTime = $root.google.protobuf.Timestamp.fromObject(object.eventTime); + message.eventTime = $root.google.protobuf.Timestamp.fromObject(object.eventTime, long + 1); } if (object.experimentIds) { if (!Array.isArray(object.experimentIds)) @@ -20898,22 +21777,24 @@ for (var i = 0; i < object.productDetails.length; ++i) { if (typeof object.productDetails[i] !== "object") throw TypeError(".google.cloud.retail.v2.UserEvent.productDetails: object expected"); - message.productDetails[i] = $root.google.cloud.retail.v2.ProductDetail.fromObject(object.productDetails[i]); + message.productDetails[i] = $root.google.cloud.retail.v2.ProductDetail.fromObject(object.productDetails[i], long + 1); } } if (object.completionDetail != null) { if (typeof object.completionDetail !== "object") throw TypeError(".google.cloud.retail.v2.UserEvent.completionDetail: object expected"); - message.completionDetail = $root.google.cloud.retail.v2.CompletionDetail.fromObject(object.completionDetail); + message.completionDetail = $root.google.cloud.retail.v2.CompletionDetail.fromObject(object.completionDetail, long + 1); } if (object.attributes) { if (typeof object.attributes !== "object") throw TypeError(".google.cloud.retail.v2.UserEvent.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.UserEvent.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.cartId != null) @@ -20921,7 +21802,7 @@ if (object.purchaseTransaction != null) { if (typeof object.purchaseTransaction !== "object") throw TypeError(".google.cloud.retail.v2.UserEvent.purchaseTransaction: object expected"); - message.purchaseTransaction = $root.google.cloud.retail.v2.PurchaseTransaction.fromObject(object.purchaseTransaction); + message.purchaseTransaction = $root.google.cloud.retail.v2.PurchaseTransaction.fromObject(object.purchaseTransaction, long + 1); } if (object.searchQuery != null) message.searchQuery = String(object.searchQuery); @@ -20941,7 +21822,7 @@ if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2.UserEvent.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2.UserInfo.fromObject(object.userInfo, long + 1); } if (object.uri != null) message.uri = String(object.uri); @@ -21014,8 +21895,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.cartId != null && message.hasOwnProperty("cartId")) object.cartId = message.cartId; @@ -21101,7 +21985,7 @@ function ProductDetail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21176,9 +22060,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductDetail.decode = function decode(reader, length, error) { + ProductDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ProductDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21186,15 +22074,15 @@ break; switch (tag >>> 3) { case 1: { - message.product = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.quantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32()); + message.quantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21225,16 +22113,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductDetail.verify = function verify(message) { + ProductDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2.Product.verify(message.product); + var error = $root.google.cloud.retail.v2.Product.verify(message.product, long + 1); if (error) return "product." + error; } if (message.quantity != null && message.hasOwnProperty("quantity")) { - var error = $root.google.protobuf.Int32Value.verify(message.quantity); + var error = $root.google.protobuf.Int32Value.verify(message.quantity, long + 1); if (error) return "quantity." + error; } @@ -21249,19 +22141,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ProductDetail} ProductDetail */ - ProductDetail.fromObject = function fromObject(object) { + ProductDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ProductDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ProductDetail(); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2.ProductDetail.product: object expected"); - message.product = $root.google.cloud.retail.v2.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2.Product.fromObject(object.product, long + 1); } if (object.quantity != null) { if (typeof object.quantity !== "object") throw TypeError(".google.cloud.retail.v2.ProductDetail.quantity: object expected"); - message.quantity = $root.google.protobuf.Int32Value.fromObject(object.quantity); + message.quantity = $root.google.protobuf.Int32Value.fromObject(object.quantity, long + 1); } return message; }; @@ -21341,7 +22237,7 @@ function CompletionDetail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21426,9 +22322,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionDetail.decode = function decode(reader, length, error) { + CompletionDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CompletionDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21448,7 +22348,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21479,9 +22379,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionDetail.verify = function verify(message) { + CompletionDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionAttributionToken != null && message.hasOwnProperty("completionAttributionToken")) if (!$util.isString(message.completionAttributionToken)) return "completionAttributionToken: string expected"; @@ -21502,9 +22406,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CompletionDetail} CompletionDetail */ - CompletionDetail.fromObject = function fromObject(object) { + CompletionDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CompletionDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CompletionDetail(); if (object.completionAttributionToken != null) message.completionAttributionToken = String(object.completionAttributionToken); @@ -21595,7 +22503,7 @@ function PurchaseTransaction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21700,9 +22608,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurchaseTransaction.decode = function decode(reader, length, error) { + PurchaseTransaction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PurchaseTransaction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21730,7 +22642,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21761,9 +22673,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurchaseTransaction.verify = function verify(message) { + PurchaseTransaction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -21790,9 +22706,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PurchaseTransaction} PurchaseTransaction */ - PurchaseTransaction.fromObject = function fromObject(object) { + PurchaseTransaction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PurchaseTransaction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PurchaseTransaction(); if (object.id != null) message.id = String(object.id); @@ -22289,7 +23209,7 @@ function ListCatalogsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22374,9 +23294,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListCatalogsRequest.decode = function decode(reader, length, error) { + ListCatalogsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListCatalogsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22396,7 +23320,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22427,9 +23351,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListCatalogsRequest.verify = function verify(message) { + ListCatalogsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -22450,9 +23378,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListCatalogsRequest} ListCatalogsRequest */ - ListCatalogsRequest.fromObject = function fromObject(object) { + ListCatalogsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListCatalogsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListCatalogsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -22541,7 +23473,7 @@ this.catalogs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22617,9 +23549,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListCatalogsResponse.decode = function decode(reader, length, error) { + ListCatalogsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListCatalogsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22629,7 +23565,7 @@ case 1: { if (!(message.catalogs && message.catalogs.length)) message.catalogs = []; - message.catalogs.push($root.google.cloud.retail.v2.Catalog.decode(reader, reader.uint32())); + message.catalogs.push($root.google.cloud.retail.v2.Catalog.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -22637,7 +23573,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22668,14 +23604,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListCatalogsResponse.verify = function verify(message) { + ListCatalogsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalogs != null && message.hasOwnProperty("catalogs")) { if (!Array.isArray(message.catalogs)) return "catalogs: array expected"; for (var i = 0; i < message.catalogs.length; ++i) { - var error = $root.google.cloud.retail.v2.Catalog.verify(message.catalogs[i]); + var error = $root.google.cloud.retail.v2.Catalog.verify(message.catalogs[i], long + 1); if (error) return "catalogs." + error; } @@ -22694,9 +23634,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListCatalogsResponse} ListCatalogsResponse */ - ListCatalogsResponse.fromObject = function fromObject(object) { + ListCatalogsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListCatalogsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListCatalogsResponse(); if (object.catalogs) { if (!Array.isArray(object.catalogs)) @@ -22705,7 +23649,7 @@ for (var i = 0; i < object.catalogs.length; ++i) { if (typeof object.catalogs[i] !== "object") throw TypeError(".google.cloud.retail.v2.ListCatalogsResponse.catalogs: object expected"); - message.catalogs[i] = $root.google.cloud.retail.v2.Catalog.fromObject(object.catalogs[i]); + message.catalogs[i] = $root.google.cloud.retail.v2.Catalog.fromObject(object.catalogs[i], long + 1); } } if (object.nextPageToken != null) @@ -22790,7 +23734,7 @@ function UpdateCatalogRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22865,9 +23809,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateCatalogRequest.decode = function decode(reader, length, error) { + UpdateCatalogRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateCatalogRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22875,15 +23823,15 @@ break; switch (tag >>> 3) { case 1: { - message.catalog = $root.google.cloud.retail.v2.Catalog.decode(reader, reader.uint32()); + message.catalog = $root.google.cloud.retail.v2.Catalog.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22914,16 +23862,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateCatalogRequest.verify = function verify(message) { + UpdateCatalogRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) { - var error = $root.google.cloud.retail.v2.Catalog.verify(message.catalog); + var error = $root.google.cloud.retail.v2.Catalog.verify(message.catalog, long + 1); if (error) return "catalog." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -22938,19 +23890,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateCatalogRequest} UpdateCatalogRequest */ - UpdateCatalogRequest.fromObject = function fromObject(object) { + UpdateCatalogRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateCatalogRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateCatalogRequest(); if (object.catalog != null) { if (typeof object.catalog !== "object") throw TypeError(".google.cloud.retail.v2.UpdateCatalogRequest.catalog: object expected"); - message.catalog = $root.google.cloud.retail.v2.Catalog.fromObject(object.catalog); + message.catalog = $root.google.cloud.retail.v2.Catalog.fromObject(object.catalog, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateCatalogRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -23031,7 +23987,7 @@ function SetDefaultBranchRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23126,9 +24082,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetDefaultBranchRequest.decode = function decode(reader, length, error) { + SetDefaultBranchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SetDefaultBranchRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23152,7 +24112,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23183,9 +24143,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetDefaultBranchRequest.verify = function verify(message) { + SetDefaultBranchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -23209,9 +24173,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SetDefaultBranchRequest} SetDefaultBranchRequest */ - SetDefaultBranchRequest.fromObject = function fromObject(object) { + SetDefaultBranchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SetDefaultBranchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SetDefaultBranchRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -23303,7 +24271,7 @@ function GetDefaultBranchRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23368,9 +24336,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetDefaultBranchRequest.decode = function decode(reader, length, error) { + GetDefaultBranchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetDefaultBranchRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23382,7 +24354,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23413,9 +24385,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetDefaultBranchRequest.verify = function verify(message) { + GetDefaultBranchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -23430,9 +24406,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetDefaultBranchRequest} GetDefaultBranchRequest */ - GetDefaultBranchRequest.fromObject = function fromObject(object) { + GetDefaultBranchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetDefaultBranchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetDefaultBranchRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -23510,7 +24490,7 @@ function GetDefaultBranchResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23595,9 +24575,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetDefaultBranchResponse.decode = function decode(reader, length, error) { + GetDefaultBranchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetDefaultBranchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23609,7 +24593,7 @@ break; } case 2: { - message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -23617,7 +24601,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23648,14 +24632,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetDefaultBranchResponse.verify = function verify(message) { + GetDefaultBranchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.branch != null && message.hasOwnProperty("branch")) if (!$util.isString(message.branch)) return "branch: string expected"; if (message.setTime != null && message.hasOwnProperty("setTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.setTime); + var error = $root.google.protobuf.Timestamp.verify(message.setTime, long + 1); if (error) return "setTime." + error; } @@ -23673,16 +24661,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetDefaultBranchResponse} GetDefaultBranchResponse */ - GetDefaultBranchResponse.fromObject = function fromObject(object) { + GetDefaultBranchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetDefaultBranchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetDefaultBranchResponse(); if (object.branch != null) message.branch = String(object.branch); if (object.setTime != null) { if (typeof object.setTime !== "object") throw TypeError(".google.cloud.retail.v2.GetDefaultBranchResponse.setTime: object expected"); - message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime); + message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime, long + 1); } if (object.note != null) message.note = String(object.note); @@ -23765,7 +24757,7 @@ function GetCompletionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23830,9 +24822,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCompletionConfigRequest.decode = function decode(reader, length, error) { + GetCompletionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetCompletionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23844,7 +24840,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23875,9 +24871,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetCompletionConfigRequest.verify = function verify(message) { + GetCompletionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -23892,9 +24892,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetCompletionConfigRequest} GetCompletionConfigRequest */ - GetCompletionConfigRequest.fromObject = function fromObject(object) { + GetCompletionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetCompletionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetCompletionConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -23971,7 +24975,7 @@ function UpdateCompletionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24046,9 +25050,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateCompletionConfigRequest.decode = function decode(reader, length, error) { + UpdateCompletionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateCompletionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24056,15 +25064,15 @@ break; switch (tag >>> 3) { case 1: { - message.completionConfig = $root.google.cloud.retail.v2.CompletionConfig.decode(reader, reader.uint32()); + message.completionConfig = $root.google.cloud.retail.v2.CompletionConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24095,16 +25103,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateCompletionConfigRequest.verify = function verify(message) { + UpdateCompletionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionConfig != null && message.hasOwnProperty("completionConfig")) { - var error = $root.google.cloud.retail.v2.CompletionConfig.verify(message.completionConfig); + var error = $root.google.cloud.retail.v2.CompletionConfig.verify(message.completionConfig, long + 1); if (error) return "completionConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -24119,19 +25131,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateCompletionConfigRequest} UpdateCompletionConfigRequest */ - UpdateCompletionConfigRequest.fromObject = function fromObject(object) { + UpdateCompletionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateCompletionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateCompletionConfigRequest(); if (object.completionConfig != null) { if (typeof object.completionConfig !== "object") throw TypeError(".google.cloud.retail.v2.UpdateCompletionConfigRequest.completionConfig: object expected"); - message.completionConfig = $root.google.cloud.retail.v2.CompletionConfig.fromObject(object.completionConfig); + message.completionConfig = $root.google.cloud.retail.v2.CompletionConfig.fromObject(object.completionConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateCompletionConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -24209,7 +25225,7 @@ function GetAttributesConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24274,9 +25290,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetAttributesConfigRequest.decode = function decode(reader, length, error) { + GetAttributesConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetAttributesConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24288,7 +25308,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24319,9 +25339,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetAttributesConfigRequest.verify = function verify(message) { + GetAttributesConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -24336,9 +25360,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetAttributesConfigRequest} GetAttributesConfigRequest */ - GetAttributesConfigRequest.fromObject = function fromObject(object) { + GetAttributesConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetAttributesConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetAttributesConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -24415,7 +25443,7 @@ function UpdateAttributesConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24490,9 +25518,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateAttributesConfigRequest.decode = function decode(reader, length, error) { + UpdateAttributesConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateAttributesConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24500,15 +25532,15 @@ break; switch (tag >>> 3) { case 1: { - message.attributesConfig = $root.google.cloud.retail.v2.AttributesConfig.decode(reader, reader.uint32()); + message.attributesConfig = $root.google.cloud.retail.v2.AttributesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24539,16 +25571,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateAttributesConfigRequest.verify = function verify(message) { + UpdateAttributesConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) { - var error = $root.google.cloud.retail.v2.AttributesConfig.verify(message.attributesConfig); + var error = $root.google.cloud.retail.v2.AttributesConfig.verify(message.attributesConfig, long + 1); if (error) return "attributesConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -24563,19 +25599,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateAttributesConfigRequest} UpdateAttributesConfigRequest */ - UpdateAttributesConfigRequest.fromObject = function fromObject(object) { + UpdateAttributesConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateAttributesConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateAttributesConfigRequest(); if (object.attributesConfig != null) { if (typeof object.attributesConfig !== "object") throw TypeError(".google.cloud.retail.v2.UpdateAttributesConfigRequest.attributesConfig: object expected"); - message.attributesConfig = $root.google.cloud.retail.v2.AttributesConfig.fromObject(object.attributesConfig); + message.attributesConfig = $root.google.cloud.retail.v2.AttributesConfig.fromObject(object.attributesConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateAttributesConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -24654,7 +25694,7 @@ function AddCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24729,9 +25769,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddCatalogAttributeRequest.decode = function decode(reader, length, error) { + AddCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AddCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24743,11 +25787,11 @@ break; } case 2: { - message.catalogAttribute = $root.google.cloud.retail.v2.CatalogAttribute.decode(reader, reader.uint32()); + message.catalogAttribute = $root.google.cloud.retail.v2.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24778,14 +25822,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddCatalogAttributeRequest.verify = function verify(message) { + AddCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; if (message.catalogAttribute != null && message.hasOwnProperty("catalogAttribute")) { - var error = $root.google.cloud.retail.v2.CatalogAttribute.verify(message.catalogAttribute); + var error = $root.google.cloud.retail.v2.CatalogAttribute.verify(message.catalogAttribute, long + 1); if (error) return "catalogAttribute." + error; } @@ -24800,16 +25848,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AddCatalogAttributeRequest} AddCatalogAttributeRequest */ - AddCatalogAttributeRequest.fromObject = function fromObject(object) { + AddCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AddCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.AddCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); if (object.catalogAttribute != null) { if (typeof object.catalogAttribute !== "object") throw TypeError(".google.cloud.retail.v2.AddCatalogAttributeRequest.catalogAttribute: object expected"); - message.catalogAttribute = $root.google.cloud.retail.v2.CatalogAttribute.fromObject(object.catalogAttribute); + message.catalogAttribute = $root.google.cloud.retail.v2.CatalogAttribute.fromObject(object.catalogAttribute, long + 1); } return message; }; @@ -24888,7 +25940,7 @@ function RemoveCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24963,9 +26015,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveCatalogAttributeRequest.decode = function decode(reader, length, error) { + RemoveCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RemoveCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -24981,7 +26037,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25012,9 +26068,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveCatalogAttributeRequest.verify = function verify(message) { + RemoveCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; @@ -25032,9 +26092,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RemoveCatalogAttributeRequest} RemoveCatalogAttributeRequest */ - RemoveCatalogAttributeRequest.fromObject = function fromObject(object) { + RemoveCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RemoveCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.RemoveCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); @@ -25118,7 +26182,7 @@ function ReplaceCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25203,9 +26267,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReplaceCatalogAttributeRequest.decode = function decode(reader, length, error) { + ReplaceCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ReplaceCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25217,15 +26285,15 @@ break; } case 2: { - message.catalogAttribute = $root.google.cloud.retail.v2.CatalogAttribute.decode(reader, reader.uint32()); + message.catalogAttribute = $root.google.cloud.retail.v2.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25256,19 +26324,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReplaceCatalogAttributeRequest.verify = function verify(message) { + ReplaceCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; if (message.catalogAttribute != null && message.hasOwnProperty("catalogAttribute")) { - var error = $root.google.cloud.retail.v2.CatalogAttribute.verify(message.catalogAttribute); + var error = $root.google.cloud.retail.v2.CatalogAttribute.verify(message.catalogAttribute, long + 1); if (error) return "catalogAttribute." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -25283,21 +26355,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ReplaceCatalogAttributeRequest} ReplaceCatalogAttributeRequest */ - ReplaceCatalogAttributeRequest.fromObject = function fromObject(object) { + ReplaceCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ReplaceCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ReplaceCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); if (object.catalogAttribute != null) { if (typeof object.catalogAttribute !== "object") throw TypeError(".google.cloud.retail.v2.ReplaceCatalogAttributeRequest.catalogAttribute: object expected"); - message.catalogAttribute = $root.google.cloud.retail.v2.CatalogAttribute.fromObject(object.catalogAttribute); + message.catalogAttribute = $root.google.cloud.retail.v2.CatalogAttribute.fromObject(object.catalogAttribute, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.ReplaceCatalogAttributeRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -25488,7 +26564,7 @@ this.languageCodes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25634,9 +26710,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompleteQueryRequest.decode = function decode(reader, length, error) { + CompleteQueryRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CompleteQueryRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25682,7 +26762,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25713,9 +26793,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompleteQueryRequest.verify = function verify(message) { + CompleteQueryRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -25758,9 +26842,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CompleteQueryRequest} CompleteQueryRequest */ - CompleteQueryRequest.fromObject = function fromObject(object) { + CompleteQueryRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CompleteQueryRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CompleteQueryRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -25892,7 +26980,7 @@ this.attributeResults = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25992,9 +27080,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompleteQueryResponse.decode = function decode(reader, length, error) { + CompleteQueryResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CompleteQueryResponse(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -26004,7 +27096,7 @@ case 1: { if (!(message.completionResults && message.completionResults.length)) message.completionResults = []; - message.completionResults.push($root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult.decode(reader, reader.uint32())); + message.completionResults.push($root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -26014,7 +27106,7 @@ case 3: { if (!(message.recentSearchResults && message.recentSearchResults.length)) message.recentSearchResults = []; - message.recentSearchResults.push($root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult.decode(reader, reader.uint32())); + message.recentSearchResults.push($root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -26030,18 +27122,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributeResults, key); message.attributeResults[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26072,14 +27166,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompleteQueryResponse.verify = function verify(message) { + CompleteQueryResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionResults != null && message.hasOwnProperty("completionResults")) { if (!Array.isArray(message.completionResults)) return "completionResults: array expected"; for (var i = 0; i < message.completionResults.length; ++i) { - var error = $root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult.verify(message.completionResults[i]); + var error = $root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult.verify(message.completionResults[i], long + 1); if (error) return "completionResults." + error; } @@ -26091,7 +27189,7 @@ if (!Array.isArray(message.recentSearchResults)) return "recentSearchResults: array expected"; for (var i = 0; i < message.recentSearchResults.length; ++i) { - var error = $root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult.verify(message.recentSearchResults[i]); + var error = $root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult.verify(message.recentSearchResults[i], long + 1); if (error) return "recentSearchResults." + error; } @@ -26101,7 +27199,7 @@ return "attributeResults: object expected"; var key = Object.keys(message.attributeResults); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult.verify(message.attributeResults[key[i]]); + var error = $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult.verify(message.attributeResults[key[i]], long + 1); if (error) return "attributeResults." + error; } @@ -26117,9 +27215,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CompleteQueryResponse} CompleteQueryResponse */ - CompleteQueryResponse.fromObject = function fromObject(object) { + CompleteQueryResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CompleteQueryResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CompleteQueryResponse(); if (object.completionResults) { if (!Array.isArray(object.completionResults)) @@ -26128,7 +27230,7 @@ for (var i = 0; i < object.completionResults.length; ++i) { if (typeof object.completionResults[i] !== "object") throw TypeError(".google.cloud.retail.v2.CompleteQueryResponse.completionResults: object expected"); - message.completionResults[i] = $root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult.fromObject(object.completionResults[i]); + message.completionResults[i] = $root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult.fromObject(object.completionResults[i], long + 1); } } if (object.attributionToken != null) @@ -26140,7 +27242,7 @@ for (var i = 0; i < object.recentSearchResults.length; ++i) { if (typeof object.recentSearchResults[i] !== "object") throw TypeError(".google.cloud.retail.v2.CompleteQueryResponse.recentSearchResults: object expected"); - message.recentSearchResults[i] = $root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult.fromObject(object.recentSearchResults[i]); + message.recentSearchResults[i] = $root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult.fromObject(object.recentSearchResults[i], long + 1); } } if (object.attributeResults) { @@ -26148,9 +27250,11 @@ throw TypeError(".google.cloud.retail.v2.CompleteQueryResponse.attributeResults: object expected"); message.attributeResults = {}; for (var keys = Object.keys(object.attributeResults), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributeResults, keys[i]); if (typeof object.attributeResults[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.CompleteQueryResponse.attributeResults: object expected"); - message.attributeResults[keys[i]] = $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult.fromObject(object.attributeResults[keys[i]]); + message.attributeResults[keys[i]] = $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult.fromObject(object.attributeResults[keys[i]], long + 1); } } return message; @@ -26192,8 +27296,11 @@ var keys2; if (message.attributeResults && (keys2 = Object.keys(message.attributeResults)).length) { object.attributeResults = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributeResults, keys2[j]); object.attributeResults[keys2[j]] = $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult.toObject(message.attributeResults[keys2[j]], options); + } } return object; }; @@ -26246,7 +27353,7 @@ this.attributes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26324,9 +27431,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionResult.decode = function decode(reader, length, error) { + CompletionResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -26350,18 +27461,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26392,9 +27505,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionResult.verify = function verify(message) { + CompletionResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.suggestion != null && message.hasOwnProperty("suggestion")) if (!$util.isString(message.suggestion)) return "suggestion: string expected"; @@ -26403,7 +27520,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -26419,9 +27536,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CompleteQueryResponse.CompletionResult} CompletionResult */ - CompletionResult.fromObject = function fromObject(object) { + CompletionResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CompleteQueryResponse.CompletionResult(); if (object.suggestion != null) message.suggestion = String(object.suggestion); @@ -26430,9 +27551,11 @@ throw TypeError(".google.cloud.retail.v2.CompleteQueryResponse.CompletionResult.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.CompleteQueryResponse.CompletionResult.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } return message; @@ -26460,8 +27583,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } return object; }; @@ -26515,7 +27641,7 @@ function RecentSearchResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26580,9 +27706,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RecentSearchResult.decode = function decode(reader, length, error) { + RecentSearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26594,7 +27724,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26625,9 +27755,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RecentSearchResult.verify = function verify(message) { + RecentSearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.recentSearch != null && message.hasOwnProperty("recentSearch")) if (!$util.isString(message.recentSearch)) return "recentSearch: string expected"; @@ -26642,9 +27776,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult} RecentSearchResult */ - RecentSearchResult.fromObject = function fromObject(object) { + RecentSearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CompleteQueryResponse.RecentSearchResult(); if (object.recentSearch != null) message.recentSearch = String(object.recentSearch); @@ -26721,7 +27859,7 @@ this.suggestions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26787,9 +27925,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AttributeResult.decode = function decode(reader, length, error) { + AttributeResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26803,7 +27945,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26834,9 +27976,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AttributeResult.verify = function verify(message) { + AttributeResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.suggestions != null && message.hasOwnProperty("suggestions")) { if (!Array.isArray(message.suggestions)) return "suggestions: array expected"; @@ -26855,9 +28001,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CompleteQueryResponse.AttributeResult} AttributeResult */ - AttributeResult.fromObject = function fromObject(object) { + AttributeResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CompleteQueryResponse.AttributeResult(); if (object.suggestions) { if (!Array.isArray(object.suggestions)) @@ -26952,7 +28102,7 @@ this.searchSolutionUseCase = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27090,9 +28240,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Control.decode = function decode(reader, length, error) { + Control.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Control(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27100,7 +28254,7 @@ break; switch (tag >>> 3) { case 4: { - message.rule = $root.google.cloud.retail.v2.Rule.decode(reader, reader.uint32()); + message.rule = $root.google.cloud.retail.v2.Rule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -27140,7 +28294,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27171,14 +28325,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Control.verify = function verify(message) { + Control.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.rule != null && message.hasOwnProperty("rule")) { properties.control = 1; { - var error = $root.google.cloud.retail.v2.Rule.verify(message.rule); + var error = $root.google.cloud.retail.v2.Rule.verify(message.rule, long + 1); if (error) return "rule." + error; } @@ -27233,14 +28391,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Control} Control */ - Control.fromObject = function fromObject(object) { + Control.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Control) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Control(); if (object.rule != null) { if (typeof object.rule !== "object") throw TypeError(".google.cloud.retail.v2.Control.rule: object expected"); - message.rule = $root.google.cloud.retail.v2.Rule.fromObject(object.rule); + message.rule = $root.google.cloud.retail.v2.Rule.fromObject(object.rule, long + 1); } if (object.name != null) message.name = String(object.name); @@ -27606,7 +28768,7 @@ function CreateControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27691,9 +28853,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateControlRequest.decode = function decode(reader, length, error) { + CreateControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CreateControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27705,7 +28871,7 @@ break; } case 2: { - message.control = $root.google.cloud.retail.v2.Control.decode(reader, reader.uint32()); + message.control = $root.google.cloud.retail.v2.Control.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -27713,7 +28879,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27744,14 +28910,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateControlRequest.verify = function verify(message) { + CreateControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.control != null && message.hasOwnProperty("control")) { - var error = $root.google.cloud.retail.v2.Control.verify(message.control); + var error = $root.google.cloud.retail.v2.Control.verify(message.control, long + 1); if (error) return "control." + error; } @@ -27769,16 +28939,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CreateControlRequest} CreateControlRequest */ - CreateControlRequest.fromObject = function fromObject(object) { + CreateControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CreateControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CreateControlRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.control != null) { if (typeof object.control !== "object") throw TypeError(".google.cloud.retail.v2.CreateControlRequest.control: object expected"); - message.control = $root.google.cloud.retail.v2.Control.fromObject(object.control); + message.control = $root.google.cloud.retail.v2.Control.fromObject(object.control, long + 1); } if (object.controlId != null) message.controlId = String(object.controlId); @@ -27862,7 +29036,7 @@ function UpdateControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27937,9 +29111,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateControlRequest.decode = function decode(reader, length, error) { + UpdateControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27947,15 +29125,15 @@ break; switch (tag >>> 3) { case 1: { - message.control = $root.google.cloud.retail.v2.Control.decode(reader, reader.uint32()); + message.control = $root.google.cloud.retail.v2.Control.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27986,16 +29164,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateControlRequest.verify = function verify(message) { + UpdateControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.control != null && message.hasOwnProperty("control")) { - var error = $root.google.cloud.retail.v2.Control.verify(message.control); + var error = $root.google.cloud.retail.v2.Control.verify(message.control, long + 1); if (error) return "control." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -28010,19 +29192,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateControlRequest} UpdateControlRequest */ - UpdateControlRequest.fromObject = function fromObject(object) { + UpdateControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateControlRequest(); if (object.control != null) { if (typeof object.control !== "object") throw TypeError(".google.cloud.retail.v2.UpdateControlRequest.control: object expected"); - message.control = $root.google.cloud.retail.v2.Control.fromObject(object.control); + message.control = $root.google.cloud.retail.v2.Control.fromObject(object.control, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateControlRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -28100,7 +29286,7 @@ function DeleteControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28165,9 +29351,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteControlRequest.decode = function decode(reader, length, error) { + DeleteControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.DeleteControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28179,7 +29369,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28210,9 +29400,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteControlRequest.verify = function verify(message) { + DeleteControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -28227,9 +29421,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.DeleteControlRequest} DeleteControlRequest */ - DeleteControlRequest.fromObject = function fromObject(object) { + DeleteControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.DeleteControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.DeleteControlRequest(); if (object.name != null) message.name = String(object.name); @@ -28305,7 +29503,7 @@ function GetControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28370,9 +29568,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetControlRequest.decode = function decode(reader, length, error) { + GetControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28384,7 +29586,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28415,9 +29617,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetControlRequest.verify = function verify(message) { + GetControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -28432,9 +29638,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetControlRequest} GetControlRequest */ - GetControlRequest.fromObject = function fromObject(object) { + GetControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetControlRequest(); if (object.name != null) message.name = String(object.name); @@ -28513,7 +29723,7 @@ function ListControlsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28608,9 +29818,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListControlsRequest.decode = function decode(reader, length, error) { + ListControlsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListControlsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28634,7 +29848,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28665,9 +29879,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListControlsRequest.verify = function verify(message) { + ListControlsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -28691,9 +29909,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListControlsRequest} ListControlsRequest */ - ListControlsRequest.fromObject = function fromObject(object) { + ListControlsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListControlsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListControlsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -28787,7 +30009,7 @@ this.controls = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28863,9 +30085,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListControlsResponse.decode = function decode(reader, length, error) { + ListControlsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListControlsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28875,7 +30101,7 @@ case 1: { if (!(message.controls && message.controls.length)) message.controls = []; - message.controls.push($root.google.cloud.retail.v2.Control.decode(reader, reader.uint32())); + message.controls.push($root.google.cloud.retail.v2.Control.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -28883,7 +30109,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28914,14 +30140,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListControlsResponse.verify = function verify(message) { + ListControlsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.controls != null && message.hasOwnProperty("controls")) { if (!Array.isArray(message.controls)) return "controls: array expected"; for (var i = 0; i < message.controls.length; ++i) { - var error = $root.google.cloud.retail.v2.Control.verify(message.controls[i]); + var error = $root.google.cloud.retail.v2.Control.verify(message.controls[i], long + 1); if (error) return "controls." + error; } @@ -28940,9 +30170,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListControlsResponse} ListControlsResponse */ - ListControlsResponse.fromObject = function fromObject(object) { + ListControlsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListControlsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListControlsResponse(); if (object.controls) { if (!Array.isArray(object.controls)) @@ -28951,7 +30185,7 @@ for (var i = 0; i < object.controls.length; ++i) { if (typeof object.controls[i] !== "object") throw TypeError(".google.cloud.retail.v2.ListControlsResponse.controls: object expected"); - message.controls[i] = $root.google.cloud.retail.v2.Control.fromObject(object.controls[i]); + message.controls[i] = $root.google.cloud.retail.v2.Control.fromObject(object.controls[i], long + 1); } } if (object.nextPageToken != null) @@ -29116,7 +30350,7 @@ this.safetySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29284,9 +30518,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchRequest.decode = function decode(reader, length, error) { + ConversationalSearchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -29316,7 +30554,7 @@ break; } case 6: { - message.searchParams = $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams.decode(reader, reader.uint32()); + message.searchParams = $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -29324,11 +30562,11 @@ break; } case 7: { - message.userInfo = $root.google.cloud.retail.v2.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.conversationalFilteringSpec = $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec.decode(reader, reader.uint32()); + message.conversationalFilteringSpec = $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -29347,21 +30585,23 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.userLabels, key); message.userLabels[key] = value; break; } case 14: { if (!(message.safetySettings && message.safetySettings.length)) message.safetySettings = []; - message.safetySettings.push($root.google.cloud.retail.v2.SafetySetting.decode(reader, reader.uint32())); + message.safetySettings.push($root.google.cloud.retail.v2.SafetySetting.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29392,9 +30632,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchRequest.verify = function verify(message) { + ConversationalSearchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) return "placement: string expected"; @@ -29415,7 +30659,7 @@ if (!$util.isString(message.conversationId)) return "conversationId: string expected"; if (message.searchParams != null && message.hasOwnProperty("searchParams")) { - var error = $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams.verify(message.searchParams); + var error = $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams.verify(message.searchParams, long + 1); if (error) return "searchParams." + error; } @@ -29423,12 +30667,12 @@ if (!$util.isString(message.visitorId)) return "visitorId: string expected"; if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } if (message.conversationalFilteringSpec != null && message.hasOwnProperty("conversationalFilteringSpec")) { - var error = $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec.verify(message.conversationalFilteringSpec); + var error = $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec.verify(message.conversationalFilteringSpec, long + 1); if (error) return "conversationalFilteringSpec." + error; } @@ -29444,7 +30688,7 @@ if (!Array.isArray(message.safetySettings)) return "safetySettings: array expected"; for (var i = 0; i < message.safetySettings.length; ++i) { - var error = $root.google.cloud.retail.v2.SafetySetting.verify(message.safetySettings[i]); + var error = $root.google.cloud.retail.v2.SafetySetting.verify(message.safetySettings[i], long + 1); if (error) return "safetySettings." + error; } @@ -29460,9 +30704,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchRequest} ConversationalSearchRequest */ - ConversationalSearchRequest.fromObject = function fromObject(object) { + ConversationalSearchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchRequest(); if (object.placement != null) message.placement = String(object.placement); @@ -29482,26 +30730,29 @@ if (object.searchParams != null) { if (typeof object.searchParams !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.searchParams: object expected"); - message.searchParams = $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams.fromObject(object.searchParams); + message.searchParams = $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams.fromObject(object.searchParams, long + 1); } if (object.visitorId != null) message.visitorId = String(object.visitorId); if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2.UserInfo.fromObject(object.userInfo, long + 1); } if (object.conversationalFilteringSpec != null) { if (typeof object.conversationalFilteringSpec !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.conversationalFilteringSpec: object expected"); - message.conversationalFilteringSpec = $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec.fromObject(object.conversationalFilteringSpec); + message.conversationalFilteringSpec = $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec.fromObject(object.conversationalFilteringSpec, long + 1); } if (object.userLabels) { if (typeof object.userLabels !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.userLabels: object expected"); message.userLabels = {}; - for (var keys = Object.keys(object.userLabels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.userLabels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.userLabels, keys[i]); message.userLabels[keys[i]] = String(object.userLabels[keys[i]]); + } } if (object.safetySettings) { if (!Array.isArray(object.safetySettings)) @@ -29510,7 +30761,7 @@ for (var i = 0; i < object.safetySettings.length; ++i) { if (typeof object.safetySettings[i] !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.safetySettings: object expected"); - message.safetySettings[i] = $root.google.cloud.retail.v2.SafetySetting.fromObject(object.safetySettings[i]); + message.safetySettings[i] = $root.google.cloud.retail.v2.SafetySetting.fromObject(object.safetySettings[i], long + 1); } } return message; @@ -29569,8 +30820,11 @@ var keys2; if (message.userLabels && (keys2 = Object.keys(message.userLabels)).length) { object.userLabels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.userLabels, keys2[j]); object.userLabels[keys2[j]] = message.userLabels[keys2[j]]; + } } if (message.safetySettings && message.safetySettings.length) { object.safetySettings = []; @@ -29629,7 +30883,7 @@ function SearchParams(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29724,9 +30978,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchParams.decode = function decode(reader, length, error) { + SearchParams.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29746,11 +31004,11 @@ break; } case 4: { - message.boostSpec = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.decode(reader, reader.uint32()); + message.boostSpec = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29781,9 +31039,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchParams.verify = function verify(message) { + SearchParams.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.filter != null && message.hasOwnProperty("filter")) if (!$util.isString(message.filter)) return "filter: string expected"; @@ -29794,7 +31056,7 @@ if (!$util.isString(message.sortBy)) return "sortBy: string expected"; if (message.boostSpec != null && message.hasOwnProperty("boostSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.verify(message.boostSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.verify(message.boostSpec, long + 1); if (error) return "boostSpec." + error; } @@ -29809,9 +31071,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchRequest.SearchParams} SearchParams */ - SearchParams.fromObject = function fromObject(object) { + SearchParams.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchRequest.SearchParams(); if (object.filter != null) message.filter = String(object.filter); @@ -29822,7 +31088,7 @@ if (object.boostSpec != null) { if (typeof object.boostSpec !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.SearchParams.boostSpec: object expected"); - message.boostSpec = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.fromObject(object.boostSpec); + message.boostSpec = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.fromObject(object.boostSpec, long + 1); } return message; }; @@ -29907,7 +31173,7 @@ function UserAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29996,9 +31262,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserAnswer.decode = function decode(reader, length, error) { + UserAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30010,11 +31280,11 @@ break; } case 2: { - message.selectedAnswer = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer.decode(reader, reader.uint32()); + message.selectedAnswer = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30045,9 +31315,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserAnswer.verify = function verify(message) { + UserAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.textAnswer != null && message.hasOwnProperty("textAnswer")) { properties.type = 1; @@ -30059,7 +31333,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer.verify(message.selectedAnswer); + var error = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer.verify(message.selectedAnswer, long + 1); if (error) return "selectedAnswer." + error; } @@ -30075,16 +31349,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer} UserAnswer */ - UserAnswer.fromObject = function fromObject(object) { + UserAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer(); if (object.textAnswer != null) message.textAnswer = String(object.textAnswer); if (object.selectedAnswer != null) { if (typeof object.selectedAnswer !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.selectedAnswer: object expected"); - message.selectedAnswer = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer); + message.selectedAnswer = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer, long + 1); } return message; }; @@ -30161,7 +31439,7 @@ function SelectedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30226,9 +31504,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectedAnswer.decode = function decode(reader, length, error) { + SelectedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30236,11 +31518,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30271,11 +31553,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectedAnswer.verify = function verify(message) { + SelectedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -30290,14 +31576,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer} SelectedAnswer */ - SelectedAnswer.fromObject = function fromObject(object) { + SelectedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.SelectedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -30376,7 +31666,7 @@ function ConversationalFilteringSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30461,9 +31751,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalFilteringSpec.decode = function decode(reader, length, error) { + ConversationalFilteringSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30475,7 +31769,7 @@ break; } case 2: { - message.userAnswer = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.decode(reader, reader.uint32()); + message.userAnswer = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -30483,7 +31777,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30514,14 +31808,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalFilteringSpec.verify = function verify(message) { + ConversationalFilteringSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.enableConversationalFiltering != null && message.hasOwnProperty("enableConversationalFiltering")) if (typeof message.enableConversationalFiltering !== "boolean") return "enableConversationalFiltering: boolean expected"; if (message.userAnswer != null && message.hasOwnProperty("userAnswer")) { - var error = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.verify(message.userAnswer); + var error = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.verify(message.userAnswer, long + 1); if (error) return "userAnswer." + error; } @@ -30546,16 +31844,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec} ConversationalFilteringSpec */ - ConversationalFilteringSpec.fromObject = function fromObject(object) { + ConversationalFilteringSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec(); if (object.enableConversationalFiltering != null) message.enableConversationalFiltering = Boolean(object.enableConversationalFiltering); if (object.userAnswer != null) { if (typeof object.userAnswer !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchRequest.ConversationalFilteringSpec.userAnswer: object expected"); - message.userAnswer = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.fromObject(object.userAnswer); + message.userAnswer = $root.google.cloud.retail.v2.ConversationalSearchRequest.UserAnswer.fromObject(object.userAnswer, long + 1); } switch (object.conversationalFilteringMode) { default: @@ -30689,7 +31991,7 @@ this.refinedSearch = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30816,9 +32118,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchResponse.decode = function decode(reader, length, error) { + ConversationalSearchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30836,7 +32142,7 @@ break; } case 3: { - message.followupQuestion = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32()); + message.followupQuestion = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -30846,11 +32152,11 @@ case 6: { if (!(message.refinedSearch && message.refinedSearch.length)) message.refinedSearch = []; - message.refinedSearch.push($root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch.decode(reader, reader.uint32())); + message.refinedSearch.push($root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.conversationalFilteringResult = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.decode(reader, reader.uint32()); + message.conversationalFilteringResult = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -30858,7 +32164,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30889,9 +32195,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchResponse.verify = function verify(message) { + ConversationalSearchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userQueryTypes != null && message.hasOwnProperty("userQueryTypes")) { if (!Array.isArray(message.userQueryTypes)) return "userQueryTypes: array expected"; @@ -30903,7 +32213,7 @@ if (!$util.isString(message.conversationalTextResponse)) return "conversationalTextResponse: string expected"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) { - var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion); + var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion, long + 1); if (error) return "followupQuestion." + error; } @@ -30914,13 +32224,13 @@ if (!Array.isArray(message.refinedSearch)) return "refinedSearch: array expected"; for (var i = 0; i < message.refinedSearch.length; ++i) { - var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch.verify(message.refinedSearch[i]); + var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch.verify(message.refinedSearch[i], long + 1); if (error) return "refinedSearch." + error; } } if (message.conversationalFilteringResult != null && message.hasOwnProperty("conversationalFilteringResult")) { - var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.verify(message.conversationalFilteringResult); + var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.verify(message.conversationalFilteringResult, long + 1); if (error) return "conversationalFilteringResult." + error; } @@ -30944,9 +32254,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchResponse} ConversationalSearchResponse */ - ConversationalSearchResponse.fromObject = function fromObject(object) { + ConversationalSearchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchResponse(); if (object.userQueryTypes) { if (!Array.isArray(object.userQueryTypes)) @@ -30960,7 +32274,7 @@ if (object.followupQuestion != null) { if (typeof object.followupQuestion !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchResponse.followupQuestion: object expected"); - message.followupQuestion = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion); + message.followupQuestion = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion, long + 1); } if (object.conversationId != null) message.conversationId = String(object.conversationId); @@ -30971,13 +32285,13 @@ for (var i = 0; i < object.refinedSearch.length; ++i) { if (typeof object.refinedSearch[i] !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchResponse.refinedSearch: object expected"); - message.refinedSearch[i] = $root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch.fromObject(object.refinedSearch[i]); + message.refinedSearch[i] = $root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch.fromObject(object.refinedSearch[i], long + 1); } } if (object.conversationalFilteringResult != null) { if (typeof object.conversationalFilteringResult !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchResponse.conversationalFilteringResult: object expected"); - message.conversationalFilteringResult = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.fromObject(object.conversationalFilteringResult); + message.conversationalFilteringResult = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.fromObject(object.conversationalFilteringResult, long + 1); } switch (object.state) { default: @@ -31097,7 +32411,7 @@ this.suggestedAnswers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31173,9 +32487,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FollowupQuestion.decode = function decode(reader, length, error) { + FollowupQuestion.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31189,11 +32507,11 @@ case 2: { if (!(message.suggestedAnswers && message.suggestedAnswers.length)) message.suggestedAnswers = []; - message.suggestedAnswers.push($root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.decode(reader, reader.uint32())); + message.suggestedAnswers.push($root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31224,9 +32542,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FollowupQuestion.verify = function verify(message) { + FollowupQuestion.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) if (!$util.isString(message.followupQuestion)) return "followupQuestion: string expected"; @@ -31234,7 +32556,7 @@ if (!Array.isArray(message.suggestedAnswers)) return "suggestedAnswers: array expected"; for (var i = 0; i < message.suggestedAnswers.length; ++i) { - var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.verify(message.suggestedAnswers[i]); + var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.verify(message.suggestedAnswers[i], long + 1); if (error) return "suggestedAnswers." + error; } @@ -31250,9 +32572,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion} FollowupQuestion */ - FollowupQuestion.fromObject = function fromObject(object) { + FollowupQuestion.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion(); if (object.followupQuestion != null) message.followupQuestion = String(object.followupQuestion); @@ -31263,7 +32589,7 @@ for (var i = 0; i < object.suggestedAnswers.length; ++i) { if (typeof object.suggestedAnswers[i] !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.suggestedAnswers: object expected"); - message.suggestedAnswers[i] = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.fromObject(object.suggestedAnswers[i]); + message.suggestedAnswers[i] = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.fromObject(object.suggestedAnswers[i], long + 1); } } return message; @@ -31342,7 +32668,7 @@ function SuggestedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31407,9 +32733,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SuggestedAnswer.decode = function decode(reader, length, error) { + SuggestedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31417,11 +32747,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31452,11 +32782,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SuggestedAnswer.verify = function verify(message) { + SuggestedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -31471,14 +32805,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer} SuggestedAnswer */ - SuggestedAnswer.fromObject = function fromObject(object) { + SuggestedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -31555,7 +32893,7 @@ function RefinedSearch(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31620,9 +32958,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RefinedSearch.decode = function decode(reader, length, error) { + RefinedSearch.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31634,7 +32976,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31665,9 +33007,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RefinedSearch.verify = function verify(message) { + RefinedSearch.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.query != null && message.hasOwnProperty("query")) if (!$util.isString(message.query)) return "query: string expected"; @@ -31682,9 +33028,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch} RefinedSearch */ - RefinedSearch.fromObject = function fromObject(object) { + RefinedSearch.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.RefinedSearch(); if (object.query != null) message.query = String(object.query); @@ -31761,7 +33111,7 @@ function ConversationalFilteringResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31836,9 +33186,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalFilteringResult.decode = function decode(reader, length, error) { + ConversationalFilteringResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31846,15 +33200,15 @@ break; switch (tag >>> 3) { case 1: { - message.followupQuestion = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32()); + message.followupQuestion = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.additionalFilter = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.decode(reader, reader.uint32()); + message.additionalFilter = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31885,16 +33239,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalFilteringResult.verify = function verify(message) { + ConversationalFilteringResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) { - var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion); + var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion, long + 1); if (error) return "followupQuestion." + error; } if (message.additionalFilter != null && message.hasOwnProperty("additionalFilter")) { - var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.verify(message.additionalFilter); + var error = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.verify(message.additionalFilter, long + 1); if (error) return "additionalFilter." + error; } @@ -31909,19 +33267,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult} ConversationalFilteringResult */ - ConversationalFilteringResult.fromObject = function fromObject(object) { + ConversationalFilteringResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult(); if (object.followupQuestion != null) { if (typeof object.followupQuestion !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.followupQuestion: object expected"); - message.followupQuestion = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion); + message.followupQuestion = $root.google.cloud.retail.v2.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion, long + 1); } if (object.additionalFilter != null) { if (typeof object.additionalFilter !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.additionalFilter: object expected"); - message.additionalFilter = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.fromObject(object.additionalFilter); + message.additionalFilter = $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.fromObject(object.additionalFilter, long + 1); } return message; }; @@ -31996,7 +33358,7 @@ function AdditionalFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32061,9 +33423,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AdditionalFilter.decode = function decode(reader, length, error) { + AdditionalFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32071,11 +33437,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32106,11 +33472,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AdditionalFilter.verify = function verify(message) { + AdditionalFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -32125,14 +33495,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter} AdditionalFilter */ - AdditionalFilter.fromObject = function fromObject(object) { + AdditionalFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -32252,7 +33626,7 @@ function SafetySetting(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32337,9 +33711,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SafetySetting.decode = function decode(reader, length, error) { + SafetySetting.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SafetySetting(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32359,7 +33737,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32390,9 +33768,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SafetySetting.verify = function verify(message) { + SafetySetting.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.category != null && message.hasOwnProperty("category")) switch (message.category) { default: @@ -32437,9 +33819,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SafetySetting} SafetySetting */ - SafetySetting.fromObject = function fromObject(object) { + SafetySetting.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SafetySetting) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SafetySetting(); switch (object.category) { default: @@ -32711,7 +34097,7 @@ function ProductAttributeValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32786,9 +34172,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductAttributeValue.decode = function decode(reader, length, error) { + ProductAttributeValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ProductAttributeValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32804,7 +34194,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32835,9 +34225,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductAttributeValue.verify = function verify(message) { + ProductAttributeValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -32855,9 +34249,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ProductAttributeValue} ProductAttributeValue */ - ProductAttributeValue.fromObject = function fromObject(object) { + ProductAttributeValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ProductAttributeValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ProductAttributeValue(); if (object.name != null) message.name = String(object.name); @@ -32940,7 +34338,7 @@ function ProductAttributeInterval(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33015,9 +34413,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductAttributeInterval.decode = function decode(reader, length, error) { + ProductAttributeInterval.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ProductAttributeInterval(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33029,11 +34431,11 @@ break; } case 2: { - message.interval = $root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32()); + message.interval = $root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33064,14 +34466,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductAttributeInterval.verify = function verify(message) { + ProductAttributeInterval.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.interval != null && message.hasOwnProperty("interval")) { - var error = $root.google.cloud.retail.v2.Interval.verify(message.interval); + var error = $root.google.cloud.retail.v2.Interval.verify(message.interval, long + 1); if (error) return "interval." + error; } @@ -33086,16 +34492,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ProductAttributeInterval} ProductAttributeInterval */ - ProductAttributeInterval.fromObject = function fromObject(object) { + ProductAttributeInterval.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ProductAttributeInterval) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ProductAttributeInterval(); if (object.name != null) message.name = String(object.name); if (object.interval != null) { if (typeof object.interval !== "object") throw TypeError(".google.cloud.retail.v2.ProductAttributeInterval.interval: object expected"); - message.interval = $root.google.cloud.retail.v2.Interval.fromObject(object.interval); + message.interval = $root.google.cloud.retail.v2.Interval.fromObject(object.interval, long + 1); } return message; }; @@ -33175,7 +34585,7 @@ function Tile(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33274,9 +34684,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Tile.decode = function decode(reader, length, error) { + Tile.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Tile(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33284,11 +34698,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.productAttributeInterval = $root.google.cloud.retail.v2.ProductAttributeInterval.decode(reader, reader.uint32()); + message.productAttributeInterval = $root.google.cloud.retail.v2.ProductAttributeInterval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -33296,7 +34710,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33327,14 +34741,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Tile.verify = function verify(message) { + Tile.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { properties.productAttribute = 1; { - var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -33344,7 +34762,7 @@ return "productAttribute: multiple values"; properties.productAttribute = 1; { - var error = $root.google.cloud.retail.v2.ProductAttributeInterval.verify(message.productAttributeInterval); + var error = $root.google.cloud.retail.v2.ProductAttributeInterval.verify(message.productAttributeInterval, long + 1); if (error) return "productAttributeInterval." + error; } @@ -33363,19 +34781,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Tile} Tile */ - Tile.fromObject = function fromObject(object) { + Tile.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Tile) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Tile(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2.Tile.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } if (object.productAttributeInterval != null) { if (typeof object.productAttributeInterval !== "object") throw TypeError(".google.cloud.retail.v2.Tile.productAttributeInterval: object expected"); - message.productAttributeInterval = $root.google.cloud.retail.v2.ProductAttributeInterval.fromObject(object.productAttributeInterval); + message.productAttributeInterval = $root.google.cloud.retail.v2.ProductAttributeInterval.fromObject(object.productAttributeInterval, long + 1); } if (object.representativeProductId != null) message.representativeProductId = String(object.representativeProductId); @@ -33493,7 +34915,7 @@ this.userAttributes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33844,9 +35266,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchRequest.decode = function decode(reader, length, error) { + SearchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -33870,7 +35296,7 @@ break; } case 5: { - message.userInfo = $root.google.cloud.retail.v2.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -33900,19 +35326,19 @@ case 12: { if (!(message.facetSpecs && message.facetSpecs.length)) message.facetSpecs = []; - message.facetSpecs.push($root.google.cloud.retail.v2.SearchRequest.FacetSpec.decode(reader, reader.uint32())); + message.facetSpecs.push($root.google.cloud.retail.v2.SearchRequest.FacetSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.dynamicFacetSpec = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32()); + message.dynamicFacetSpec = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.boostSpec = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.decode(reader, reader.uint32()); + message.boostSpec = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.queryExpansionSpec = $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.decode(reader, reader.uint32()); + message.queryExpansionSpec = $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -33932,7 +35358,7 @@ break; } case 32: { - message.personalizationSpec = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32()); + message.personalizationSpec = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 34: { @@ -33951,15 +35377,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } case 35: { - message.spellCorrectionSpec = $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec.decode(reader, reader.uint32()); + message.spellCorrectionSpec = $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 38: { @@ -33967,11 +35395,11 @@ break; } case 40: { - message.conversationalSearchSpec = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.decode(reader, reader.uint32()); + message.conversationalSearchSpec = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 41: { - message.tileNavigationSpec = $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec.decode(reader, reader.uint32()); + message.tileNavigationSpec = $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 43: { @@ -33999,18 +35427,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2.StringList.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.StringList.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.userAttributes, key); message.userAttributes[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34041,9 +35471,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchRequest.verify = function verify(message) { + SearchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) @@ -34058,7 +35492,7 @@ if (!$util.isString(message.visitorId)) return "visitorId: string expected"; if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } @@ -34084,23 +35518,23 @@ if (!Array.isArray(message.facetSpecs)) return "facetSpecs: array expected"; for (var i = 0; i < message.facetSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.verify(message.facetSpecs[i]); + var error = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.verify(message.facetSpecs[i], long + 1); if (error) return "facetSpecs." + error; } } if (message.dynamicFacetSpec != null && message.hasOwnProperty("dynamicFacetSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec, long + 1); if (error) return "dynamicFacetSpec." + error; } if (message.boostSpec != null && message.hasOwnProperty("boostSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.verify(message.boostSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.verify(message.boostSpec, long + 1); if (error) return "boostSpec." + error; } if (message.queryExpansionSpec != null && message.hasOwnProperty("queryExpansionSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.verify(message.queryExpansionSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.verify(message.queryExpansionSpec, long + 1); if (error) return "queryExpansionSpec." + error; } @@ -34128,7 +35562,7 @@ break; } if (message.personalizationSpec != null && message.hasOwnProperty("personalizationSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec, long + 1); if (error) return "personalizationSpec." + error; } @@ -34143,7 +35577,7 @@ if (message.spellCorrectionSpec != null && message.hasOwnProperty("spellCorrectionSpec")) { properties._spellCorrectionSpec = 1; { - var error = $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec.verify(message.spellCorrectionSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec.verify(message.spellCorrectionSpec, long + 1); if (error) return "spellCorrectionSpec." + error; } @@ -34152,12 +35586,12 @@ if (!$util.isString(message.entity)) return "entity: string expected"; if (message.conversationalSearchSpec != null && message.hasOwnProperty("conversationalSearchSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.verify(message.conversationalSearchSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.verify(message.conversationalSearchSpec, long + 1); if (error) return "conversationalSearchSpec." + error; } if (message.tileNavigationSpec != null && message.hasOwnProperty("tileNavigationSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec.verify(message.tileNavigationSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec.verify(message.tileNavigationSpec, long + 1); if (error) return "tileNavigationSpec." + error; } @@ -34175,7 +35609,7 @@ return "userAttributes: object expected"; var key = Object.keys(message.userAttributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2.StringList.verify(message.userAttributes[key[i]]); + var error = $root.google.cloud.retail.v2.StringList.verify(message.userAttributes[key[i]], long + 1); if (error) return "userAttributes." + error; } @@ -34191,9 +35625,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest} SearchRequest */ - SearchRequest.fromObject = function fromObject(object) { + SearchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest(); if (object.placement != null) message.placement = String(object.placement); @@ -34206,7 +35644,7 @@ if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2.UserInfo.fromObject(object.userInfo, long + 1); } if (object.pageSize != null) message.pageSize = object.pageSize | 0; @@ -34227,23 +35665,23 @@ for (var i = 0; i < object.facetSpecs.length; ++i) { if (typeof object.facetSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.facetSpecs: object expected"); - message.facetSpecs[i] = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.fromObject(object.facetSpecs[i]); + message.facetSpecs[i] = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.fromObject(object.facetSpecs[i], long + 1); } } if (object.dynamicFacetSpec != null) { if (typeof object.dynamicFacetSpec !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.dynamicFacetSpec: object expected"); - message.dynamicFacetSpec = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec); + message.dynamicFacetSpec = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec, long + 1); } if (object.boostSpec != null) { if (typeof object.boostSpec !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.boostSpec: object expected"); - message.boostSpec = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.fromObject(object.boostSpec); + message.boostSpec = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.fromObject(object.boostSpec, long + 1); } if (object.queryExpansionSpec != null) { if (typeof object.queryExpansionSpec !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.queryExpansionSpec: object expected"); - message.queryExpansionSpec = $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.fromObject(object.queryExpansionSpec); + message.queryExpansionSpec = $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec.fromObject(object.queryExpansionSpec, long + 1); } if (object.variantRollupKeys) { if (!Array.isArray(object.variantRollupKeys)) @@ -34282,31 +35720,34 @@ if (object.personalizationSpec != null) { if (typeof object.personalizationSpec !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.personalizationSpec: object expected"); - message.personalizationSpec = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec); + message.personalizationSpec = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec, long + 1); } if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.spellCorrectionSpec != null) { if (typeof object.spellCorrectionSpec !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.spellCorrectionSpec: object expected"); - message.spellCorrectionSpec = $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec.fromObject(object.spellCorrectionSpec); + message.spellCorrectionSpec = $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec.fromObject(object.spellCorrectionSpec, long + 1); } if (object.entity != null) message.entity = String(object.entity); if (object.conversationalSearchSpec != null) { if (typeof object.conversationalSearchSpec !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.conversationalSearchSpec: object expected"); - message.conversationalSearchSpec = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.fromObject(object.conversationalSearchSpec); + message.conversationalSearchSpec = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.fromObject(object.conversationalSearchSpec, long + 1); } if (object.tileNavigationSpec != null) { if (typeof object.tileNavigationSpec !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.tileNavigationSpec: object expected"); - message.tileNavigationSpec = $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec.fromObject(object.tileNavigationSpec); + message.tileNavigationSpec = $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec.fromObject(object.tileNavigationSpec, long + 1); } if (object.languageCode != null) message.languageCode = String(object.languageCode); @@ -34319,9 +35760,11 @@ throw TypeError(".google.cloud.retail.v2.SearchRequest.userAttributes: object expected"); message.userAttributes = {}; for (var keys = Object.keys(object.userAttributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.userAttributes, keys[i]); if (typeof object.userAttributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.userAttributes: object expected"); - message.userAttributes[keys[i]] = $root.google.cloud.retail.v2.StringList.fromObject(object.userAttributes[keys[i]]); + message.userAttributes[keys[i]] = $root.google.cloud.retail.v2.StringList.fromObject(object.userAttributes[keys[i]], long + 1); } } return message; @@ -34423,8 +35866,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.spellCorrectionSpec != null && message.hasOwnProperty("spellCorrectionSpec")) { object.spellCorrectionSpec = $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec.toObject(message.spellCorrectionSpec, options); @@ -34445,8 +35891,11 @@ object.placeId = message.placeId; if (message.userAttributes && (keys2 = Object.keys(message.userAttributes)).length) { object.userAttributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.userAttributes, keys2[j]); object.userAttributes[keys2[j]] = $root.google.cloud.retail.v2.StringList.toObject(message.userAttributes[keys2[j]], options); + } } return object; }; @@ -34501,7 +35950,7 @@ this.excludedFilterKeys = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34597,9 +36046,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetSpec.decode = function decode(reader, length, error) { + FacetSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.FacetSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34607,7 +36060,7 @@ break; switch (tag >>> 3) { case 1: { - message.facetKey = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.decode(reader, reader.uint32()); + message.facetKey = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -34625,7 +36078,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34656,11 +36109,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetSpec.verify = function verify(message) { + FacetSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetKey != null && message.hasOwnProperty("facetKey")) { - var error = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.verify(message.facetKey); + var error = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.verify(message.facetKey, long + 1); if (error) return "facetKey." + error; } @@ -34688,14 +36145,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.FacetSpec} FacetSpec */ - FacetSpec.fromObject = function fromObject(object) { + FacetSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.FacetSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.FacetSpec(); if (object.facetKey != null) { if (typeof object.facetKey !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.FacetSpec.facetKey: object expected"); - message.facetKey = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.fromObject(object.facetKey); + message.facetKey = $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.fromObject(object.facetKey, long + 1); } if (object.limit != null) message.limit = object.limit | 0; @@ -34803,7 +36264,7 @@ this.contains = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34952,9 +36413,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetKey.decode = function decode(reader, length, error) { + FacetKey.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34968,7 +36433,7 @@ case 2: { if (!(message.intervals && message.intervals.length)) message.intervals = []; - message.intervals.push($root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32())); + message.intervals.push($root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -35006,7 +36471,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35037,9 +36502,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetKey.verify = function verify(message) { + FacetKey.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -35047,7 +36516,7 @@ if (!Array.isArray(message.intervals)) return "intervals: array expected"; for (var i = 0; i < message.intervals.length; ++i) { - var error = $root.google.cloud.retail.v2.Interval.verify(message.intervals[i]); + var error = $root.google.cloud.retail.v2.Interval.verify(message.intervals[i], long + 1); if (error) return "intervals." + error; } @@ -35096,9 +36565,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey} FacetKey */ - FacetKey.fromObject = function fromObject(object) { + FacetKey.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey(); if (object.key != null) message.key = String(object.key); @@ -35109,7 +36582,7 @@ for (var i = 0; i < object.intervals.length; ++i) { if (typeof object.intervals[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.FacetSpec.FacetKey.intervals: object expected"); - message.intervals[i] = $root.google.cloud.retail.v2.Interval.fromObject(object.intervals[i]); + message.intervals[i] = $root.google.cloud.retail.v2.Interval.fromObject(object.intervals[i], long + 1); } } if (object.restrictedValues) { @@ -35255,7 +36728,7 @@ function DynamicFacetSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35320,9 +36793,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DynamicFacetSpec.decode = function decode(reader, length, error) { + DynamicFacetSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35334,7 +36811,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35365,9 +36842,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DynamicFacetSpec.verify = function verify(message) { + DynamicFacetSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -35388,9 +36869,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.DynamicFacetSpec} DynamicFacetSpec */ - DynamicFacetSpec.fromObject = function fromObject(object) { + DynamicFacetSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec(); switch (object.mode) { default: @@ -35502,7 +36987,7 @@ this.conditionBoostSpecs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35587,9 +37072,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BoostSpec.decode = function decode(reader, length, error) { + BoostSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.BoostSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35599,7 +37088,7 @@ case 1: { if (!(message.conditionBoostSpecs && message.conditionBoostSpecs.length)) message.conditionBoostSpecs = []; - message.conditionBoostSpecs.push($root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32())); + message.conditionBoostSpecs.push($root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -35607,7 +37096,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35638,15 +37127,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BoostSpec.verify = function verify(message) { + BoostSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.conditionBoostSpecs != null && message.hasOwnProperty("conditionBoostSpecs")) { if (!Array.isArray(message.conditionBoostSpecs)) return "conditionBoostSpecs: array expected"; for (var i = 0; i < message.conditionBoostSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.conditionBoostSpecs[i]); + var error = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.conditionBoostSpecs[i], long + 1); if (error) return "conditionBoostSpecs." + error; } @@ -35667,9 +37160,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.BoostSpec} BoostSpec */ - BoostSpec.fromObject = function fromObject(object) { + BoostSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.BoostSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.BoostSpec(); if (object.conditionBoostSpecs) { if (!Array.isArray(object.conditionBoostSpecs)) @@ -35678,7 +37175,7 @@ for (var i = 0; i < object.conditionBoostSpecs.length; ++i) { if (typeof object.conditionBoostSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.BoostSpec.conditionBoostSpecs: object expected"); - message.conditionBoostSpecs[i] = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.conditionBoostSpecs[i]); + message.conditionBoostSpecs[i] = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.conditionBoostSpecs[i], long + 1); } } if (object.skipBoostSpecValidation != null) @@ -35761,7 +37258,7 @@ function ConditionBoostSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35836,9 +37333,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConditionBoostSpec.decode = function decode(reader, length, error) { + ConditionBoostSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -35854,7 +37355,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35885,9 +37386,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConditionBoostSpec.verify = function verify(message) { + ConditionBoostSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.condition != null && message.hasOwnProperty("condition")) if (!$util.isString(message.condition)) return "condition: string expected"; @@ -35905,9 +37410,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec} ConditionBoostSpec */ - ConditionBoostSpec.fromObject = function fromObject(object) { + ConditionBoostSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec(); if (object.condition != null) message.condition = String(object.condition); @@ -35993,7 +37502,7 @@ function QueryExpansionSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36068,9 +37577,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryExpansionSpec.decode = function decode(reader, length, error) { + QueryExpansionSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36086,7 +37599,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36117,9 +37630,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryExpansionSpec.verify = function verify(message) { + QueryExpansionSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.condition != null && message.hasOwnProperty("condition")) switch (message.condition) { default: @@ -36143,9 +37660,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.QueryExpansionSpec} QueryExpansionSpec */ - QueryExpansionSpec.fromObject = function fromObject(object) { + QueryExpansionSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.QueryExpansionSpec(); switch (object.condition) { default: @@ -36261,7 +37782,7 @@ function PersonalizationSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36326,9 +37847,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PersonalizationSpec.decode = function decode(reader, length, error) { + PersonalizationSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36340,7 +37865,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36371,9 +37896,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PersonalizationSpec.verify = function verify(message) { + PersonalizationSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -36394,9 +37923,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.PersonalizationSpec} PersonalizationSpec */ - PersonalizationSpec.fromObject = function fromObject(object) { + PersonalizationSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec(); switch (object.mode) { default: @@ -36506,7 +38039,7 @@ function SpellCorrectionSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36571,9 +38104,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SpellCorrectionSpec.decode = function decode(reader, length, error) { + SpellCorrectionSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36585,7 +38122,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36616,9 +38153,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SpellCorrectionSpec.verify = function verify(message) { + SpellCorrectionSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -36639,9 +38180,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec} SpellCorrectionSpec */ - SpellCorrectionSpec.fromObject = function fromObject(object) { + SpellCorrectionSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.SpellCorrectionSpec(); switch (object.mode) { default: @@ -36753,7 +38298,7 @@ function ConversationalSearchSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36838,9 +38383,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchSpec.decode = function decode(reader, length, error) { + ConversationalSearchSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36856,11 +38405,11 @@ break; } case 3: { - message.userAnswer = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.decode(reader, reader.uint32()); + message.userAnswer = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36891,9 +38440,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchSpec.verify = function verify(message) { + ConversationalSearchSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupConversationRequested != null && message.hasOwnProperty("followupConversationRequested")) if (typeof message.followupConversationRequested !== "boolean") return "followupConversationRequested: boolean expected"; @@ -36901,7 +38454,7 @@ if (!$util.isString(message.conversationId)) return "conversationId: string expected"; if (message.userAnswer != null && message.hasOwnProperty("userAnswer")) { - var error = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.verify(message.userAnswer); + var error = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.verify(message.userAnswer, long + 1); if (error) return "userAnswer." + error; } @@ -36916,9 +38469,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec} ConversationalSearchSpec */ - ConversationalSearchSpec.fromObject = function fromObject(object) { + ConversationalSearchSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec(); if (object.followupConversationRequested != null) message.followupConversationRequested = Boolean(object.followupConversationRequested); @@ -36927,7 +38484,7 @@ if (object.userAnswer != null) { if (typeof object.userAnswer !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.userAnswer: object expected"); - message.userAnswer = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.fromObject(object.userAnswer); + message.userAnswer = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.fromObject(object.userAnswer, long + 1); } return message; }; @@ -37006,7 +38563,7 @@ function UserAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37095,9 +38652,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserAnswer.decode = function decode(reader, length, error) { + UserAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37109,11 +38670,11 @@ break; } case 2: { - message.selectedAnswer = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.decode(reader, reader.uint32()); + message.selectedAnswer = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37144,9 +38705,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserAnswer.verify = function verify(message) { + UserAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.textAnswer != null && message.hasOwnProperty("textAnswer")) { properties.type = 1; @@ -37158,7 +38723,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.verify(message.selectedAnswer); + var error = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.verify(message.selectedAnswer, long + 1); if (error) return "selectedAnswer." + error; } @@ -37174,16 +38739,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer} UserAnswer */ - UserAnswer.fromObject = function fromObject(object) { + UserAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer(); if (object.textAnswer != null) message.textAnswer = String(object.textAnswer); if (object.selectedAnswer != null) { if (typeof object.selectedAnswer !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.selectedAnswer: object expected"); - message.selectedAnswer = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer); + message.selectedAnswer = $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer, long + 1); } return message; }; @@ -37262,7 +38831,7 @@ this.productAttributeValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37338,9 +38907,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectedAnswer.decode = function decode(reader, length, error) { + SelectedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37350,15 +38923,15 @@ case 1: { if (!(message.productAttributeValues && message.productAttributeValues.length)) message.productAttributeValues = []; - message.productAttributeValues.push($root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32())); + message.productAttributeValues.push($root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37389,20 +38962,24 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectedAnswer.verify = function verify(message) { + SelectedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValues != null && message.hasOwnProperty("productAttributeValues")) { if (!Array.isArray(message.productAttributeValues)) return "productAttributeValues: array expected"; for (var i = 0; i < message.productAttributeValues.length; ++i) { - var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValues[i]); + var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValues[i], long + 1); if (error) return "productAttributeValues." + error; } } if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -37417,9 +38994,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer} SelectedAnswer */ - SelectedAnswer.fromObject = function fromObject(object) { + SelectedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer(); if (object.productAttributeValues) { if (!Array.isArray(object.productAttributeValues)) @@ -37428,13 +39009,13 @@ for (var i = 0; i < object.productAttributeValues.length; ++i) { if (typeof object.productAttributeValues[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.productAttributeValues: object expected"); - message.productAttributeValues[i] = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValues[i]); + message.productAttributeValues[i] = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValues[i], long + 1); } } if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -37523,7 +39104,7 @@ this.appliedTiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37599,9 +39180,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TileNavigationSpec.decode = function decode(reader, length, error) { + TileNavigationSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37615,11 +39200,11 @@ case 2: { if (!(message.appliedTiles && message.appliedTiles.length)) message.appliedTiles = []; - message.appliedTiles.push($root.google.cloud.retail.v2.Tile.decode(reader, reader.uint32())); + message.appliedTiles.push($root.google.cloud.retail.v2.Tile.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37650,9 +39235,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TileNavigationSpec.verify = function verify(message) { + TileNavigationSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tileNavigationRequested != null && message.hasOwnProperty("tileNavigationRequested")) if (typeof message.tileNavigationRequested !== "boolean") return "tileNavigationRequested: boolean expected"; @@ -37660,7 +39249,7 @@ if (!Array.isArray(message.appliedTiles)) return "appliedTiles: array expected"; for (var i = 0; i < message.appliedTiles.length; ++i) { - var error = $root.google.cloud.retail.v2.Tile.verify(message.appliedTiles[i]); + var error = $root.google.cloud.retail.v2.Tile.verify(message.appliedTiles[i], long + 1); if (error) return "appliedTiles." + error; } @@ -37676,9 +39265,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchRequest.TileNavigationSpec} TileNavigationSpec */ - TileNavigationSpec.fromObject = function fromObject(object) { + TileNavigationSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchRequest.TileNavigationSpec(); if (object.tileNavigationRequested != null) message.tileNavigationRequested = Boolean(object.tileNavigationRequested); @@ -37689,7 +39282,7 @@ for (var i = 0; i < object.appliedTiles.length; ++i) { if (typeof object.appliedTiles[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchRequest.TileNavigationSpec.appliedTiles: object expected"); - message.appliedTiles[i] = $root.google.cloud.retail.v2.Tile.fromObject(object.appliedTiles[i]); + message.appliedTiles[i] = $root.google.cloud.retail.v2.Tile.fromObject(object.appliedTiles[i], long + 1); } } return message; @@ -37808,7 +39401,7 @@ this.experimentInfo = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38008,9 +39601,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchResponse.decode = function decode(reader, length, error) { + SearchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38020,13 +39617,13 @@ case 1: { if (!(message.results && message.results.length)) message.results = []; - message.results.push($root.google.cloud.retail.v2.SearchResponse.SearchResult.decode(reader, reader.uint32())); + message.results.push($root.google.cloud.retail.v2.SearchResponse.SearchResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.facets && message.facets.length)) message.facets = []; - message.facets.push($root.google.cloud.retail.v2.SearchResponse.Facet.decode(reader, reader.uint32())); + message.facets.push($root.google.cloud.retail.v2.SearchResponse.Facet.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -38046,7 +39643,7 @@ break; } case 7: { - message.queryExpansionInfo = $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo.decode(reader, reader.uint32()); + message.queryExpansionInfo = $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -38060,31 +39657,31 @@ break; } case 22: { - message.pinControlMetadata = $root.google.cloud.retail.v2.PinControlMetadata.decode(reader, reader.uint32()); + message.pinControlMetadata = $root.google.cloud.retail.v2.PinControlMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { if (!(message.invalidConditionBoostSpecs && message.invalidConditionBoostSpecs.length)) message.invalidConditionBoostSpecs = []; - message.invalidConditionBoostSpecs.push($root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32())); + message.invalidConditionBoostSpecs.push($root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 17: { if (!(message.experimentInfo && message.experimentInfo.length)) message.experimentInfo = []; - message.experimentInfo.push($root.google.cloud.retail.v2.ExperimentInfo.decode(reader, reader.uint32())); + message.experimentInfo.push($root.google.cloud.retail.v2.ExperimentInfo.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 18: { - message.conversationalSearchResult = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.decode(reader, reader.uint32()); + message.conversationalSearchResult = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { - message.tileNavigationResult = $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult.decode(reader, reader.uint32()); + message.tileNavigationResult = $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38115,14 +39712,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchResponse.verify = function verify(message) { + SearchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.results != null && message.hasOwnProperty("results")) { if (!Array.isArray(message.results)) return "results: array expected"; for (var i = 0; i < message.results.length; ++i) { - var error = $root.google.cloud.retail.v2.SearchResponse.SearchResult.verify(message.results[i]); + var error = $root.google.cloud.retail.v2.SearchResponse.SearchResult.verify(message.results[i], long + 1); if (error) return "results." + error; } @@ -38131,7 +39732,7 @@ if (!Array.isArray(message.facets)) return "facets: array expected"; for (var i = 0; i < message.facets.length; ++i) { - var error = $root.google.cloud.retail.v2.SearchResponse.Facet.verify(message.facets[i]); + var error = $root.google.cloud.retail.v2.SearchResponse.Facet.verify(message.facets[i], long + 1); if (error) return "facets." + error; } @@ -38149,7 +39750,7 @@ if (!$util.isString(message.nextPageToken)) return "nextPageToken: string expected"; if (message.queryExpansionInfo != null && message.hasOwnProperty("queryExpansionInfo")) { - var error = $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo.verify(message.queryExpansionInfo); + var error = $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo.verify(message.queryExpansionInfo, long + 1); if (error) return "queryExpansionInfo." + error; } @@ -38164,7 +39765,7 @@ return "appliedControls: string[] expected"; } if (message.pinControlMetadata != null && message.hasOwnProperty("pinControlMetadata")) { - var error = $root.google.cloud.retail.v2.PinControlMetadata.verify(message.pinControlMetadata); + var error = $root.google.cloud.retail.v2.PinControlMetadata.verify(message.pinControlMetadata, long + 1); if (error) return "pinControlMetadata." + error; } @@ -38172,7 +39773,7 @@ if (!Array.isArray(message.invalidConditionBoostSpecs)) return "invalidConditionBoostSpecs: array expected"; for (var i = 0; i < message.invalidConditionBoostSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.invalidConditionBoostSpecs[i]); + var error = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.invalidConditionBoostSpecs[i], long + 1); if (error) return "invalidConditionBoostSpecs." + error; } @@ -38181,18 +39782,18 @@ if (!Array.isArray(message.experimentInfo)) return "experimentInfo: array expected"; for (var i = 0; i < message.experimentInfo.length; ++i) { - var error = $root.google.cloud.retail.v2.ExperimentInfo.verify(message.experimentInfo[i]); + var error = $root.google.cloud.retail.v2.ExperimentInfo.verify(message.experimentInfo[i], long + 1); if (error) return "experimentInfo." + error; } } if (message.conversationalSearchResult != null && message.hasOwnProperty("conversationalSearchResult")) { - var error = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.verify(message.conversationalSearchResult); + var error = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.verify(message.conversationalSearchResult, long + 1); if (error) return "conversationalSearchResult." + error; } if (message.tileNavigationResult != null && message.hasOwnProperty("tileNavigationResult")) { - var error = $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult.verify(message.tileNavigationResult); + var error = $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult.verify(message.tileNavigationResult, long + 1); if (error) return "tileNavigationResult." + error; } @@ -38207,9 +39808,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse} SearchResponse */ - SearchResponse.fromObject = function fromObject(object) { + SearchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse(); if (object.results) { if (!Array.isArray(object.results)) @@ -38218,7 +39823,7 @@ for (var i = 0; i < object.results.length; ++i) { if (typeof object.results[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.results: object expected"); - message.results[i] = $root.google.cloud.retail.v2.SearchResponse.SearchResult.fromObject(object.results[i]); + message.results[i] = $root.google.cloud.retail.v2.SearchResponse.SearchResult.fromObject(object.results[i], long + 1); } } if (object.facets) { @@ -38228,7 +39833,7 @@ for (var i = 0; i < object.facets.length; ++i) { if (typeof object.facets[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.facets: object expected"); - message.facets[i] = $root.google.cloud.retail.v2.SearchResponse.Facet.fromObject(object.facets[i]); + message.facets[i] = $root.google.cloud.retail.v2.SearchResponse.Facet.fromObject(object.facets[i], long + 1); } } if (object.totalSize != null) @@ -38242,7 +39847,7 @@ if (object.queryExpansionInfo != null) { if (typeof object.queryExpansionInfo !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.queryExpansionInfo: object expected"); - message.queryExpansionInfo = $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo.fromObject(object.queryExpansionInfo); + message.queryExpansionInfo = $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo.fromObject(object.queryExpansionInfo, long + 1); } if (object.redirectUri != null) message.redirectUri = String(object.redirectUri); @@ -38256,7 +39861,7 @@ if (object.pinControlMetadata != null) { if (typeof object.pinControlMetadata !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.pinControlMetadata: object expected"); - message.pinControlMetadata = $root.google.cloud.retail.v2.PinControlMetadata.fromObject(object.pinControlMetadata); + message.pinControlMetadata = $root.google.cloud.retail.v2.PinControlMetadata.fromObject(object.pinControlMetadata, long + 1); } if (object.invalidConditionBoostSpecs) { if (!Array.isArray(object.invalidConditionBoostSpecs)) @@ -38265,7 +39870,7 @@ for (var i = 0; i < object.invalidConditionBoostSpecs.length; ++i) { if (typeof object.invalidConditionBoostSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.invalidConditionBoostSpecs: object expected"); - message.invalidConditionBoostSpecs[i] = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.invalidConditionBoostSpecs[i]); + message.invalidConditionBoostSpecs[i] = $root.google.cloud.retail.v2.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.invalidConditionBoostSpecs[i], long + 1); } } if (object.experimentInfo) { @@ -38275,18 +39880,18 @@ for (var i = 0; i < object.experimentInfo.length; ++i) { if (typeof object.experimentInfo[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.experimentInfo: object expected"); - message.experimentInfo[i] = $root.google.cloud.retail.v2.ExperimentInfo.fromObject(object.experimentInfo[i]); + message.experimentInfo[i] = $root.google.cloud.retail.v2.ExperimentInfo.fromObject(object.experimentInfo[i], long + 1); } } if (object.conversationalSearchResult != null) { if (typeof object.conversationalSearchResult !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.conversationalSearchResult: object expected"); - message.conversationalSearchResult = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.fromObject(object.conversationalSearchResult); + message.conversationalSearchResult = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.fromObject(object.conversationalSearchResult, long + 1); } if (object.tileNavigationResult != null) { if (typeof object.tileNavigationResult !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.tileNavigationResult: object expected"); - message.tileNavigationResult = $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult.fromObject(object.tileNavigationResult); + message.tileNavigationResult = $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult.fromObject(object.tileNavigationResult, long + 1); } return message; }; @@ -38424,7 +40029,7 @@ this.modelScores = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38559,9 +40164,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchResult.decode = function decode(reader, length, error) { + SearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse.SearchResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -38573,7 +40182,7 @@ break; } case 2: { - message.product = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -38593,13 +40202,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + value = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.matchingVariantFields, key); message.matchingVariantFields[key] = value; break; } @@ -38616,13 +40227,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.variantRollupValues, key); message.variantRollupValues[key] = value; break; } @@ -38645,18 +40258,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2.DoubleList.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2.DoubleList.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.modelScores, key); message.modelScores[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38687,14 +40302,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchResult.verify = function verify(message) { + SearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2.Product.verify(message.product); + var error = $root.google.cloud.retail.v2.Product.verify(message.product, long + 1); if (error) return "product." + error; } @@ -38706,7 +40325,7 @@ return "matchingVariantFields: object expected"; var key = Object.keys(message.matchingVariantFields); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.FieldMask.verify(message.matchingVariantFields[key[i]]); + var error = $root.google.protobuf.FieldMask.verify(message.matchingVariantFields[key[i]], long + 1); if (error) return "matchingVariantFields." + error; } @@ -38716,7 +40335,7 @@ return "variantRollupValues: object expected"; var key = Object.keys(message.variantRollupValues); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.variantRollupValues[key[i]]); + var error = $root.google.protobuf.Value.verify(message.variantRollupValues[key[i]], long + 1); if (error) return "variantRollupValues." + error; } @@ -38733,7 +40352,7 @@ return "modelScores: object expected"; var key = Object.keys(message.modelScores); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2.DoubleList.verify(message.modelScores[key[i]]); + var error = $root.google.cloud.retail.v2.DoubleList.verify(message.modelScores[key[i]], long + 1); if (error) return "modelScores." + error; } @@ -38749,16 +40368,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse.SearchResult} SearchResult */ - SearchResult.fromObject = function fromObject(object) { + SearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse.SearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse.SearchResult(); if (object.id != null) message.id = String(object.id); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.SearchResult.product: object expected"); - message.product = $root.google.cloud.retail.v2.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2.Product.fromObject(object.product, long + 1); } if (object.matchingVariantCount != null) message.matchingVariantCount = object.matchingVariantCount | 0; @@ -38767,9 +40390,11 @@ throw TypeError(".google.cloud.retail.v2.SearchResponse.SearchResult.matchingVariantFields: object expected"); message.matchingVariantFields = {}; for (var keys = Object.keys(object.matchingVariantFields), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.matchingVariantFields, keys[i]); if (typeof object.matchingVariantFields[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.SearchResult.matchingVariantFields: object expected"); - message.matchingVariantFields[keys[i]] = $root.google.protobuf.FieldMask.fromObject(object.matchingVariantFields[keys[i]]); + message.matchingVariantFields[keys[i]] = $root.google.protobuf.FieldMask.fromObject(object.matchingVariantFields[keys[i]], long + 1); } } if (object.variantRollupValues) { @@ -38777,9 +40402,11 @@ throw TypeError(".google.cloud.retail.v2.SearchResponse.SearchResult.variantRollupValues: object expected"); message.variantRollupValues = {}; for (var keys = Object.keys(object.variantRollupValues), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.variantRollupValues, keys[i]); if (typeof object.variantRollupValues[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.SearchResult.variantRollupValues: object expected"); - message.variantRollupValues[keys[i]] = $root.google.protobuf.Value.fromObject(object.variantRollupValues[keys[i]]); + message.variantRollupValues[keys[i]] = $root.google.protobuf.Value.fromObject(object.variantRollupValues[keys[i]], long + 1); } } if (object.personalLabels) { @@ -38794,9 +40421,11 @@ throw TypeError(".google.cloud.retail.v2.SearchResponse.SearchResult.modelScores: object expected"); message.modelScores = {}; for (var keys = Object.keys(object.modelScores), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.modelScores, keys[i]); if (typeof object.modelScores[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.SearchResult.modelScores: object expected"); - message.modelScores[keys[i]] = $root.google.cloud.retail.v2.DoubleList.fromObject(object.modelScores[keys[i]]); + message.modelScores[keys[i]] = $root.google.cloud.retail.v2.DoubleList.fromObject(object.modelScores[keys[i]], long + 1); } } return message; @@ -38836,13 +40465,19 @@ var keys2; if (message.matchingVariantFields && (keys2 = Object.keys(message.matchingVariantFields)).length) { object.matchingVariantFields = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.matchingVariantFields, keys2[j]); object.matchingVariantFields[keys2[j]] = $root.google.protobuf.FieldMask.toObject(message.matchingVariantFields[keys2[j]], options); + } } if (message.variantRollupValues && (keys2 = Object.keys(message.variantRollupValues)).length) { object.variantRollupValues = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.variantRollupValues, keys2[j]); object.variantRollupValues[keys2[j]] = $root.google.protobuf.Value.toObject(message.variantRollupValues[keys2[j]], options); + } } if (message.personalLabels && message.personalLabels.length) { object.personalLabels = []; @@ -38851,8 +40486,11 @@ } if (message.modelScores && (keys2 = Object.keys(message.modelScores)).length) { object.modelScores = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.modelScores, keys2[j]); object.modelScores[keys2[j]] = $root.google.cloud.retail.v2.DoubleList.toObject(message.modelScores[keys2[j]], options); + } } return object; }; @@ -38909,7 +40547,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38995,9 +40633,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Facet.decode = function decode(reader, length, error) { + Facet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse.Facet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39011,7 +40653,7 @@ case 2: { if (!(message.values && message.values.length)) message.values = []; - message.values.push($root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue.decode(reader, reader.uint32())); + message.values.push($root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -39019,7 +40661,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39050,9 +40692,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Facet.verify = function verify(message) { + Facet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -39060,7 +40706,7 @@ if (!Array.isArray(message.values)) return "values: array expected"; for (var i = 0; i < message.values.length; ++i) { - var error = $root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue.verify(message.values[i]); + var error = $root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue.verify(message.values[i], long + 1); if (error) return "values." + error; } @@ -39079,9 +40725,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse.Facet} Facet */ - Facet.fromObject = function fromObject(object) { + Facet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse.Facet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse.Facet(); if (object.key != null) message.key = String(object.key); @@ -39092,7 +40742,7 @@ for (var i = 0; i < object.values.length; ++i) { if (typeof object.values[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.Facet.values: object expected"); - message.values[i] = $root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue.fromObject(object.values[i]); + message.values[i] = $root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue.fromObject(object.values[i], long + 1); } } if (object.dynamicFacet != null) @@ -39181,7 +40831,7 @@ function FacetValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39300,9 +40950,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetValue.decode = function decode(reader, length, error) { + FacetValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39314,7 +40968,7 @@ break; } case 2: { - message.interval = $root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32()); + message.interval = $root.google.cloud.retail.v2.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -39330,7 +40984,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39361,9 +41015,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetValue.verify = function verify(message) { + FacetValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.value != null && message.hasOwnProperty("value")) { properties.facetValue = 1; @@ -39375,7 +41033,7 @@ return "facetValue: multiple values"; properties.facetValue = 1; { - var error = $root.google.cloud.retail.v2.Interval.verify(message.interval); + var error = $root.google.cloud.retail.v2.Interval.verify(message.interval, long + 1); if (error) return "interval." + error; } @@ -39400,16 +41058,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse.Facet.FacetValue} FacetValue */ - FacetValue.fromObject = function fromObject(object) { + FacetValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse.Facet.FacetValue(); if (object.value != null) message.value = String(object.value); if (object.interval != null) { if (typeof object.interval !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.Facet.FacetValue.interval: object expected"); - message.interval = $root.google.cloud.retail.v2.Interval.fromObject(object.interval); + message.interval = $root.google.cloud.retail.v2.Interval.fromObject(object.interval, long + 1); } if (object.count != null) if ($util.Long) @@ -39524,7 +41186,7 @@ function QueryExpansionInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39599,9 +41261,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryExpansionInfo.decode = function decode(reader, length, error) { + QueryExpansionInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39617,7 +41283,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39648,9 +41314,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryExpansionInfo.verify = function verify(message) { + QueryExpansionInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.expandedQuery != null && message.hasOwnProperty("expandedQuery")) if (typeof message.expandedQuery !== "boolean") return "expandedQuery: boolean expected"; @@ -39668,9 +41338,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse.QueryExpansionInfo} QueryExpansionInfo */ - QueryExpansionInfo.fromObject = function fromObject(object) { + QueryExpansionInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse.QueryExpansionInfo(); if (object.expandedQuery != null) message.expandedQuery = Boolean(object.expandedQuery); @@ -39773,7 +41447,7 @@ this.suggestedAnswers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39890,9 +41564,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchResult.decode = function decode(reader, length, error) { + ConversationalSearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39910,7 +41588,7 @@ case 3: { if (!(message.additionalFilters && message.additionalFilters.length)) message.additionalFilters = []; - message.additionalFilters.push($root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32())); + message.additionalFilters.push($root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -39920,15 +41598,15 @@ case 5: { if (!(message.suggestedAnswers && message.suggestedAnswers.length)) message.suggestedAnswers = []; - message.suggestedAnswers.push($root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer.decode(reader, reader.uint32())); + message.suggestedAnswers.push($root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { - message.additionalFilter = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32()); + message.additionalFilter = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39959,9 +41637,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchResult.verify = function verify(message) { + ConversationalSearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.conversationId != null && message.hasOwnProperty("conversationId")) if (!$util.isString(message.conversationId)) return "conversationId: string expected"; @@ -39972,7 +41654,7 @@ if (!Array.isArray(message.additionalFilters)) return "additionalFilters: array expected"; for (var i = 0; i < message.additionalFilters.length; ++i) { - var error = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilters[i]); + var error = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilters[i], long + 1); if (error) return "additionalFilters." + error; } @@ -39984,13 +41666,13 @@ if (!Array.isArray(message.suggestedAnswers)) return "suggestedAnswers: array expected"; for (var i = 0; i < message.suggestedAnswers.length; ++i) { - var error = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer.verify(message.suggestedAnswers[i]); + var error = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer.verify(message.suggestedAnswers[i], long + 1); if (error) return "suggestedAnswers." + error; } } if (message.additionalFilter != null && message.hasOwnProperty("additionalFilter")) { - var error = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilter); + var error = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilter, long + 1); if (error) return "additionalFilter." + error; } @@ -40005,9 +41687,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse.ConversationalSearchResult} ConversationalSearchResult */ - ConversationalSearchResult.fromObject = function fromObject(object) { + ConversationalSearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult(); if (object.conversationId != null) message.conversationId = String(object.conversationId); @@ -40020,7 +41706,7 @@ for (var i = 0; i < object.additionalFilters.length; ++i) { if (typeof object.additionalFilters[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.additionalFilters: object expected"); - message.additionalFilters[i] = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilters[i]); + message.additionalFilters[i] = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilters[i], long + 1); } } if (object.followupQuestion != null) @@ -40032,13 +41718,13 @@ for (var i = 0; i < object.suggestedAnswers.length; ++i) { if (typeof object.suggestedAnswers[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.suggestedAnswers: object expected"); - message.suggestedAnswers[i] = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer.fromObject(object.suggestedAnswers[i]); + message.suggestedAnswers[i] = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer.fromObject(object.suggestedAnswers[i], long + 1); } } if (object.additionalFilter != null) { if (typeof object.additionalFilter !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.additionalFilter: object expected"); - message.additionalFilter = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilter); + message.additionalFilter = $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilter, long + 1); } return message; }; @@ -40133,7 +41819,7 @@ function SuggestedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40198,9 +41884,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SuggestedAnswer.decode = function decode(reader, length, error) { + SuggestedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40208,11 +41898,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40243,11 +41933,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SuggestedAnswer.verify = function verify(message) { + SuggestedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -40262,14 +41956,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer} SuggestedAnswer */ - SuggestedAnswer.fromObject = function fromObject(object) { + SuggestedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.SuggestedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -40343,7 +42041,7 @@ function AdditionalFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40408,9 +42106,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AdditionalFilter.decode = function decode(reader, length, error) { + AdditionalFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40418,11 +42120,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40453,11 +42155,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AdditionalFilter.verify = function verify(message) { + AdditionalFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -40472,14 +42178,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter} AdditionalFilter */ - AdditionalFilter.fromObject = function fromObject(object) { + AdditionalFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.ConversationalSearchResult.AdditionalFilter.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -40557,7 +42267,7 @@ this.tiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40623,9 +42333,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TileNavigationResult.decode = function decode(reader, length, error) { + TileNavigationResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40635,11 +42349,11 @@ case 1: { if (!(message.tiles && message.tiles.length)) message.tiles = []; - message.tiles.push($root.google.cloud.retail.v2.Tile.decode(reader, reader.uint32())); + message.tiles.push($root.google.cloud.retail.v2.Tile.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40670,14 +42384,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TileNavigationResult.verify = function verify(message) { + TileNavigationResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tiles != null && message.hasOwnProperty("tiles")) { if (!Array.isArray(message.tiles)) return "tiles: array expected"; for (var i = 0; i < message.tiles.length; ++i) { - var error = $root.google.cloud.retail.v2.Tile.verify(message.tiles[i]); + var error = $root.google.cloud.retail.v2.Tile.verify(message.tiles[i], long + 1); if (error) return "tiles." + error; } @@ -40693,9 +42411,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SearchResponse.TileNavigationResult} TileNavigationResult */ - TileNavigationResult.fromObject = function fromObject(object) { + TileNavigationResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SearchResponse.TileNavigationResult(); if (object.tiles) { if (!Array.isArray(object.tiles)) @@ -40704,7 +42426,7 @@ for (var i = 0; i < object.tiles.length; ++i) { if (typeof object.tiles[i] !== "object") throw TypeError(".google.cloud.retail.v2.SearchResponse.TileNavigationResult.tiles: object expected"); - message.tiles[i] = $root.google.cloud.retail.v2.Tile.fromObject(object.tiles[i]); + message.tiles[i] = $root.google.cloud.retail.v2.Tile.fromObject(object.tiles[i], long + 1); } } return message; @@ -40786,7 +42508,7 @@ function ExperimentInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40875,9 +42597,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentInfo.decode = function decode(reader, length, error) { + ExperimentInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ExperimentInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40885,7 +42611,7 @@ break; switch (tag >>> 3) { case 2: { - message.servingConfigExperiment = $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment.decode(reader, reader.uint32()); + message.servingConfigExperiment = $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -40893,7 +42619,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40924,14 +42650,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentInfo.verify = function verify(message) { + ExperimentInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.servingConfigExperiment != null && message.hasOwnProperty("servingConfigExperiment")) { properties.experimentMetadata = 1; { - var error = $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment.verify(message.servingConfigExperiment); + var error = $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment.verify(message.servingConfigExperiment, long + 1); if (error) return "servingConfigExperiment." + error; } @@ -40950,14 +42680,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ExperimentInfo} ExperimentInfo */ - ExperimentInfo.fromObject = function fromObject(object) { + ExperimentInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ExperimentInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ExperimentInfo(); if (object.servingConfigExperiment != null) { if (typeof object.servingConfigExperiment !== "object") throw TypeError(".google.cloud.retail.v2.ExperimentInfo.servingConfigExperiment: object expected"); - message.servingConfigExperiment = $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment.fromObject(object.servingConfigExperiment); + message.servingConfigExperiment = $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment.fromObject(object.servingConfigExperiment, long + 1); } if (object.experiment != null) message.experiment = String(object.experiment); @@ -41036,7 +42770,7 @@ function ServingConfigExperiment(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41111,9 +42845,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfigExperiment.decode = function decode(reader, length, error) { + ServingConfigExperiment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41129,7 +42867,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41160,9 +42898,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfigExperiment.verify = function verify(message) { + ServingConfigExperiment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.originalServingConfig != null && message.hasOwnProperty("originalServingConfig")) if (!$util.isString(message.originalServingConfig)) return "originalServingConfig: string expected"; @@ -41180,9 +42922,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment} ServingConfigExperiment */ - ServingConfigExperiment.fromObject = function fromObject(object) { + ServingConfigExperiment.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ExperimentInfo.ServingConfigExperiment(); if (object.originalServingConfig != null) message.originalServingConfig = String(object.originalServingConfig); @@ -41269,7 +43015,7 @@ function GenerativeQuestionsFeatureConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41354,9 +43100,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerativeQuestionsFeatureConfig.decode = function decode(reader, length, error) { + GenerativeQuestionsFeatureConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41376,7 +43126,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41407,9 +43157,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerativeQuestionsFeatureConfig.verify = function verify(message) { + GenerativeQuestionsFeatureConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -41430,9 +43184,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GenerativeQuestionsFeatureConfig} GenerativeQuestionsFeatureConfig */ - GenerativeQuestionsFeatureConfig.fromObject = function fromObject(object) { + GenerativeQuestionsFeatureConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -41526,7 +43284,7 @@ this.exampleValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41652,9 +43410,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerativeQuestionConfig.decode = function decode(reader, length, error) { + GenerativeQuestionConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GenerativeQuestionConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41692,7 +43454,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41723,9 +43485,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerativeQuestionConfig.verify = function verify(message) { + GenerativeQuestionConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -41762,9 +43528,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GenerativeQuestionConfig} GenerativeQuestionConfig */ - GenerativeQuestionConfig.fromObject = function fromObject(object) { + GenerativeQuestionConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GenerativeQuestionConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GenerativeQuestionConfig(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -42081,7 +43851,7 @@ function UpdateGenerativeQuestionsFeatureConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42156,9 +43926,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error) { + UpdateGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateGenerativeQuestionsFeatureConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42166,15 +43940,15 @@ break; switch (tag >>> 3) { case 2: { - message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig.decode(reader, reader.uint32()); + message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42205,16 +43979,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateGenerativeQuestionsFeatureConfigRequest.verify = function verify(message) { + UpdateGenerativeQuestionsFeatureConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionsFeatureConfig != null && message.hasOwnProperty("generativeQuestionsFeatureConfig")) { - var error = $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig.verify(message.generativeQuestionsFeatureConfig); + var error = $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig.verify(message.generativeQuestionsFeatureConfig, long + 1); if (error) return "generativeQuestionsFeatureConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -42229,19 +44007,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateGenerativeQuestionsFeatureConfigRequest} UpdateGenerativeQuestionsFeatureConfigRequest */ - UpdateGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object) { + UpdateGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateGenerativeQuestionsFeatureConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateGenerativeQuestionsFeatureConfigRequest(); if (object.generativeQuestionsFeatureConfig != null) { if (typeof object.generativeQuestionsFeatureConfig !== "object") throw TypeError(".google.cloud.retail.v2.UpdateGenerativeQuestionsFeatureConfigRequest.generativeQuestionsFeatureConfig: object expected"); - message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig.fromObject(object.generativeQuestionsFeatureConfig); + message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2.GenerativeQuestionsFeatureConfig.fromObject(object.generativeQuestionsFeatureConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateGenerativeQuestionsFeatureConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -42319,7 +44101,7 @@ function GetGenerativeQuestionsFeatureConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42384,9 +44166,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error) { + GetGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetGenerativeQuestionsFeatureConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42398,7 +44184,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42429,9 +44215,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetGenerativeQuestionsFeatureConfigRequest.verify = function verify(message) { + GetGenerativeQuestionsFeatureConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -42446,9 +44236,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetGenerativeQuestionsFeatureConfigRequest} GetGenerativeQuestionsFeatureConfigRequest */ - GetGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object) { + GetGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetGenerativeQuestionsFeatureConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetGenerativeQuestionsFeatureConfigRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -42524,7 +44318,7 @@ function ListGenerativeQuestionConfigsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42589,9 +44383,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error) { + ListGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListGenerativeQuestionConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42603,7 +44401,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42634,9 +44432,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListGenerativeQuestionConfigsRequest.verify = function verify(message) { + ListGenerativeQuestionConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -42651,9 +44453,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListGenerativeQuestionConfigsRequest} ListGenerativeQuestionConfigsRequest */ - ListGenerativeQuestionConfigsRequest.fromObject = function fromObject(object) { + ListGenerativeQuestionConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListGenerativeQuestionConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListGenerativeQuestionConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -42730,7 +44536,7 @@ this.generativeQuestionConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42796,9 +44602,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error) { + ListGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListGenerativeQuestionConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42808,11 +44618,11 @@ case 1: { if (!(message.generativeQuestionConfigs && message.generativeQuestionConfigs.length)) message.generativeQuestionConfigs = []; - message.generativeQuestionConfigs.push($root.google.cloud.retail.v2.GenerativeQuestionConfig.decode(reader, reader.uint32())); + message.generativeQuestionConfigs.push($root.google.cloud.retail.v2.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42843,14 +44653,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListGenerativeQuestionConfigsResponse.verify = function verify(message) { + ListGenerativeQuestionConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfigs != null && message.hasOwnProperty("generativeQuestionConfigs")) { if (!Array.isArray(message.generativeQuestionConfigs)) return "generativeQuestionConfigs: array expected"; for (var i = 0; i < message.generativeQuestionConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i]); + var error = $root.google.cloud.retail.v2.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i], long + 1); if (error) return "generativeQuestionConfigs." + error; } @@ -42866,9 +44680,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListGenerativeQuestionConfigsResponse} ListGenerativeQuestionConfigsResponse */ - ListGenerativeQuestionConfigsResponse.fromObject = function fromObject(object) { + ListGenerativeQuestionConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListGenerativeQuestionConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListGenerativeQuestionConfigsResponse(); if (object.generativeQuestionConfigs) { if (!Array.isArray(object.generativeQuestionConfigs)) @@ -42877,7 +44695,7 @@ for (var i = 0; i < object.generativeQuestionConfigs.length; ++i) { if (typeof object.generativeQuestionConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2.ListGenerativeQuestionConfigsResponse.generativeQuestionConfigs: object expected"); - message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i]); + message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i], long + 1); } } return message; @@ -42956,7 +44774,7 @@ function UpdateGenerativeQuestionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43031,9 +44849,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateGenerativeQuestionConfigRequest.decode = function decode(reader, length, error) { + UpdateGenerativeQuestionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43041,15 +44863,15 @@ break; switch (tag >>> 3) { case 3: { - message.generativeQuestionConfig = $root.google.cloud.retail.v2.GenerativeQuestionConfig.decode(reader, reader.uint32()); + message.generativeQuestionConfig = $root.google.cloud.retail.v2.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43080,16 +44902,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateGenerativeQuestionConfigRequest.verify = function verify(message) { + UpdateGenerativeQuestionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfig != null && message.hasOwnProperty("generativeQuestionConfig")) { - var error = $root.google.cloud.retail.v2.GenerativeQuestionConfig.verify(message.generativeQuestionConfig); + var error = $root.google.cloud.retail.v2.GenerativeQuestionConfig.verify(message.generativeQuestionConfig, long + 1); if (error) return "generativeQuestionConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -43104,19 +44930,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest} UpdateGenerativeQuestionConfigRequest */ - UpdateGenerativeQuestionConfigRequest.fromObject = function fromObject(object) { + UpdateGenerativeQuestionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest(); if (object.generativeQuestionConfig != null) { if (typeof object.generativeQuestionConfig !== "object") throw TypeError(".google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest.generativeQuestionConfig: object expected"); - message.generativeQuestionConfig = $root.google.cloud.retail.v2.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfig); + message.generativeQuestionConfig = $root.google.cloud.retail.v2.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -43196,7 +45026,7 @@ this.requests = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43272,9 +45102,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchUpdateGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error) { + BatchUpdateGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43288,11 +45122,11 @@ case 2: { if (!(message.requests && message.requests.length)) message.requests = []; - message.requests.push($root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest.decode(reader, reader.uint32())); + message.requests.push($root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43323,9 +45157,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchUpdateGenerativeQuestionConfigsRequest.verify = function verify(message) { + BatchUpdateGenerativeQuestionConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -43333,7 +45171,7 @@ if (!Array.isArray(message.requests)) return "requests: array expected"; for (var i = 0; i < message.requests.length; ++i) { - var error = $root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest.verify(message.requests[i]); + var error = $root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest.verify(message.requests[i], long + 1); if (error) return "requests." + error; } @@ -43349,9 +45187,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsRequest} BatchUpdateGenerativeQuestionConfigsRequest */ - BatchUpdateGenerativeQuestionConfigsRequest.fromObject = function fromObject(object) { + BatchUpdateGenerativeQuestionConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -43362,7 +45204,7 @@ for (var i = 0; i < object.requests.length; ++i) { if (typeof object.requests[i] !== "object") throw TypeError(".google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsRequest.requests: object expected"); - message.requests[i] = $root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest.fromObject(object.requests[i]); + message.requests[i] = $root.google.cloud.retail.v2.UpdateGenerativeQuestionConfigRequest.fromObject(object.requests[i], long + 1); } } return message; @@ -43445,7 +45287,7 @@ this.generativeQuestionConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43511,9 +45353,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchUpdateGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error) { + BatchUpdateGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43523,11 +45369,11 @@ case 1: { if (!(message.generativeQuestionConfigs && message.generativeQuestionConfigs.length)) message.generativeQuestionConfigs = []; - message.generativeQuestionConfigs.push($root.google.cloud.retail.v2.GenerativeQuestionConfig.decode(reader, reader.uint32())); + message.generativeQuestionConfigs.push($root.google.cloud.retail.v2.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43558,14 +45404,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchUpdateGenerativeQuestionConfigsResponse.verify = function verify(message) { + BatchUpdateGenerativeQuestionConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfigs != null && message.hasOwnProperty("generativeQuestionConfigs")) { if (!Array.isArray(message.generativeQuestionConfigs)) return "generativeQuestionConfigs: array expected"; for (var i = 0; i < message.generativeQuestionConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i]); + var error = $root.google.cloud.retail.v2.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i], long + 1); if (error) return "generativeQuestionConfigs." + error; } @@ -43581,9 +45431,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsResponse} BatchUpdateGenerativeQuestionConfigsResponse */ - BatchUpdateGenerativeQuestionConfigsResponse.fromObject = function fromObject(object) { + BatchUpdateGenerativeQuestionConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsResponse(); if (object.generativeQuestionConfigs) { if (!Array.isArray(object.generativeQuestionConfigs)) @@ -43592,7 +45446,7 @@ for (var i = 0; i < object.generativeQuestionConfigs.length; ++i) { if (typeof object.generativeQuestionConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2.BatchUpdateGenerativeQuestionConfigsResponse.generativeQuestionConfigs: object expected"); - message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i]); + message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i], long + 1); } } return message; @@ -43685,7 +45539,7 @@ this.servingConfigLists = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43891,9 +45745,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Model.decode = function decode(reader, length, error) { + Model.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Model(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43917,11 +45775,11 @@ break; } case 5: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -43937,7 +45795,7 @@ break; } case 12: { - message.lastTuneTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastTuneTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { @@ -43955,15 +45813,15 @@ case 19: { if (!(message.servingConfigLists && message.servingConfigLists.length)) message.servingConfigLists = []; - message.servingConfigLists.push($root.google.cloud.retail.v2.Model.ServingConfigList.decode(reader, reader.uint32())); + message.servingConfigLists.push($root.google.cloud.retail.v2.Model.ServingConfigList.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { - message.modelFeaturesConfig = $root.google.cloud.retail.v2.Model.ModelFeaturesConfig.decode(reader, reader.uint32()); + message.modelFeaturesConfig = $root.google.cloud.retail.v2.Model.ModelFeaturesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43994,9 +45852,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Model.verify = function verify(message) { + Model.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -44023,12 +45885,12 @@ break; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -44049,7 +45911,7 @@ break; } if (message.lastTuneTime != null && message.hasOwnProperty("lastTuneTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastTuneTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastTuneTime, long + 1); if (error) return "lastTuneTime." + error; } @@ -44078,13 +45940,13 @@ if (!Array.isArray(message.servingConfigLists)) return "servingConfigLists: array expected"; for (var i = 0; i < message.servingConfigLists.length; ++i) { - var error = $root.google.cloud.retail.v2.Model.ServingConfigList.verify(message.servingConfigLists[i]); + var error = $root.google.cloud.retail.v2.Model.ServingConfigList.verify(message.servingConfigLists[i], long + 1); if (error) return "servingConfigLists." + error; } } if (message.modelFeaturesConfig != null && message.hasOwnProperty("modelFeaturesConfig")) { - var error = $root.google.cloud.retail.v2.Model.ModelFeaturesConfig.verify(message.modelFeaturesConfig); + var error = $root.google.cloud.retail.v2.Model.ModelFeaturesConfig.verify(message.modelFeaturesConfig, long + 1); if (error) return "modelFeaturesConfig." + error; } @@ -44099,9 +45961,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Model} Model */ - Model.fromObject = function fromObject(object) { + Model.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Model) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Model(); if (object.name != null) message.name = String(object.name); @@ -44154,12 +46020,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2.Model.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2.Model.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.type != null) message.type = String(object.type); @@ -44192,7 +46058,7 @@ if (object.lastTuneTime != null) { if (typeof object.lastTuneTime !== "object") throw TypeError(".google.cloud.retail.v2.Model.lastTuneTime: object expected"); - message.lastTuneTime = $root.google.protobuf.Timestamp.fromObject(object.lastTuneTime); + message.lastTuneTime = $root.google.protobuf.Timestamp.fromObject(object.lastTuneTime, long + 1); } if (object.tuningOperation != null) message.tuningOperation = String(object.tuningOperation); @@ -44243,13 +46109,13 @@ for (var i = 0; i < object.servingConfigLists.length; ++i) { if (typeof object.servingConfigLists[i] !== "object") throw TypeError(".google.cloud.retail.v2.Model.servingConfigLists: object expected"); - message.servingConfigLists[i] = $root.google.cloud.retail.v2.Model.ServingConfigList.fromObject(object.servingConfigLists[i]); + message.servingConfigLists[i] = $root.google.cloud.retail.v2.Model.ServingConfigList.fromObject(object.servingConfigLists[i], long + 1); } } if (object.modelFeaturesConfig != null) { if (typeof object.modelFeaturesConfig !== "object") throw TypeError(".google.cloud.retail.v2.Model.modelFeaturesConfig: object expected"); - message.modelFeaturesConfig = $root.google.cloud.retail.v2.Model.ModelFeaturesConfig.fromObject(object.modelFeaturesConfig); + message.modelFeaturesConfig = $root.google.cloud.retail.v2.Model.ModelFeaturesConfig.fromObject(object.modelFeaturesConfig, long + 1); } return message; }; @@ -44368,7 +46234,7 @@ this.servingConfigIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44434,9 +46300,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfigList.decode = function decode(reader, length, error) { + ServingConfigList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Model.ServingConfigList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44450,7 +46320,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44481,9 +46351,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfigList.verify = function verify(message) { + ServingConfigList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfigIds != null && message.hasOwnProperty("servingConfigIds")) { if (!Array.isArray(message.servingConfigIds)) return "servingConfigIds: array expected"; @@ -44502,9 +46376,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Model.ServingConfigList} ServingConfigList */ - ServingConfigList.fromObject = function fromObject(object) { + ServingConfigList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Model.ServingConfigList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Model.ServingConfigList(); if (object.servingConfigIds) { if (!Array.isArray(object.servingConfigIds)) @@ -44588,7 +46466,7 @@ function FrequentlyBoughtTogetherFeaturesConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44653,9 +46531,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FrequentlyBoughtTogetherFeaturesConfig.decode = function decode(reader, length, error) { + FrequentlyBoughtTogetherFeaturesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44667,7 +46549,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44698,9 +46580,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FrequentlyBoughtTogetherFeaturesConfig.verify = function verify(message) { + FrequentlyBoughtTogetherFeaturesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.contextProductsType != null && message.hasOwnProperty("contextProductsType")) switch (message.contextProductsType) { default: @@ -44721,9 +46607,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig} FrequentlyBoughtTogetherFeaturesConfig */ - FrequentlyBoughtTogetherFeaturesConfig.fromObject = function fromObject(object) { + FrequentlyBoughtTogetherFeaturesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig(); switch (object.contextProductsType) { default: @@ -44817,7 +46707,7 @@ function ModelFeaturesConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44896,9 +46786,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ModelFeaturesConfig.decode = function decode(reader, length, error) { + ModelFeaturesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.Model.ModelFeaturesConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44906,11 +46800,11 @@ break; switch (tag >>> 3) { case 1: { - message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig.decode(reader, reader.uint32()); + message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44941,14 +46835,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ModelFeaturesConfig.verify = function verify(message) { + ModelFeaturesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.frequentlyBoughtTogetherConfig != null && message.hasOwnProperty("frequentlyBoughtTogetherConfig")) { properties.typeDedicatedConfig = 1; { - var error = $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig.verify(message.frequentlyBoughtTogetherConfig); + var error = $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig.verify(message.frequentlyBoughtTogetherConfig, long + 1); if (error) return "frequentlyBoughtTogetherConfig." + error; } @@ -44964,14 +46862,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.Model.ModelFeaturesConfig} ModelFeaturesConfig */ - ModelFeaturesConfig.fromObject = function fromObject(object) { + ModelFeaturesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.Model.ModelFeaturesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.Model.ModelFeaturesConfig(); if (object.frequentlyBoughtTogetherConfig != null) { if (typeof object.frequentlyBoughtTogetherConfig !== "object") throw TypeError(".google.cloud.retail.v2.Model.ModelFeaturesConfig.frequentlyBoughtTogetherConfig: object expected"); - message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig.fromObject(object.frequentlyBoughtTogetherConfig); + message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2.Model.FrequentlyBoughtTogetherFeaturesConfig.fromObject(object.frequentlyBoughtTogetherConfig, long + 1); } return message; }; @@ -45434,7 +47336,7 @@ function CreateModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45519,9 +47421,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateModelRequest.decode = function decode(reader, length, error) { + CreateModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CreateModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45533,7 +47439,7 @@ break; } case 2: { - message.model = $root.google.cloud.retail.v2.Model.decode(reader, reader.uint32()); + message.model = $root.google.cloud.retail.v2.Model.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -45541,7 +47447,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45572,14 +47478,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateModelRequest.verify = function verify(message) { + CreateModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.model != null && message.hasOwnProperty("model")) { - var error = $root.google.cloud.retail.v2.Model.verify(message.model); + var error = $root.google.cloud.retail.v2.Model.verify(message.model, long + 1); if (error) return "model." + error; } @@ -45597,16 +47507,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CreateModelRequest} CreateModelRequest */ - CreateModelRequest.fromObject = function fromObject(object) { + CreateModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CreateModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CreateModelRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.model != null) { if (typeof object.model !== "object") throw TypeError(".google.cloud.retail.v2.CreateModelRequest.model: object expected"); - message.model = $root.google.cloud.retail.v2.Model.fromObject(object.model); + message.model = $root.google.cloud.retail.v2.Model.fromObject(object.model, long + 1); } if (object.dryRun != null) message.dryRun = Boolean(object.dryRun); @@ -45690,7 +47604,7 @@ function UpdateModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45765,9 +47679,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateModelRequest.decode = function decode(reader, length, error) { + UpdateModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45775,15 +47693,15 @@ break; switch (tag >>> 3) { case 1: { - message.model = $root.google.cloud.retail.v2.Model.decode(reader, reader.uint32()); + message.model = $root.google.cloud.retail.v2.Model.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45814,16 +47732,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateModelRequest.verify = function verify(message) { + UpdateModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) { - var error = $root.google.cloud.retail.v2.Model.verify(message.model); + var error = $root.google.cloud.retail.v2.Model.verify(message.model, long + 1); if (error) return "model." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -45838,19 +47760,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateModelRequest} UpdateModelRequest */ - UpdateModelRequest.fromObject = function fromObject(object) { + UpdateModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateModelRequest(); if (object.model != null) { if (typeof object.model !== "object") throw TypeError(".google.cloud.retail.v2.UpdateModelRequest.model: object expected"); - message.model = $root.google.cloud.retail.v2.Model.fromObject(object.model); + message.model = $root.google.cloud.retail.v2.Model.fromObject(object.model, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateModelRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -45928,7 +47854,7 @@ function GetModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45993,9 +47919,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetModelRequest.decode = function decode(reader, length, error) { + GetModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46007,7 +47937,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46038,9 +47968,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetModelRequest.verify = function verify(message) { + GetModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46055,9 +47989,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetModelRequest} GetModelRequest */ - GetModelRequest.fromObject = function fromObject(object) { + GetModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetModelRequest(); if (object.name != null) message.name = String(object.name); @@ -46133,7 +48071,7 @@ function PauseModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46198,9 +48136,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PauseModelRequest.decode = function decode(reader, length, error) { + PauseModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PauseModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46212,7 +48154,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46243,9 +48185,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PauseModelRequest.verify = function verify(message) { + PauseModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46260,9 +48206,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PauseModelRequest} PauseModelRequest */ - PauseModelRequest.fromObject = function fromObject(object) { + PauseModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PauseModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PauseModelRequest(); if (object.name != null) message.name = String(object.name); @@ -46338,7 +48288,7 @@ function ResumeModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46403,9 +48353,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResumeModelRequest.decode = function decode(reader, length, error) { + ResumeModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ResumeModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46417,7 +48371,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46448,9 +48402,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResumeModelRequest.verify = function verify(message) { + ResumeModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46465,9 +48423,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ResumeModelRequest} ResumeModelRequest */ - ResumeModelRequest.fromObject = function fromObject(object) { + ResumeModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ResumeModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ResumeModelRequest(); if (object.name != null) message.name = String(object.name); @@ -46545,7 +48507,7 @@ function ListModelsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46630,9 +48592,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListModelsRequest.decode = function decode(reader, length, error) { + ListModelsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListModelsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46652,7 +48618,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46683,9 +48649,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListModelsRequest.verify = function verify(message) { + ListModelsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -46706,9 +48676,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListModelsRequest} ListModelsRequest */ - ListModelsRequest.fromObject = function fromObject(object) { + ListModelsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListModelsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListModelsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -46795,7 +48769,7 @@ function DeleteModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46860,9 +48834,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteModelRequest.decode = function decode(reader, length, error) { + DeleteModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.DeleteModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46874,7 +48852,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46905,9 +48883,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteModelRequest.verify = function verify(message) { + DeleteModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46922,9 +48904,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.DeleteModelRequest} DeleteModelRequest */ - DeleteModelRequest.fromObject = function fromObject(object) { + DeleteModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.DeleteModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.DeleteModelRequest(); if (object.name != null) message.name = String(object.name); @@ -47002,7 +48988,7 @@ this.models = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47078,9 +49064,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListModelsResponse.decode = function decode(reader, length, error) { + ListModelsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListModelsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47090,7 +49080,7 @@ case 1: { if (!(message.models && message.models.length)) message.models = []; - message.models.push($root.google.cloud.retail.v2.Model.decode(reader, reader.uint32())); + message.models.push($root.google.cloud.retail.v2.Model.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -47098,7 +49088,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47129,14 +49119,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListModelsResponse.verify = function verify(message) { + ListModelsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.models != null && message.hasOwnProperty("models")) { if (!Array.isArray(message.models)) return "models: array expected"; for (var i = 0; i < message.models.length; ++i) { - var error = $root.google.cloud.retail.v2.Model.verify(message.models[i]); + var error = $root.google.cloud.retail.v2.Model.verify(message.models[i], long + 1); if (error) return "models." + error; } @@ -47155,9 +49149,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListModelsResponse} ListModelsResponse */ - ListModelsResponse.fromObject = function fromObject(object) { + ListModelsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListModelsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListModelsResponse(); if (object.models) { if (!Array.isArray(object.models)) @@ -47166,7 +49164,7 @@ for (var i = 0; i < object.models.length; ++i) { if (typeof object.models[i] !== "object") throw TypeError(".google.cloud.retail.v2.ListModelsResponse.models: object expected"); - message.models[i] = $root.google.cloud.retail.v2.Model.fromObject(object.models[i]); + message.models[i] = $root.google.cloud.retail.v2.Model.fromObject(object.models[i], long + 1); } } if (object.nextPageToken != null) @@ -47250,7 +49248,7 @@ function TuneModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47315,9 +49313,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelRequest.decode = function decode(reader, length, error) { + TuneModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.TuneModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47329,7 +49331,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47360,9 +49362,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelRequest.verify = function verify(message) { + TuneModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -47377,9 +49383,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.TuneModelRequest} TuneModelRequest */ - TuneModelRequest.fromObject = function fromObject(object) { + TuneModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.TuneModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.TuneModelRequest(); if (object.name != null) message.name = String(object.name); @@ -47455,7 +49465,7 @@ function CreateModelMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47520,9 +49530,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateModelMetadata.decode = function decode(reader, length, error) { + CreateModelMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CreateModelMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47534,7 +49548,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47565,9 +49579,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateModelMetadata.verify = function verify(message) { + CreateModelMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) if (!$util.isString(message.model)) return "model: string expected"; @@ -47582,9 +49600,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CreateModelMetadata} CreateModelMetadata */ - CreateModelMetadata.fromObject = function fromObject(object) { + CreateModelMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CreateModelMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CreateModelMetadata(); if (object.model != null) message.model = String(object.model); @@ -47660,7 +49682,7 @@ function TuneModelMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47725,9 +49747,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelMetadata.decode = function decode(reader, length, error) { + TuneModelMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.TuneModelMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47739,7 +49765,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47770,9 +49796,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelMetadata.verify = function verify(message) { + TuneModelMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) if (!$util.isString(message.model)) return "model: string expected"; @@ -47787,9 +49817,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.TuneModelMetadata} TuneModelMetadata */ - TuneModelMetadata.fromObject = function fromObject(object) { + TuneModelMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.TuneModelMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.TuneModelMetadata(); if (object.model != null) message.model = String(object.model); @@ -47864,7 +49898,7 @@ function TuneModelResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47919,9 +49953,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelResponse.decode = function decode(reader, length, error) { + TuneModelResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.TuneModelResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47929,7 +49967,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47960,9 +49998,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelResponse.verify = function verify(message) { + TuneModelResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -47974,9 +50016,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.TuneModelResponse} TuneModelResponse */ - TuneModelResponse.fromObject = function fromObject(object) { + TuneModelResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.TuneModelResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.TuneModelResponse(); }; @@ -48119,7 +50165,7 @@ this.labels = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48258,9 +50304,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictRequest.decode = function decode(reader, length, error) { + PredictRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PredictRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -48272,7 +50322,7 @@ break; } case 2: { - message.userEvent = $root.google.cloud.retail.v2.UserEvent.decode(reader, reader.uint32()); + message.userEvent = $root.google.cloud.retail.v2.UserEvent.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -48304,13 +50354,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.params, key); message.params[key] = value; break; } @@ -48330,15 +50382,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48369,14 +50423,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictRequest.verify = function verify(message) { + PredictRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) return "placement: string expected"; if (message.userEvent != null && message.hasOwnProperty("userEvent")) { - var error = $root.google.cloud.retail.v2.UserEvent.verify(message.userEvent); + var error = $root.google.cloud.retail.v2.UserEvent.verify(message.userEvent, long + 1); if (error) return "userEvent." + error; } @@ -48397,7 +50455,7 @@ return "params: object expected"; var key = Object.keys(message.params); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.params[key[i]]); + var error = $root.google.protobuf.Value.verify(message.params[key[i]], long + 1); if (error) return "params." + error; } @@ -48421,16 +50479,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PredictRequest} PredictRequest */ - PredictRequest.fromObject = function fromObject(object) { + PredictRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PredictRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PredictRequest(); if (object.placement != null) message.placement = String(object.placement); if (object.userEvent != null) { if (typeof object.userEvent !== "object") throw TypeError(".google.cloud.retail.v2.PredictRequest.userEvent: object expected"); - message.userEvent = $root.google.cloud.retail.v2.UserEvent.fromObject(object.userEvent); + message.userEvent = $root.google.cloud.retail.v2.UserEvent.fromObject(object.userEvent, long + 1); } if (object.pageSize != null) message.pageSize = object.pageSize | 0; @@ -48445,17 +50507,22 @@ throw TypeError(".google.cloud.retail.v2.PredictRequest.params: object expected"); message.params = {}; for (var keys = Object.keys(object.params), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.params, keys[i]); if (typeof object.params[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.PredictRequest.params: object expected"); - message.params[keys[i]] = $root.google.protobuf.Value.fromObject(object.params[keys[i]]); + message.params[keys[i]] = $root.google.protobuf.Value.fromObject(object.params[keys[i]], long + 1); } } if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".google.cloud.retail.v2.PredictRequest.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } return message; }; @@ -48500,13 +50567,19 @@ var keys2; if (message.params && (keys2 = Object.keys(message.params)).length) { object.params = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.params, keys2[j]); object.params[keys2[j]] = $root.google.protobuf.Value.toObject(message.params[keys2[j]], options); + } } if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } return object; }; @@ -48565,7 +50638,7 @@ this.missingIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48662,9 +50735,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictResponse.decode = function decode(reader, length, error) { + PredictResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PredictResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48674,7 +50751,7 @@ case 1: { if (!(message.results && message.results.length)) message.results = []; - message.results.push($root.google.cloud.retail.v2.PredictResponse.PredictionResult.decode(reader, reader.uint32())); + message.results.push($root.google.cloud.retail.v2.PredictResponse.PredictionResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -48692,7 +50769,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48723,14 +50800,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictResponse.verify = function verify(message) { + PredictResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.results != null && message.hasOwnProperty("results")) { if (!Array.isArray(message.results)) return "results: array expected"; for (var i = 0; i < message.results.length; ++i) { - var error = $root.google.cloud.retail.v2.PredictResponse.PredictionResult.verify(message.results[i]); + var error = $root.google.cloud.retail.v2.PredictResponse.PredictionResult.verify(message.results[i], long + 1); if (error) return "results." + error; } @@ -48759,9 +50840,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PredictResponse} PredictResponse */ - PredictResponse.fromObject = function fromObject(object) { + PredictResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PredictResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PredictResponse(); if (object.results) { if (!Array.isArray(object.results)) @@ -48770,7 +50855,7 @@ for (var i = 0; i < object.results.length; ++i) { if (typeof object.results[i] !== "object") throw TypeError(".google.cloud.retail.v2.PredictResponse.results: object expected"); - message.results[i] = $root.google.cloud.retail.v2.PredictResponse.PredictionResult.fromObject(object.results[i]); + message.results[i] = $root.google.cloud.retail.v2.PredictResponse.PredictionResult.fromObject(object.results[i], long + 1); } } if (object.attributionToken != null) @@ -48873,7 +50958,7 @@ this.metadata = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48951,9 +51036,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictionResult.decode = function decode(reader, length, error) { + PredictionResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PredictResponse.PredictionResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -48977,18 +51066,20 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.metadata, key); message.metadata[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49019,9 +51110,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictionResult.verify = function verify(message) { + PredictionResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -49030,7 +51125,7 @@ return "metadata: object expected"; var key = Object.keys(message.metadata); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.metadata[key[i]]); + var error = $root.google.protobuf.Value.verify(message.metadata[key[i]], long + 1); if (error) return "metadata." + error; } @@ -49046,9 +51141,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PredictResponse.PredictionResult} PredictionResult */ - PredictionResult.fromObject = function fromObject(object) { + PredictionResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PredictResponse.PredictionResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PredictResponse.PredictionResult(); if (object.id != null) message.id = String(object.id); @@ -49057,9 +51156,11 @@ throw TypeError(".google.cloud.retail.v2.PredictResponse.PredictionResult.metadata: object expected"); message.metadata = {}; for (var keys = Object.keys(object.metadata), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.metadata, keys[i]); if (typeof object.metadata[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2.PredictResponse.PredictionResult.metadata: object expected"); - message.metadata[keys[i]] = $root.google.protobuf.Value.fromObject(object.metadata[keys[i]]); + message.metadata[keys[i]] = $root.google.protobuf.Value.fromObject(object.metadata[keys[i]], long + 1); } } return message; @@ -49087,8 +51188,11 @@ var keys2; if (message.metadata && (keys2 = Object.keys(message.metadata)).length) { object.metadata = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.metadata, keys2[j]); object.metadata[keys2[j]] = $root.google.protobuf.Value.toObject(message.metadata[keys2[j]], options); + } } return object; }; @@ -49578,7 +51682,7 @@ function CreateProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49663,9 +51767,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateProductRequest.decode = function decode(reader, length, error) { + CreateProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CreateProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49677,7 +51785,7 @@ break; } case 2: { - message.product = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -49685,7 +51793,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49716,14 +51824,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateProductRequest.verify = function verify(message) { + CreateProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2.Product.verify(message.product); + var error = $root.google.cloud.retail.v2.Product.verify(message.product, long + 1); if (error) return "product." + error; } @@ -49741,16 +51853,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CreateProductRequest} CreateProductRequest */ - CreateProductRequest.fromObject = function fromObject(object) { + CreateProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CreateProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CreateProductRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2.CreateProductRequest.product: object expected"); - message.product = $root.google.cloud.retail.v2.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2.Product.fromObject(object.product, long + 1); } if (object.productId != null) message.productId = String(object.productId); @@ -49833,7 +51949,7 @@ function GetProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49898,9 +52014,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetProductRequest.decode = function decode(reader, length, error) { + GetProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49912,7 +52032,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49943,9 +52063,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetProductRequest.verify = function verify(message) { + GetProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -49960,9 +52084,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetProductRequest} GetProductRequest */ - GetProductRequest.fromObject = function fromObject(object) { + GetProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetProductRequest(); if (object.name != null) message.name = String(object.name); @@ -50040,7 +52168,7 @@ function UpdateProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50125,9 +52253,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateProductRequest.decode = function decode(reader, length, error) { + UpdateProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50135,11 +52267,11 @@ break; switch (tag >>> 3) { case 1: { - message.product = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -50147,7 +52279,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50178,16 +52310,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateProductRequest.verify = function verify(message) { + UpdateProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2.Product.verify(message.product); + var error = $root.google.cloud.retail.v2.Product.verify(message.product, long + 1); if (error) return "product." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -50205,19 +52341,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateProductRequest} UpdateProductRequest */ - UpdateProductRequest.fromObject = function fromObject(object) { + UpdateProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateProductRequest(); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2.UpdateProductRequest.product: object expected"); - message.product = $root.google.cloud.retail.v2.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2.Product.fromObject(object.product, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateProductRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -50300,7 +52440,7 @@ function DeleteProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50365,9 +52505,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteProductRequest.decode = function decode(reader, length, error) { + DeleteProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.DeleteProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50379,7 +52523,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50410,9 +52554,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteProductRequest.verify = function verify(message) { + DeleteProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -50427,9 +52575,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.DeleteProductRequest} DeleteProductRequest */ - DeleteProductRequest.fromObject = function fromObject(object) { + DeleteProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.DeleteProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.DeleteProductRequest(); if (object.name != null) message.name = String(object.name); @@ -50509,7 +52661,7 @@ function ListProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50614,9 +52766,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListProductsRequest.decode = function decode(reader, length, error) { + ListProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50640,11 +52796,11 @@ break; } case 5: { - message.readMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.readMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50675,9 +52831,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListProductsRequest.verify = function verify(message) { + ListProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -50691,7 +52851,7 @@ if (!$util.isString(message.filter)) return "filter: string expected"; if (message.readMask != null && message.hasOwnProperty("readMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.readMask); + var error = $root.google.protobuf.FieldMask.verify(message.readMask, long + 1); if (error) return "readMask." + error; } @@ -50706,9 +52866,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListProductsRequest} ListProductsRequest */ - ListProductsRequest.fromObject = function fromObject(object) { + ListProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -50721,7 +52885,7 @@ if (object.readMask != null) { if (typeof object.readMask !== "object") throw TypeError(".google.cloud.retail.v2.ListProductsRequest.readMask: object expected"); - message.readMask = $root.google.protobuf.FieldMask.fromObject(object.readMask); + message.readMask = $root.google.protobuf.FieldMask.fromObject(object.readMask, long + 1); } return message; }; @@ -50810,7 +52974,7 @@ this.products = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50886,9 +53050,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListProductsResponse.decode = function decode(reader, length, error) { + ListProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50898,7 +53066,7 @@ case 1: { if (!(message.products && message.products.length)) message.products = []; - message.products.push($root.google.cloud.retail.v2.Product.decode(reader, reader.uint32())); + message.products.push($root.google.cloud.retail.v2.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -50906,7 +53074,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50937,14 +53105,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListProductsResponse.verify = function verify(message) { + ListProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.products != null && message.hasOwnProperty("products")) { if (!Array.isArray(message.products)) return "products: array expected"; for (var i = 0; i < message.products.length; ++i) { - var error = $root.google.cloud.retail.v2.Product.verify(message.products[i]); + var error = $root.google.cloud.retail.v2.Product.verify(message.products[i], long + 1); if (error) return "products." + error; } @@ -50963,9 +53135,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListProductsResponse} ListProductsResponse */ - ListProductsResponse.fromObject = function fromObject(object) { + ListProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListProductsResponse(); if (object.products) { if (!Array.isArray(object.products)) @@ -50974,7 +53150,7 @@ for (var i = 0; i < object.products.length; ++i) { if (typeof object.products[i] !== "object") throw TypeError(".google.cloud.retail.v2.ListProductsResponse.products: object expected"); - message.products[i] = $root.google.cloud.retail.v2.Product.fromObject(object.products[i]); + message.products[i] = $root.google.cloud.retail.v2.Product.fromObject(object.products[i], long + 1); } } if (object.nextPageToken != null) @@ -51061,7 +53237,7 @@ function SetInventoryRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51156,9 +53332,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryRequest.decode = function decode(reader, length, error) { + SetInventoryRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SetInventoryRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51166,15 +53346,15 @@ break; switch (tag >>> 3) { case 1: { - message.inventory = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32()); + message.inventory = $root.google.cloud.retail.v2.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.setMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.setMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -51182,7 +53362,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51213,21 +53393,25 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryRequest.verify = function verify(message) { + SetInventoryRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.inventory != null && message.hasOwnProperty("inventory")) { - var error = $root.google.cloud.retail.v2.Product.verify(message.inventory); + var error = $root.google.cloud.retail.v2.Product.verify(message.inventory, long + 1); if (error) return "inventory." + error; } if (message.setMask != null && message.hasOwnProperty("setMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.setMask); + var error = $root.google.protobuf.FieldMask.verify(message.setMask, long + 1); if (error) return "setMask." + error; } if (message.setTime != null && message.hasOwnProperty("setTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.setTime); + var error = $root.google.protobuf.Timestamp.verify(message.setTime, long + 1); if (error) return "setTime." + error; } @@ -51245,24 +53429,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SetInventoryRequest} SetInventoryRequest */ - SetInventoryRequest.fromObject = function fromObject(object) { + SetInventoryRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SetInventoryRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.SetInventoryRequest(); if (object.inventory != null) { if (typeof object.inventory !== "object") throw TypeError(".google.cloud.retail.v2.SetInventoryRequest.inventory: object expected"); - message.inventory = $root.google.cloud.retail.v2.Product.fromObject(object.inventory); + message.inventory = $root.google.cloud.retail.v2.Product.fromObject(object.inventory, long + 1); } if (object.setMask != null) { if (typeof object.setMask !== "object") throw TypeError(".google.cloud.retail.v2.SetInventoryRequest.setMask: object expected"); - message.setMask = $root.google.protobuf.FieldMask.fromObject(object.setMask); + message.setMask = $root.google.protobuf.FieldMask.fromObject(object.setMask, long + 1); } if (object.setTime != null) { if (typeof object.setTime !== "object") throw TypeError(".google.cloud.retail.v2.SetInventoryRequest.setTime: object expected"); - message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime); + message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -51347,7 +53535,7 @@ function SetInventoryMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51402,9 +53590,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryMetadata.decode = function decode(reader, length, error) { + SetInventoryMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SetInventoryMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51412,7 +53604,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51443,9 +53635,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryMetadata.verify = function verify(message) { + SetInventoryMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -51457,9 +53653,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SetInventoryMetadata} SetInventoryMetadata */ - SetInventoryMetadata.fromObject = function fromObject(object) { + SetInventoryMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SetInventoryMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.SetInventoryMetadata(); }; @@ -51524,7 +53724,7 @@ function SetInventoryResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51579,9 +53779,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryResponse.decode = function decode(reader, length, error) { + SetInventoryResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.SetInventoryResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51589,7 +53793,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51620,9 +53824,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryResponse.verify = function verify(message) { + SetInventoryResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -51634,9 +53842,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.SetInventoryResponse} SetInventoryResponse */ - SetInventoryResponse.fromObject = function fromObject(object) { + SetInventoryResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.SetInventoryResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.SetInventoryResponse(); }; @@ -51707,7 +53919,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51813,9 +54025,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesRequest.decode = function decode(reader, length, error) { + AddFulfillmentPlacesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AddFulfillmentPlacesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51837,7 +54053,7 @@ break; } case 4: { - message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -51845,7 +54061,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51876,9 +54092,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesRequest.verify = function verify(message) { + AddFulfillmentPlacesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -51893,7 +54113,7 @@ return "placeIds: string[] expected"; } if (message.addTime != null && message.hasOwnProperty("addTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.addTime); + var error = $root.google.protobuf.Timestamp.verify(message.addTime, long + 1); if (error) return "addTime." + error; } @@ -51911,9 +54131,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AddFulfillmentPlacesRequest} AddFulfillmentPlacesRequest */ - AddFulfillmentPlacesRequest.fromObject = function fromObject(object) { + AddFulfillmentPlacesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AddFulfillmentPlacesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.AddFulfillmentPlacesRequest(); if (object.product != null) message.product = String(object.product); @@ -51929,7 +54153,7 @@ if (object.addTime != null) { if (typeof object.addTime !== "object") throw TypeError(".google.cloud.retail.v2.AddFulfillmentPlacesRequest.addTime: object expected"); - message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime); + message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -52021,7 +54245,7 @@ function AddFulfillmentPlacesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52076,9 +54300,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesMetadata.decode = function decode(reader, length, error) { + AddFulfillmentPlacesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AddFulfillmentPlacesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52086,7 +54314,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52117,9 +54345,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesMetadata.verify = function verify(message) { + AddFulfillmentPlacesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -52131,9 +54363,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AddFulfillmentPlacesMetadata} AddFulfillmentPlacesMetadata */ - AddFulfillmentPlacesMetadata.fromObject = function fromObject(object) { + AddFulfillmentPlacesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AddFulfillmentPlacesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.AddFulfillmentPlacesMetadata(); }; @@ -52198,7 +54434,7 @@ function AddFulfillmentPlacesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52253,9 +54489,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesResponse.decode = function decode(reader, length, error) { + AddFulfillmentPlacesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AddFulfillmentPlacesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52263,7 +54503,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52294,9 +54534,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesResponse.verify = function verify(message) { + AddFulfillmentPlacesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -52308,9 +54552,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AddFulfillmentPlacesResponse} AddFulfillmentPlacesResponse */ - AddFulfillmentPlacesResponse.fromObject = function fromObject(object) { + AddFulfillmentPlacesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AddFulfillmentPlacesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.AddFulfillmentPlacesResponse(); }; @@ -52381,7 +54629,7 @@ this.localInventories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52487,9 +54735,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesRequest.decode = function decode(reader, length, error) { + AddLocalInventoriesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AddLocalInventoriesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52503,15 +54755,15 @@ case 2: { if (!(message.localInventories && message.localInventories.length)) message.localInventories = []; - message.localInventories.push($root.google.cloud.retail.v2.LocalInventory.decode(reader, reader.uint32())); + message.localInventories.push($root.google.cloud.retail.v2.LocalInventory.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.addMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.addMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -52519,7 +54771,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52550,9 +54802,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesRequest.verify = function verify(message) { + AddLocalInventoriesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -52560,18 +54816,18 @@ if (!Array.isArray(message.localInventories)) return "localInventories: array expected"; for (var i = 0; i < message.localInventories.length; ++i) { - var error = $root.google.cloud.retail.v2.LocalInventory.verify(message.localInventories[i]); + var error = $root.google.cloud.retail.v2.LocalInventory.verify(message.localInventories[i], long + 1); if (error) return "localInventories." + error; } } if (message.addMask != null && message.hasOwnProperty("addMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.addMask); + var error = $root.google.protobuf.FieldMask.verify(message.addMask, long + 1); if (error) return "addMask." + error; } if (message.addTime != null && message.hasOwnProperty("addTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.addTime); + var error = $root.google.protobuf.Timestamp.verify(message.addTime, long + 1); if (error) return "addTime." + error; } @@ -52589,9 +54845,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AddLocalInventoriesRequest} AddLocalInventoriesRequest */ - AddLocalInventoriesRequest.fromObject = function fromObject(object) { + AddLocalInventoriesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AddLocalInventoriesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.AddLocalInventoriesRequest(); if (object.product != null) message.product = String(object.product); @@ -52602,18 +54862,18 @@ for (var i = 0; i < object.localInventories.length; ++i) { if (typeof object.localInventories[i] !== "object") throw TypeError(".google.cloud.retail.v2.AddLocalInventoriesRequest.localInventories: object expected"); - message.localInventories[i] = $root.google.cloud.retail.v2.LocalInventory.fromObject(object.localInventories[i]); + message.localInventories[i] = $root.google.cloud.retail.v2.LocalInventory.fromObject(object.localInventories[i], long + 1); } } if (object.addMask != null) { if (typeof object.addMask !== "object") throw TypeError(".google.cloud.retail.v2.AddLocalInventoriesRequest.addMask: object expected"); - message.addMask = $root.google.protobuf.FieldMask.fromObject(object.addMask); + message.addMask = $root.google.protobuf.FieldMask.fromObject(object.addMask, long + 1); } if (object.addTime != null) { if (typeof object.addTime !== "object") throw TypeError(".google.cloud.retail.v2.AddLocalInventoriesRequest.addTime: object expected"); - message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime); + message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -52705,7 +54965,7 @@ function AddLocalInventoriesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52760,9 +55020,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesMetadata.decode = function decode(reader, length, error) { + AddLocalInventoriesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AddLocalInventoriesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52770,7 +55034,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52801,9 +55065,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesMetadata.verify = function verify(message) { + AddLocalInventoriesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -52815,9 +55083,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AddLocalInventoriesMetadata} AddLocalInventoriesMetadata */ - AddLocalInventoriesMetadata.fromObject = function fromObject(object) { + AddLocalInventoriesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AddLocalInventoriesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.AddLocalInventoriesMetadata(); }; @@ -52882,7 +55154,7 @@ function AddLocalInventoriesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52937,9 +55209,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesResponse.decode = function decode(reader, length, error) { + AddLocalInventoriesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AddLocalInventoriesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52947,7 +55223,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52978,9 +55254,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesResponse.verify = function verify(message) { + AddLocalInventoriesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -52992,9 +55272,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AddLocalInventoriesResponse} AddLocalInventoriesResponse */ - AddLocalInventoriesResponse.fromObject = function fromObject(object) { + AddLocalInventoriesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AddLocalInventoriesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.AddLocalInventoriesResponse(); }; @@ -53064,7 +55348,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53160,9 +55444,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesRequest.decode = function decode(reader, length, error) { + RemoveLocalInventoriesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RemoveLocalInventoriesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53180,7 +55468,7 @@ break; } case 5: { - message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -53188,7 +55476,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53219,9 +55507,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesRequest.verify = function verify(message) { + RemoveLocalInventoriesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -53233,7 +55525,7 @@ return "placeIds: string[] expected"; } if (message.removeTime != null && message.hasOwnProperty("removeTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.removeTime); + var error = $root.google.protobuf.Timestamp.verify(message.removeTime, long + 1); if (error) return "removeTime." + error; } @@ -53251,9 +55543,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RemoveLocalInventoriesRequest} RemoveLocalInventoriesRequest */ - RemoveLocalInventoriesRequest.fromObject = function fromObject(object) { + RemoveLocalInventoriesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RemoveLocalInventoriesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.RemoveLocalInventoriesRequest(); if (object.product != null) message.product = String(object.product); @@ -53267,7 +55563,7 @@ if (object.removeTime != null) { if (typeof object.removeTime !== "object") throw TypeError(".google.cloud.retail.v2.RemoveLocalInventoriesRequest.removeTime: object expected"); - message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime); + message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -53356,7 +55652,7 @@ function RemoveLocalInventoriesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53411,9 +55707,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesMetadata.decode = function decode(reader, length, error) { + RemoveLocalInventoriesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RemoveLocalInventoriesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53421,7 +55721,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53452,9 +55752,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesMetadata.verify = function verify(message) { + RemoveLocalInventoriesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -53466,9 +55770,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RemoveLocalInventoriesMetadata} RemoveLocalInventoriesMetadata */ - RemoveLocalInventoriesMetadata.fromObject = function fromObject(object) { + RemoveLocalInventoriesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RemoveLocalInventoriesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.RemoveLocalInventoriesMetadata(); }; @@ -53533,7 +55841,7 @@ function RemoveLocalInventoriesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53588,9 +55896,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesResponse.decode = function decode(reader, length, error) { + RemoveLocalInventoriesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RemoveLocalInventoriesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53598,7 +55910,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53629,9 +55941,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesResponse.verify = function verify(message) { + RemoveLocalInventoriesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -53643,9 +55959,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RemoveLocalInventoriesResponse} RemoveLocalInventoriesResponse */ - RemoveLocalInventoriesResponse.fromObject = function fromObject(object) { + RemoveLocalInventoriesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RemoveLocalInventoriesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.RemoveLocalInventoriesResponse(); }; @@ -53716,7 +56036,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53822,9 +56142,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesRequest.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RemoveFulfillmentPlacesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53846,7 +56170,7 @@ break; } case 4: { - message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -53854,7 +56178,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53885,9 +56209,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesRequest.verify = function verify(message) { + RemoveFulfillmentPlacesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -53902,7 +56230,7 @@ return "placeIds: string[] expected"; } if (message.removeTime != null && message.hasOwnProperty("removeTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.removeTime); + var error = $root.google.protobuf.Timestamp.verify(message.removeTime, long + 1); if (error) return "removeTime." + error; } @@ -53920,9 +56248,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RemoveFulfillmentPlacesRequest} RemoveFulfillmentPlacesRequest */ - RemoveFulfillmentPlacesRequest.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RemoveFulfillmentPlacesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.RemoveFulfillmentPlacesRequest(); if (object.product != null) message.product = String(object.product); @@ -53938,7 +56270,7 @@ if (object.removeTime != null) { if (typeof object.removeTime !== "object") throw TypeError(".google.cloud.retail.v2.RemoveFulfillmentPlacesRequest.removeTime: object expected"); - message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime); + message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -54030,7 +56362,7 @@ function RemoveFulfillmentPlacesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54085,9 +56417,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesMetadata.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RemoveFulfillmentPlacesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54095,7 +56431,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54126,9 +56462,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesMetadata.verify = function verify(message) { + RemoveFulfillmentPlacesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -54140,9 +56480,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RemoveFulfillmentPlacesMetadata} RemoveFulfillmentPlacesMetadata */ - RemoveFulfillmentPlacesMetadata.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RemoveFulfillmentPlacesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.RemoveFulfillmentPlacesMetadata(); }; @@ -54207,7 +56551,7 @@ function RemoveFulfillmentPlacesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54262,9 +56606,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesResponse.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RemoveFulfillmentPlacesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54272,7 +56620,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54303,9 +56651,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesResponse.verify = function verify(message) { + RemoveFulfillmentPlacesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -54317,9 +56669,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RemoveFulfillmentPlacesResponse} RemoveFulfillmentPlacesResponse */ - RemoveFulfillmentPlacesResponse.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RemoveFulfillmentPlacesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.RemoveFulfillmentPlacesResponse(); }; @@ -54384,7 +56740,7 @@ function PurgeMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54439,9 +56795,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeMetadata.decode = function decode(reader, length, error) { + PurgeMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PurgeMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54449,7 +56809,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54480,9 +56840,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeMetadata.verify = function verify(message) { + PurgeMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -54494,9 +56858,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PurgeMetadata} PurgeMetadata */ - PurgeMetadata.fromObject = function fromObject(object) { + PurgeMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PurgeMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.PurgeMetadata(); }; @@ -54565,7 +56933,7 @@ function PurgeProductsMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54660,9 +57028,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsMetadata.decode = function decode(reader, length, error) { + PurgeProductsMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PurgeProductsMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54670,11 +57042,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -54686,7 +57058,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54717,16 +57089,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsMetadata.verify = function verify(message) { + PurgeProductsMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -54747,19 +57123,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PurgeProductsMetadata} PurgeProductsMetadata */ - PurgeProductsMetadata.fromObject = function fromObject(object) { + PurgeProductsMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PurgeProductsMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PurgeProductsMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2.PurgeProductsMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2.PurgeProductsMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.successCount != null) if ($util.Long) @@ -54877,7 +57257,7 @@ function PurgeProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54962,9 +57342,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsRequest.decode = function decode(reader, length, error) { + PurgeProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PurgeProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54984,7 +57368,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55015,9 +57399,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsRequest.verify = function verify(message) { + PurgeProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -55038,9 +57426,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PurgeProductsRequest} PurgeProductsRequest */ - PurgeProductsRequest.fromObject = function fromObject(object) { + PurgeProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PurgeProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PurgeProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -55129,7 +57521,7 @@ this.purgeSample = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55205,9 +57597,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsResponse.decode = function decode(reader, length, error) { + PurgeProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PurgeProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55225,7 +57621,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55256,9 +57652,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsResponse.verify = function verify(message) { + PurgeProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.purgeCount != null && message.hasOwnProperty("purgeCount")) if (!$util.isInteger(message.purgeCount) && !(message.purgeCount && $util.isInteger(message.purgeCount.low) && $util.isInteger(message.purgeCount.high))) return "purgeCount: integer|Long expected"; @@ -55280,9 +57680,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PurgeProductsResponse} PurgeProductsResponse */ - PurgeProductsResponse.fromObject = function fromObject(object) { + PurgeProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PurgeProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PurgeProductsResponse(); if (object.purgeCount != null) if ($util.Long) @@ -55388,7 +57792,7 @@ function PurgeUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55473,9 +57877,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeUserEventsRequest.decode = function decode(reader, length, error) { + PurgeUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PurgeUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55495,7 +57903,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55526,9 +57934,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeUserEventsRequest.verify = function verify(message) { + PurgeUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -55549,9 +57961,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PurgeUserEventsRequest} PurgeUserEventsRequest */ - PurgeUserEventsRequest.fromObject = function fromObject(object) { + PurgeUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PurgeUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PurgeUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -55638,7 +58054,7 @@ function PurgeUserEventsResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55703,9 +58119,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeUserEventsResponse.decode = function decode(reader, length, error) { + PurgeUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.PurgeUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55717,7 +58137,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55748,9 +58168,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeUserEventsResponse.verify = function verify(message) { + PurgeUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.purgedEventsCount != null && message.hasOwnProperty("purgedEventsCount")) if (!$util.isInteger(message.purgedEventsCount) && !(message.purgedEventsCount && $util.isInteger(message.purgedEventsCount.low) && $util.isInteger(message.purgedEventsCount.high))) return "purgedEventsCount: integer|Long expected"; @@ -55765,9 +58189,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.PurgeUserEventsResponse} PurgeUserEventsResponse */ - PurgeUserEventsResponse.fromObject = function fromObject(object) { + PurgeUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.PurgeUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.PurgeUserEventsResponse(); if (object.purgedEventsCount != null) if ($util.Long) @@ -55886,7 +58314,7 @@ this.solutionTypes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56154,9 +58582,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfig.decode = function decode(reader, length, error) { + ServingConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ServingConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56186,7 +58618,7 @@ break; } case 6: { - message.dynamicFacetSpec = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32()); + message.dynamicFacetSpec = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -56254,7 +58686,7 @@ break; } case 21: { - message.personalizationSpec = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32()); + message.personalizationSpec = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -56269,7 +58701,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56300,9 +58732,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfig.verify = function verify(message) { + ServingConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -56323,7 +58759,7 @@ return "facetControlIds: string[] expected"; } if (message.dynamicFacetSpec != null && message.hasOwnProperty("dynamicFacetSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec, long + 1); if (error) return "dynamicFacetSpec." + error; } @@ -56402,7 +58838,7 @@ if (typeof message.ignoreRecsDenylist !== "boolean") return "ignoreRecsDenylist: boolean expected"; if (message.personalizationSpec != null && message.hasOwnProperty("personalizationSpec")) { - var error = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec); + var error = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec, long + 1); if (error) return "personalizationSpec." + error; } @@ -56430,9 +58866,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ServingConfig} ServingConfig */ - ServingConfig.fromObject = function fromObject(object) { + ServingConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ServingConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ServingConfig(); if (object.name != null) message.name = String(object.name); @@ -56452,7 +58892,7 @@ if (object.dynamicFacetSpec != null) { if (typeof object.dynamicFacetSpec !== "object") throw TypeError(".google.cloud.retail.v2.ServingConfig.dynamicFacetSpec: object expected"); - message.dynamicFacetSpec = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec); + message.dynamicFacetSpec = $root.google.cloud.retail.v2.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec, long + 1); } if (object.boostControlIds) { if (!Array.isArray(object.boostControlIds)) @@ -56539,7 +58979,7 @@ if (object.personalizationSpec != null) { if (typeof object.personalizationSpec !== "object") throw TypeError(".google.cloud.retail.v2.ServingConfig.personalizationSpec: object expected"); - message.personalizationSpec = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec); + message.personalizationSpec = $root.google.cloud.retail.v2.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec, long + 1); } if (object.solutionTypes) { if (!Array.isArray(object.solutionTypes)) @@ -57012,7 +59452,7 @@ function CreateServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57097,9 +59537,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateServingConfigRequest.decode = function decode(reader, length, error) { + CreateServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CreateServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57111,7 +59555,7 @@ break; } case 2: { - message.servingConfig = $root.google.cloud.retail.v2.ServingConfig.decode(reader, reader.uint32()); + message.servingConfig = $root.google.cloud.retail.v2.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -57119,7 +59563,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57150,14 +59594,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateServingConfigRequest.verify = function verify(message) { + CreateServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) { - var error = $root.google.cloud.retail.v2.ServingConfig.verify(message.servingConfig); + var error = $root.google.cloud.retail.v2.ServingConfig.verify(message.servingConfig, long + 1); if (error) return "servingConfig." + error; } @@ -57175,16 +59623,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CreateServingConfigRequest} CreateServingConfigRequest */ - CreateServingConfigRequest.fromObject = function fromObject(object) { + CreateServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CreateServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CreateServingConfigRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.servingConfig != null) { if (typeof object.servingConfig !== "object") throw TypeError(".google.cloud.retail.v2.CreateServingConfigRequest.servingConfig: object expected"); - message.servingConfig = $root.google.cloud.retail.v2.ServingConfig.fromObject(object.servingConfig); + message.servingConfig = $root.google.cloud.retail.v2.ServingConfig.fromObject(object.servingConfig, long + 1); } if (object.servingConfigId != null) message.servingConfigId = String(object.servingConfigId); @@ -57268,7 +59720,7 @@ function UpdateServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57343,9 +59795,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateServingConfigRequest.decode = function decode(reader, length, error) { + UpdateServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.UpdateServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57353,15 +59809,15 @@ break; switch (tag >>> 3) { case 1: { - message.servingConfig = $root.google.cloud.retail.v2.ServingConfig.decode(reader, reader.uint32()); + message.servingConfig = $root.google.cloud.retail.v2.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57392,16 +59848,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateServingConfigRequest.verify = function verify(message) { + UpdateServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) { - var error = $root.google.cloud.retail.v2.ServingConfig.verify(message.servingConfig); + var error = $root.google.cloud.retail.v2.ServingConfig.verify(message.servingConfig, long + 1); if (error) return "servingConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -57416,19 +59876,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.UpdateServingConfigRequest} UpdateServingConfigRequest */ - UpdateServingConfigRequest.fromObject = function fromObject(object) { + UpdateServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.UpdateServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.UpdateServingConfigRequest(); if (object.servingConfig != null) { if (typeof object.servingConfig !== "object") throw TypeError(".google.cloud.retail.v2.UpdateServingConfigRequest.servingConfig: object expected"); - message.servingConfig = $root.google.cloud.retail.v2.ServingConfig.fromObject(object.servingConfig); + message.servingConfig = $root.google.cloud.retail.v2.ServingConfig.fromObject(object.servingConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2.UpdateServingConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -57506,7 +59970,7 @@ function DeleteServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57571,9 +60035,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteServingConfigRequest.decode = function decode(reader, length, error) { + DeleteServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.DeleteServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57585,7 +60053,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57616,9 +60084,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteServingConfigRequest.verify = function verify(message) { + DeleteServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -57633,9 +60105,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.DeleteServingConfigRequest} DeleteServingConfigRequest */ - DeleteServingConfigRequest.fromObject = function fromObject(object) { + DeleteServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.DeleteServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.DeleteServingConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -57711,7 +60187,7 @@ function GetServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57776,9 +60252,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetServingConfigRequest.decode = function decode(reader, length, error) { + GetServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.GetServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57790,7 +60270,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57821,9 +60301,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetServingConfigRequest.verify = function verify(message) { + GetServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -57838,9 +60322,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.GetServingConfigRequest} GetServingConfigRequest */ - GetServingConfigRequest.fromObject = function fromObject(object) { + GetServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.GetServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.GetServingConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -57918,7 +60406,7 @@ function ListServingConfigsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58003,9 +60491,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListServingConfigsRequest.decode = function decode(reader, length, error) { + ListServingConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListServingConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58025,7 +60517,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58056,9 +60548,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListServingConfigsRequest.verify = function verify(message) { + ListServingConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -58079,9 +60575,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListServingConfigsRequest} ListServingConfigsRequest */ - ListServingConfigsRequest.fromObject = function fromObject(object) { + ListServingConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListServingConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListServingConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -58170,7 +60670,7 @@ this.servingConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58246,9 +60746,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListServingConfigsResponse.decode = function decode(reader, length, error) { + ListServingConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.ListServingConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58258,7 +60762,7 @@ case 1: { if (!(message.servingConfigs && message.servingConfigs.length)) message.servingConfigs = []; - message.servingConfigs.push($root.google.cloud.retail.v2.ServingConfig.decode(reader, reader.uint32())); + message.servingConfigs.push($root.google.cloud.retail.v2.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -58266,7 +60770,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58297,14 +60801,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListServingConfigsResponse.verify = function verify(message) { + ListServingConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfigs != null && message.hasOwnProperty("servingConfigs")) { if (!Array.isArray(message.servingConfigs)) return "servingConfigs: array expected"; for (var i = 0; i < message.servingConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2.ServingConfig.verify(message.servingConfigs[i]); + var error = $root.google.cloud.retail.v2.ServingConfig.verify(message.servingConfigs[i], long + 1); if (error) return "servingConfigs." + error; } @@ -58323,9 +60831,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.ListServingConfigsResponse} ListServingConfigsResponse */ - ListServingConfigsResponse.fromObject = function fromObject(object) { + ListServingConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.ListServingConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.ListServingConfigsResponse(); if (object.servingConfigs) { if (!Array.isArray(object.servingConfigs)) @@ -58334,7 +60846,7 @@ for (var i = 0; i < object.servingConfigs.length; ++i) { if (typeof object.servingConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2.ListServingConfigsResponse.servingConfigs: object expected"); - message.servingConfigs[i] = $root.google.cloud.retail.v2.ServingConfig.fromObject(object.servingConfigs[i]); + message.servingConfigs[i] = $root.google.cloud.retail.v2.ServingConfig.fromObject(object.servingConfigs[i], long + 1); } } if (object.nextPageToken != null) @@ -58419,7 +60931,7 @@ function AddControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58494,9 +61006,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddControlRequest.decode = function decode(reader, length, error) { + AddControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.AddControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58512,7 +61028,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58543,9 +61059,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddControlRequest.verify = function verify(message) { + AddControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) if (!$util.isString(message.servingConfig)) return "servingConfig: string expected"; @@ -58563,9 +61083,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.AddControlRequest} AddControlRequest */ - AddControlRequest.fromObject = function fromObject(object) { + AddControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.AddControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.AddControlRequest(); if (object.servingConfig != null) message.servingConfig = String(object.servingConfig); @@ -58648,7 +61172,7 @@ function RemoveControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58723,9 +61247,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveControlRequest.decode = function decode(reader, length, error) { + RemoveControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RemoveControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58741,7 +61269,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58772,9 +61300,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveControlRequest.verify = function verify(message) { + RemoveControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) if (!$util.isString(message.servingConfig)) return "servingConfig: string expected"; @@ -58792,9 +61324,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RemoveControlRequest} RemoveControlRequest */ - RemoveControlRequest.fromObject = function fromObject(object) { + RemoveControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RemoveControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.RemoveControlRequest(); if (object.servingConfig != null) message.servingConfig = String(object.servingConfig); @@ -59078,7 +61614,7 @@ function WriteUserEventRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59163,9 +61699,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WriteUserEventRequest.decode = function decode(reader, length, error) { + WriteUserEventRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.WriteUserEventRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59177,7 +61717,7 @@ break; } case 2: { - message.userEvent = $root.google.cloud.retail.v2.UserEvent.decode(reader, reader.uint32()); + message.userEvent = $root.google.cloud.retail.v2.UserEvent.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -59185,7 +61725,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59216,14 +61756,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WriteUserEventRequest.verify = function verify(message) { + WriteUserEventRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.userEvent != null && message.hasOwnProperty("userEvent")) { - var error = $root.google.cloud.retail.v2.UserEvent.verify(message.userEvent); + var error = $root.google.cloud.retail.v2.UserEvent.verify(message.userEvent, long + 1); if (error) return "userEvent." + error; } @@ -59241,16 +61785,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.WriteUserEventRequest} WriteUserEventRequest */ - WriteUserEventRequest.fromObject = function fromObject(object) { + WriteUserEventRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.WriteUserEventRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.WriteUserEventRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.userEvent != null) { if (typeof object.userEvent !== "object") throw TypeError(".google.cloud.retail.v2.WriteUserEventRequest.userEvent: object expected"); - message.userEvent = $root.google.cloud.retail.v2.UserEvent.fromObject(object.userEvent); + message.userEvent = $root.google.cloud.retail.v2.UserEvent.fromObject(object.userEvent, long + 1); } if (object.writeAsync != null) message.writeAsync = Boolean(object.writeAsync); @@ -59338,7 +61886,7 @@ function CollectUserEventRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59467,9 +62015,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CollectUserEventRequest.decode = function decode(reader, length, error) { + CollectUserEventRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.CollectUserEventRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59501,7 +62053,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59532,9 +62084,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CollectUserEventRequest.verify = function verify(message) { + CollectUserEventRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.prebuiltRule != null && message.hasOwnProperty("prebuiltRule")) { properties.conversionRule = 1; @@ -59567,9 +62123,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.CollectUserEventRequest} CollectUserEventRequest */ - CollectUserEventRequest.fromObject = function fromObject(object) { + CollectUserEventRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.CollectUserEventRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.CollectUserEventRequest(); if (object.prebuiltRule != null) message.prebuiltRule = String(object.prebuiltRule); @@ -59688,7 +62248,7 @@ function RejoinUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59763,9 +62323,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsRequest.decode = function decode(reader, length, error) { + RejoinUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RejoinUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59781,7 +62345,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59812,9 +62376,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsRequest.verify = function verify(message) { + RejoinUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -59838,9 +62406,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RejoinUserEventsRequest} RejoinUserEventsRequest */ - RejoinUserEventsRequest.fromObject = function fromObject(object) { + RejoinUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RejoinUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.RejoinUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -59956,7 +62528,7 @@ function RejoinUserEventsResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60021,9 +62593,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsResponse.decode = function decode(reader, length, error) { + RejoinUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RejoinUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60035,7 +62611,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60066,9 +62642,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsResponse.verify = function verify(message) { + RejoinUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rejoinedUserEventsCount != null && message.hasOwnProperty("rejoinedUserEventsCount")) if (!$util.isInteger(message.rejoinedUserEventsCount) && !(message.rejoinedUserEventsCount && $util.isInteger(message.rejoinedUserEventsCount.low) && $util.isInteger(message.rejoinedUserEventsCount.high))) return "rejoinedUserEventsCount: integer|Long expected"; @@ -60083,9 +62663,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RejoinUserEventsResponse} RejoinUserEventsResponse */ - RejoinUserEventsResponse.fromObject = function fromObject(object) { + RejoinUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RejoinUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2.RejoinUserEventsResponse(); if (object.rejoinedUserEventsCount != null) if ($util.Long) @@ -60174,7 +62758,7 @@ function RejoinUserEventsMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60229,9 +62813,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsMetadata.decode = function decode(reader, length, error) { + RejoinUserEventsMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2.RejoinUserEventsMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60239,7 +62827,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60270,9 +62858,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsMetadata.verify = function verify(message) { + RejoinUserEventsMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -60284,9 +62876,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2.RejoinUserEventsMetadata} RejoinUserEventsMetadata */ - RejoinUserEventsMetadata.fromObject = function fromObject(object) { + RejoinUserEventsMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2.RejoinUserEventsMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2.RejoinUserEventsMetadata(); }; @@ -60433,7 +63029,7 @@ function OutputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60522,9 +63118,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OutputConfig.decode = function decode(reader, length, error) { + OutputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.OutputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60532,15 +63132,15 @@ break; switch (tag >>> 3) { case 1: { - message.gcsDestination = $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination.decode(reader, reader.uint32()); + message.gcsDestination = $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.bigqueryDestination = $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination.decode(reader, reader.uint32()); + message.bigqueryDestination = $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60571,14 +63171,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OutputConfig.verify = function verify(message) { + OutputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsDestination != null && message.hasOwnProperty("gcsDestination")) { properties.destination = 1; { - var error = $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination.verify(message.gcsDestination); + var error = $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination.verify(message.gcsDestination, long + 1); if (error) return "gcsDestination." + error; } @@ -60588,7 +63192,7 @@ return "destination: multiple values"; properties.destination = 1; { - var error = $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination.verify(message.bigqueryDestination); + var error = $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination.verify(message.bigqueryDestination, long + 1); if (error) return "bigqueryDestination." + error; } @@ -60604,19 +63208,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.OutputConfig} OutputConfig */ - OutputConfig.fromObject = function fromObject(object) { + OutputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.OutputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.OutputConfig(); if (object.gcsDestination != null) { if (typeof object.gcsDestination !== "object") throw TypeError(".google.cloud.retail.v2alpha.OutputConfig.gcsDestination: object expected"); - message.gcsDestination = $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination.fromObject(object.gcsDestination); + message.gcsDestination = $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination.fromObject(object.gcsDestination, long + 1); } if (object.bigqueryDestination != null) { if (typeof object.bigqueryDestination !== "object") throw TypeError(".google.cloud.retail.v2alpha.OutputConfig.bigqueryDestination: object expected"); - message.bigqueryDestination = $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination.fromObject(object.bigqueryDestination); + message.bigqueryDestination = $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination.fromObject(object.bigqueryDestination, long + 1); } return message; }; @@ -60693,7 +63301,7 @@ function GcsDestination(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60758,9 +63366,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsDestination.decode = function decode(reader, length, error) { + GcsDestination.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60772,7 +63384,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60803,9 +63415,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsDestination.verify = function verify(message) { + GcsDestination.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.outputUriPrefix != null && message.hasOwnProperty("outputUriPrefix")) if (!$util.isString(message.outputUriPrefix)) return "outputUriPrefix: string expected"; @@ -60820,9 +63436,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.OutputConfig.GcsDestination} GcsDestination */ - GcsDestination.fromObject = function fromObject(object) { + GcsDestination.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.OutputConfig.GcsDestination(); if (object.outputUriPrefix != null) message.outputUriPrefix = String(object.outputUriPrefix); @@ -60900,7 +63520,7 @@ function BigQueryDestination(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60985,9 +63605,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQueryDestination.decode = function decode(reader, length, error) { + BigQueryDestination.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61007,7 +63631,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61038,9 +63662,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQueryDestination.verify = function verify(message) { + BigQueryDestination.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.datasetId != null && message.hasOwnProperty("datasetId")) if (!$util.isString(message.datasetId)) return "datasetId: string expected"; @@ -61061,9 +63689,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination} BigQueryDestination */ - BigQueryDestination.fromObject = function fromObject(object) { + BigQueryDestination.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.OutputConfig.BigQueryDestination(); if (object.datasetId != null) message.datasetId = String(object.datasetId); @@ -61153,7 +63785,7 @@ function ExportErrorsConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61232,9 +63864,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportErrorsConfig.decode = function decode(reader, length, error) { + ExportErrorsConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExportErrorsConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61246,7 +63882,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61277,9 +63913,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportErrorsConfig.verify = function verify(message) { + ExportErrorsConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsPrefix != null && message.hasOwnProperty("gcsPrefix")) { properties.destination = 1; @@ -61297,9 +63937,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExportErrorsConfig} ExportErrorsConfig */ - ExportErrorsConfig.fromObject = function fromObject(object) { + ExportErrorsConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExportErrorsConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExportErrorsConfig(); if (object.gcsPrefix != null) message.gcsPrefix = String(object.gcsPrefix); @@ -61378,7 +64022,7 @@ function ExportProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61463,9 +64107,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportProductsRequest.decode = function decode(reader, length, error) { + ExportProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExportProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61477,7 +64125,7 @@ break; } case 2: { - message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -61485,7 +64133,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61516,14 +64164,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportProductsRequest.verify = function verify(message) { + ExportProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.retail.v2alpha.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.retail.v2alpha.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -61541,16 +64193,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExportProductsRequest} ExportProductsRequest */ - ExportProductsRequest.fromObject = function fromObject(object) { + ExportProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExportProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExportProductsRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportProductsRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.fromObject(object.outputConfig, long + 1); } if (object.filter != null) message.filter = String(object.filter); @@ -61635,7 +64291,7 @@ function ExportUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61720,9 +64376,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportUserEventsRequest.decode = function decode(reader, length, error) { + ExportUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExportUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61734,7 +64394,7 @@ break; } case 2: { - message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -61742,7 +64402,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61773,14 +64433,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportUserEventsRequest.verify = function verify(message) { + ExportUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.retail.v2alpha.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.retail.v2alpha.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -61798,16 +64462,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExportUserEventsRequest} ExportUserEventsRequest */ - ExportUserEventsRequest.fromObject = function fromObject(object) { + ExportUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExportUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExportUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportUserEventsRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.fromObject(object.outputConfig, long + 1); } if (object.filter != null) message.filter = String(object.filter); @@ -61892,7 +64560,7 @@ function ExportAnalyticsMetricsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61977,9 +64645,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportAnalyticsMetricsRequest.decode = function decode(reader, length, error) { + ExportAnalyticsMetricsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExportAnalyticsMetricsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61991,7 +64663,7 @@ break; } case 2: { - message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -61999,7 +64671,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62030,14 +64702,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportAnalyticsMetricsRequest.verify = function verify(message) { + ExportAnalyticsMetricsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.retail.v2alpha.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.retail.v2alpha.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -62055,16 +64731,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExportAnalyticsMetricsRequest} ExportAnalyticsMetricsRequest */ - ExportAnalyticsMetricsRequest.fromObject = function fromObject(object) { + ExportAnalyticsMetricsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExportAnalyticsMetricsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExportAnalyticsMetricsRequest(); if (object.catalog != null) message.catalog = String(object.catalog); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportAnalyticsMetricsRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.retail.v2alpha.OutputConfig.fromObject(object.outputConfig, long + 1); } if (object.filter != null) message.filter = String(object.filter); @@ -62148,7 +64828,7 @@ function ExportMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -62223,9 +64903,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportMetadata.decode = function decode(reader, length, error) { + ExportMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExportMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62233,15 +64917,15 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62272,16 +64956,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportMetadata.verify = function verify(message) { + ExportMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -62296,19 +64984,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExportMetadata} ExportMetadata */ - ExportMetadata.fromObject = function fromObject(object) { + ExportMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExportMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExportMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } return message; }; @@ -62389,7 +65081,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -62475,9 +65167,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportProductsResponse.decode = function decode(reader, length, error) { + ExportProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExportProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62487,19 +65183,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.decode(reader, reader.uint32()); + message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62530,25 +65226,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportProductsResponse.verify = function verify(message) { + ExportProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.outputResult != null && message.hasOwnProperty("outputResult")) { - var error = $root.google.cloud.retail.v2alpha.OutputResult.verify(message.outputResult); + var error = $root.google.cloud.retail.v2alpha.OutputResult.verify(message.outputResult, long + 1); if (error) return "outputResult." + error; } @@ -62563,9 +65263,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExportProductsResponse} ExportProductsResponse */ - ExportProductsResponse.fromObject = function fromObject(object) { + ExportProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExportProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExportProductsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -62574,18 +65278,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportProductsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportProductsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.outputResult != null) { if (typeof object.outputResult !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportProductsResponse.outputResult: object expected"); - message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.fromObject(object.outputResult); + message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.fromObject(object.outputResult, long + 1); } return message; }; @@ -62673,7 +65377,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -62759,9 +65463,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportUserEventsResponse.decode = function decode(reader, length, error) { + ExportUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExportUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62771,19 +65479,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.decode(reader, reader.uint32()); + message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62814,25 +65522,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportUserEventsResponse.verify = function verify(message) { + ExportUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.outputResult != null && message.hasOwnProperty("outputResult")) { - var error = $root.google.cloud.retail.v2alpha.OutputResult.verify(message.outputResult); + var error = $root.google.cloud.retail.v2alpha.OutputResult.verify(message.outputResult, long + 1); if (error) return "outputResult." + error; } @@ -62847,9 +65559,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExportUserEventsResponse} ExportUserEventsResponse */ - ExportUserEventsResponse.fromObject = function fromObject(object) { + ExportUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExportUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExportUserEventsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -62858,18 +65574,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportUserEventsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportUserEventsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.outputResult != null) { if (typeof object.outputResult !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportUserEventsResponse.outputResult: object expected"); - message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.fromObject(object.outputResult); + message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.fromObject(object.outputResult, long + 1); } return message; }; @@ -62957,7 +65673,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -63043,9 +65759,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportAnalyticsMetricsResponse.decode = function decode(reader, length, error) { + ExportAnalyticsMetricsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExportAnalyticsMetricsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -63055,19 +65775,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.decode(reader, reader.uint32()); + message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -63098,25 +65818,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportAnalyticsMetricsResponse.verify = function verify(message) { + ExportAnalyticsMetricsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.outputResult != null && message.hasOwnProperty("outputResult")) { - var error = $root.google.cloud.retail.v2alpha.OutputResult.verify(message.outputResult); + var error = $root.google.cloud.retail.v2alpha.OutputResult.verify(message.outputResult, long + 1); if (error) return "outputResult." + error; } @@ -63131,9 +65855,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExportAnalyticsMetricsResponse} ExportAnalyticsMetricsResponse */ - ExportAnalyticsMetricsResponse.fromObject = function fromObject(object) { + ExportAnalyticsMetricsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExportAnalyticsMetricsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExportAnalyticsMetricsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -63142,18 +65870,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportAnalyticsMetricsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportAnalyticsMetricsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ExportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.outputResult != null) { if (typeof object.outputResult !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExportAnalyticsMetricsResponse.outputResult: object expected"); - message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.fromObject(object.outputResult); + message.outputResult = $root.google.cloud.retail.v2alpha.OutputResult.fromObject(object.outputResult, long + 1); } return message; }; @@ -63241,7 +65969,7 @@ this.gcsResult = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -63318,9 +66046,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OutputResult.decode = function decode(reader, length, error) { + OutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.OutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -63330,17 +66062,17 @@ case 1: { if (!(message.bigqueryResult && message.bigqueryResult.length)) message.bigqueryResult = []; - message.bigqueryResult.push($root.google.cloud.retail.v2alpha.BigQueryOutputResult.decode(reader, reader.uint32())); + message.bigqueryResult.push($root.google.cloud.retail.v2alpha.BigQueryOutputResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.gcsResult && message.gcsResult.length)) message.gcsResult = []; - message.gcsResult.push($root.google.cloud.retail.v2alpha.GcsOutputResult.decode(reader, reader.uint32())); + message.gcsResult.push($root.google.cloud.retail.v2alpha.GcsOutputResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -63371,14 +66103,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OutputResult.verify = function verify(message) { + OutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.bigqueryResult != null && message.hasOwnProperty("bigqueryResult")) { if (!Array.isArray(message.bigqueryResult)) return "bigqueryResult: array expected"; for (var i = 0; i < message.bigqueryResult.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.BigQueryOutputResult.verify(message.bigqueryResult[i]); + var error = $root.google.cloud.retail.v2alpha.BigQueryOutputResult.verify(message.bigqueryResult[i], long + 1); if (error) return "bigqueryResult." + error; } @@ -63387,7 +66123,7 @@ if (!Array.isArray(message.gcsResult)) return "gcsResult: array expected"; for (var i = 0; i < message.gcsResult.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.GcsOutputResult.verify(message.gcsResult[i]); + var error = $root.google.cloud.retail.v2alpha.GcsOutputResult.verify(message.gcsResult[i], long + 1); if (error) return "gcsResult." + error; } @@ -63403,9 +66139,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.OutputResult} OutputResult */ - OutputResult.fromObject = function fromObject(object) { + OutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.OutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.OutputResult(); if (object.bigqueryResult) { if (!Array.isArray(object.bigqueryResult)) @@ -63414,7 +66154,7 @@ for (var i = 0; i < object.bigqueryResult.length; ++i) { if (typeof object.bigqueryResult[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.OutputResult.bigqueryResult: object expected"); - message.bigqueryResult[i] = $root.google.cloud.retail.v2alpha.BigQueryOutputResult.fromObject(object.bigqueryResult[i]); + message.bigqueryResult[i] = $root.google.cloud.retail.v2alpha.BigQueryOutputResult.fromObject(object.bigqueryResult[i], long + 1); } } if (object.gcsResult) { @@ -63424,7 +66164,7 @@ for (var i = 0; i < object.gcsResult.length; ++i) { if (typeof object.gcsResult[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.OutputResult.gcsResult: object expected"); - message.gcsResult[i] = $root.google.cloud.retail.v2alpha.GcsOutputResult.fromObject(object.gcsResult[i]); + message.gcsResult[i] = $root.google.cloud.retail.v2alpha.GcsOutputResult.fromObject(object.gcsResult[i], long + 1); } } return message; @@ -63510,7 +66250,7 @@ function BigQueryOutputResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -63585,9 +66325,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQueryOutputResult.decode = function decode(reader, length, error) { + BigQueryOutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.BigQueryOutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -63603,7 +66347,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -63634,9 +66378,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQueryOutputResult.verify = function verify(message) { + BigQueryOutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.datasetId != null && message.hasOwnProperty("datasetId")) if (!$util.isString(message.datasetId)) return "datasetId: string expected"; @@ -63654,9 +66402,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.BigQueryOutputResult} BigQueryOutputResult */ - BigQueryOutputResult.fromObject = function fromObject(object) { + BigQueryOutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.BigQueryOutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.BigQueryOutputResult(); if (object.datasetId != null) message.datasetId = String(object.datasetId); @@ -63738,7 +66490,7 @@ function GcsOutputResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -63803,9 +66555,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsOutputResult.decode = function decode(reader, length, error) { + GcsOutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GcsOutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -63817,7 +66573,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -63848,9 +66604,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsOutputResult.verify = function verify(message) { + GcsOutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.outputUri != null && message.hasOwnProperty("outputUri")) if (!$util.isString(message.outputUri)) return "outputUri: string expected"; @@ -63865,9 +66625,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GcsOutputResult} GcsOutputResult */ - GcsOutputResult.fromObject = function fromObject(object) { + GcsOutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GcsOutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GcsOutputResult(); if (object.outputUri != null) message.outputUri = String(object.outputUri); @@ -63966,7 +66730,7 @@ this.qualityMetrics = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -64083,9 +66847,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Branch.decode = function decode(reader, length, error) { + Branch.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Branch(); while (reader.pos < end) { var tag = reader.uint32(); @@ -64105,23 +66873,23 @@ break; } case 5: { - message.lastProductImportTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastProductImportTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { if (!(message.productCountStats && message.productCountStats.length)) message.productCountStats = []; - message.productCountStats.push($root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic.decode(reader, reader.uint32())); + message.productCountStats.push($root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.qualityMetrics && message.qualityMetrics.length)) message.qualityMetrics = []; - message.qualityMetrics.push($root.google.cloud.retail.v2alpha.Branch.QualityMetric.decode(reader, reader.uint32())); + message.qualityMetrics.push($root.google.cloud.retail.v2alpha.Branch.QualityMetric.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -64152,9 +66920,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Branch.verify = function verify(message) { + Branch.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -64165,7 +66937,7 @@ if (typeof message.isDefault !== "boolean") return "isDefault: boolean expected"; if (message.lastProductImportTime != null && message.hasOwnProperty("lastProductImportTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastProductImportTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastProductImportTime, long + 1); if (error) return "lastProductImportTime." + error; } @@ -64173,7 +66945,7 @@ if (!Array.isArray(message.productCountStats)) return "productCountStats: array expected"; for (var i = 0; i < message.productCountStats.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic.verify(message.productCountStats[i]); + var error = $root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic.verify(message.productCountStats[i], long + 1); if (error) return "productCountStats." + error; } @@ -64182,7 +66954,7 @@ if (!Array.isArray(message.qualityMetrics)) return "qualityMetrics: array expected"; for (var i = 0; i < message.qualityMetrics.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Branch.QualityMetric.verify(message.qualityMetrics[i]); + var error = $root.google.cloud.retail.v2alpha.Branch.QualityMetric.verify(message.qualityMetrics[i], long + 1); if (error) return "qualityMetrics." + error; } @@ -64198,9 +66970,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Branch} Branch */ - Branch.fromObject = function fromObject(object) { + Branch.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Branch) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Branch(); if (object.name != null) message.name = String(object.name); @@ -64211,7 +66987,7 @@ if (object.lastProductImportTime != null) { if (typeof object.lastProductImportTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Branch.lastProductImportTime: object expected"); - message.lastProductImportTime = $root.google.protobuf.Timestamp.fromObject(object.lastProductImportTime); + message.lastProductImportTime = $root.google.protobuf.Timestamp.fromObject(object.lastProductImportTime, long + 1); } if (object.productCountStats) { if (!Array.isArray(object.productCountStats)) @@ -64220,7 +66996,7 @@ for (var i = 0; i < object.productCountStats.length; ++i) { if (typeof object.productCountStats[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Branch.productCountStats: object expected"); - message.productCountStats[i] = $root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic.fromObject(object.productCountStats[i]); + message.productCountStats[i] = $root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic.fromObject(object.productCountStats[i], long + 1); } } if (object.qualityMetrics) { @@ -64230,7 +67006,7 @@ for (var i = 0; i < object.qualityMetrics.length; ++i) { if (typeof object.qualityMetrics[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Branch.qualityMetrics: object expected"); - message.qualityMetrics[i] = $root.google.cloud.retail.v2alpha.Branch.QualityMetric.fromObject(object.qualityMetrics[i]); + message.qualityMetrics[i] = $root.google.cloud.retail.v2alpha.Branch.QualityMetric.fromObject(object.qualityMetrics[i], long + 1); } } return message; @@ -64328,7 +67104,7 @@ this.counts = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -64404,9 +67180,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductCountStatistic.decode = function decode(reader, length, error) { + ProductCountStatistic.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -64433,15 +67213,17 @@ value = reader.int64(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.counts, key); message.counts[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -64472,9 +67254,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductCountStatistic.verify = function verify(message) { + ProductCountStatistic.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.scope != null && message.hasOwnProperty("scope")) switch (message.scope) { default: @@ -64503,9 +67289,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Branch.ProductCountStatistic} ProductCountStatistic */ - ProductCountStatistic.fromObject = function fromObject(object) { + ProductCountStatistic.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Branch.ProductCountStatistic(); switch (object.scope) { default: @@ -64531,7 +67321,9 @@ if (typeof object.counts !== "object") throw TypeError(".google.cloud.retail.v2alpha.Branch.ProductCountStatistic.counts: object expected"); message.counts = {}; - for (var keys = Object.keys(object.counts), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.counts), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.counts, keys[i]); if ($util.Long) (message.counts[keys[i]] = $util.Long.fromValue(object.counts[keys[i]])).unsigned = false; else if (typeof object.counts[keys[i]] === "string") @@ -64540,6 +67332,7 @@ message.counts[keys[i]] = object.counts[keys[i]]; else if (typeof object.counts[keys[i]] === "object") message.counts[keys[i]] = new $util.LongBits(object.counts[keys[i]].low >>> 0, object.counts[keys[i]].high >>> 0).toNumber(); + } } return message; }; @@ -64566,11 +67359,14 @@ var keys2; if (message.counts && (keys2 = Object.keys(message.counts)).length) { object.counts = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.counts, keys2[j]); if (typeof message.counts[keys2[j]] === "number") object.counts[keys2[j]] = options.longs === String ? String(message.counts[keys2[j]]) : message.counts[keys2[j]]; else object.counts[keys2[j]] = options.longs === String ? $util.Long.prototype.toString.call(message.counts[keys2[j]]) : options.longs === Number ? new $util.LongBits(message.counts[keys2[j]].low >>> 0, message.counts[keys2[j]].high >>> 0).toNumber() : message.counts[keys2[j]]; + } } return object; }; @@ -64645,7 +67441,7 @@ this.unqualifiedSampleProducts = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -64751,9 +67547,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QualityMetric.decode = function decode(reader, length, error) { + QualityMetric.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Branch.QualityMetric(); while (reader.pos < end) { var tag = reader.uint32(); @@ -64779,11 +67579,11 @@ case 5: { if (!(message.unqualifiedSampleProducts && message.unqualifiedSampleProducts.length)) message.unqualifiedSampleProducts = []; - message.unqualifiedSampleProducts.push($root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32())); + message.unqualifiedSampleProducts.push($root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -64814,9 +67614,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QualityMetric.verify = function verify(message) { + QualityMetric.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.requirementKey != null && message.hasOwnProperty("requirementKey")) if (!$util.isString(message.requirementKey)) return "requirementKey: string expected"; @@ -64833,7 +67637,7 @@ if (!Array.isArray(message.unqualifiedSampleProducts)) return "unqualifiedSampleProducts: array expected"; for (var i = 0; i < message.unqualifiedSampleProducts.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.unqualifiedSampleProducts[i]); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.unqualifiedSampleProducts[i], long + 1); if (error) return "unqualifiedSampleProducts." + error; } @@ -64849,9 +67653,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Branch.QualityMetric} QualityMetric */ - QualityMetric.fromObject = function fromObject(object) { + QualityMetric.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Branch.QualityMetric) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Branch.QualityMetric(); if (object.requirementKey != null) message.requirementKey = String(object.requirementKey); @@ -64868,7 +67676,7 @@ for (var i = 0; i < object.unqualifiedSampleProducts.length; ++i) { if (typeof object.unqualifiedSampleProducts[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Branch.QualityMetric.unqualifiedSampleProducts: object expected"); - message.unqualifiedSampleProducts[i] = $root.google.cloud.retail.v2alpha.Product.fromObject(object.unqualifiedSampleProducts[i]); + message.unqualifiedSampleProducts[i] = $root.google.cloud.retail.v2alpha.Product.fromObject(object.unqualifiedSampleProducts[i], long + 1); } } return message; @@ -65010,7 +67818,7 @@ this.localInventories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -65435,9 +68243,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Product.decode = function decode(reader, length, error) { + Product.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Product(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -65445,11 +68257,11 @@ break; switch (tag >>> 3) { case 16: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { - message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -65515,13 +68327,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2alpha.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -65532,15 +68346,15 @@ break; } case 14: { - message.priceInfo = $root.google.cloud.retail.v2alpha.PriceInfo.decode(reader, reader.uint32()); + message.priceInfo = $root.google.cloud.retail.v2alpha.PriceInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { - message.rating = $root.google.cloud.retail.v2alpha.Rating.decode(reader, reader.uint32()); + message.rating = $root.google.cloud.retail.v2alpha.Rating.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { - message.availableTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.availableTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -65548,13 +68362,13 @@ break; } case 20: { - message.availableQuantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32()); + message.availableQuantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32(), undefined, long + 1); break; } case 21: { if (!(message.fulfillmentInfo && message.fulfillmentInfo.length)) message.fulfillmentInfo = []; - message.fulfillmentInfo.push($root.google.cloud.retail.v2alpha.FulfillmentInfo.decode(reader, reader.uint32())); + message.fulfillmentInfo.push($root.google.cloud.retail.v2alpha.FulfillmentInfo.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { @@ -65564,15 +68378,15 @@ case 23: { if (!(message.images && message.images.length)) message.images = []; - message.images.push($root.google.cloud.retail.v2alpha.Image.decode(reader, reader.uint32())); + message.images.push($root.google.cloud.retail.v2alpha.Image.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 24: { - message.audience = $root.google.cloud.retail.v2alpha.Audience.decode(reader, reader.uint32()); + message.audience = $root.google.cloud.retail.v2alpha.Audience.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.colorInfo = $root.google.cloud.retail.v2alpha.ColorInfo.decode(reader, reader.uint32()); + message.colorInfo = $root.google.cloud.retail.v2alpha.ColorInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { @@ -65602,31 +68416,31 @@ case 34: { if (!(message.promotions && message.promotions.length)) message.promotions = []; - message.promotions.push($root.google.cloud.retail.v2alpha.Promotion.decode(reader, reader.uint32())); + message.promotions.push($root.google.cloud.retail.v2alpha.Promotion.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 33: { - message.publishTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.publishTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 30: { - message.retrievableFields = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.retrievableFields = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 31: { if (!(message.variants && message.variants.length)) message.variants = []; - message.variants.push($root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32())); + message.variants.push($root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 35: { if (!(message.localInventories && message.localInventories.length)) message.localInventories = []; - message.localInventories.push($root.google.cloud.retail.v2alpha.LocalInventory.decode(reader, reader.uint32())); + message.localInventories.push($root.google.cloud.retail.v2alpha.LocalInventory.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -65657,14 +68471,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Product.verify = function verify(message) { + Product.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.expireTime != null && message.hasOwnProperty("expireTime")) { properties.expiration = 1; { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -65674,7 +68492,7 @@ return "expiration: multiple values"; properties.expiration = 1; { - var error = $root.google.protobuf.Duration.verify(message.ttl); + var error = $root.google.protobuf.Duration.verify(message.ttl, long + 1); if (error) return "ttl." + error; } @@ -65736,7 +68554,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2alpha.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -65749,17 +68567,17 @@ return "tags: string[] expected"; } if (message.priceInfo != null && message.hasOwnProperty("priceInfo")) { - var error = $root.google.cloud.retail.v2alpha.PriceInfo.verify(message.priceInfo); + var error = $root.google.cloud.retail.v2alpha.PriceInfo.verify(message.priceInfo, long + 1); if (error) return "priceInfo." + error; } if (message.rating != null && message.hasOwnProperty("rating")) { - var error = $root.google.cloud.retail.v2alpha.Rating.verify(message.rating); + var error = $root.google.cloud.retail.v2alpha.Rating.verify(message.rating, long + 1); if (error) return "rating." + error; } if (message.availableTime != null && message.hasOwnProperty("availableTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.availableTime); + var error = $root.google.protobuf.Timestamp.verify(message.availableTime, long + 1); if (error) return "availableTime." + error; } @@ -65775,7 +68593,7 @@ break; } if (message.availableQuantity != null && message.hasOwnProperty("availableQuantity")) { - var error = $root.google.protobuf.Int32Value.verify(message.availableQuantity); + var error = $root.google.protobuf.Int32Value.verify(message.availableQuantity, long + 1); if (error) return "availableQuantity." + error; } @@ -65783,7 +68601,7 @@ if (!Array.isArray(message.fulfillmentInfo)) return "fulfillmentInfo: array expected"; for (var i = 0; i < message.fulfillmentInfo.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.FulfillmentInfo.verify(message.fulfillmentInfo[i]); + var error = $root.google.cloud.retail.v2alpha.FulfillmentInfo.verify(message.fulfillmentInfo[i], long + 1); if (error) return "fulfillmentInfo." + error; } @@ -65795,18 +68613,18 @@ if (!Array.isArray(message.images)) return "images: array expected"; for (var i = 0; i < message.images.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Image.verify(message.images[i]); + var error = $root.google.cloud.retail.v2alpha.Image.verify(message.images[i], long + 1); if (error) return "images." + error; } } if (message.audience != null && message.hasOwnProperty("audience")) { - var error = $root.google.cloud.retail.v2alpha.Audience.verify(message.audience); + var error = $root.google.cloud.retail.v2alpha.Audience.verify(message.audience, long + 1); if (error) return "audience." + error; } if (message.colorInfo != null && message.hasOwnProperty("colorInfo")) { - var error = $root.google.cloud.retail.v2alpha.ColorInfo.verify(message.colorInfo); + var error = $root.google.cloud.retail.v2alpha.ColorInfo.verify(message.colorInfo, long + 1); if (error) return "colorInfo." + error; } @@ -65842,18 +68660,18 @@ if (!Array.isArray(message.promotions)) return "promotions: array expected"; for (var i = 0; i < message.promotions.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Promotion.verify(message.promotions[i]); + var error = $root.google.cloud.retail.v2alpha.Promotion.verify(message.promotions[i], long + 1); if (error) return "promotions." + error; } } if (message.publishTime != null && message.hasOwnProperty("publishTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.publishTime); + var error = $root.google.protobuf.Timestamp.verify(message.publishTime, long + 1); if (error) return "publishTime." + error; } if (message.retrievableFields != null && message.hasOwnProperty("retrievableFields")) { - var error = $root.google.protobuf.FieldMask.verify(message.retrievableFields); + var error = $root.google.protobuf.FieldMask.verify(message.retrievableFields, long + 1); if (error) return "retrievableFields." + error; } @@ -65861,7 +68679,7 @@ if (!Array.isArray(message.variants)) return "variants: array expected"; for (var i = 0; i < message.variants.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.variants[i]); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.variants[i], long + 1); if (error) return "variants." + error; } @@ -65870,7 +68688,7 @@ if (!Array.isArray(message.localInventories)) return "localInventories: array expected"; for (var i = 0; i < message.localInventories.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.LocalInventory.verify(message.localInventories[i]); + var error = $root.google.cloud.retail.v2alpha.LocalInventory.verify(message.localInventories[i], long + 1); if (error) return "localInventories." + error; } @@ -65886,19 +68704,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Product} Product */ - Product.fromObject = function fromObject(object) { + Product.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Product) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Product(); if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.ttl != null) { if (typeof object.ttl !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.ttl: object expected"); - message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl); + message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl, long + 1); } if (object.name != null) message.name = String(object.name); @@ -65964,9 +68786,11 @@ throw TypeError(".google.cloud.retail.v2alpha.Product.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2alpha.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2alpha.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.tags) { @@ -65979,17 +68803,17 @@ if (object.priceInfo != null) { if (typeof object.priceInfo !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.priceInfo: object expected"); - message.priceInfo = $root.google.cloud.retail.v2alpha.PriceInfo.fromObject(object.priceInfo); + message.priceInfo = $root.google.cloud.retail.v2alpha.PriceInfo.fromObject(object.priceInfo, long + 1); } if (object.rating != null) { if (typeof object.rating !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.rating: object expected"); - message.rating = $root.google.cloud.retail.v2alpha.Rating.fromObject(object.rating); + message.rating = $root.google.cloud.retail.v2alpha.Rating.fromObject(object.rating, long + 1); } if (object.availableTime != null) { if (typeof object.availableTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.availableTime: object expected"); - message.availableTime = $root.google.protobuf.Timestamp.fromObject(object.availableTime); + message.availableTime = $root.google.protobuf.Timestamp.fromObject(object.availableTime, long + 1); } switch (object.availability) { default: @@ -66022,7 +68846,7 @@ if (object.availableQuantity != null) { if (typeof object.availableQuantity !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.availableQuantity: object expected"); - message.availableQuantity = $root.google.protobuf.Int32Value.fromObject(object.availableQuantity); + message.availableQuantity = $root.google.protobuf.Int32Value.fromObject(object.availableQuantity, long + 1); } if (object.fulfillmentInfo) { if (!Array.isArray(object.fulfillmentInfo)) @@ -66031,7 +68855,7 @@ for (var i = 0; i < object.fulfillmentInfo.length; ++i) { if (typeof object.fulfillmentInfo[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.fulfillmentInfo: object expected"); - message.fulfillmentInfo[i] = $root.google.cloud.retail.v2alpha.FulfillmentInfo.fromObject(object.fulfillmentInfo[i]); + message.fulfillmentInfo[i] = $root.google.cloud.retail.v2alpha.FulfillmentInfo.fromObject(object.fulfillmentInfo[i], long + 1); } } if (object.uri != null) @@ -66043,18 +68867,18 @@ for (var i = 0; i < object.images.length; ++i) { if (typeof object.images[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.images: object expected"); - message.images[i] = $root.google.cloud.retail.v2alpha.Image.fromObject(object.images[i]); + message.images[i] = $root.google.cloud.retail.v2alpha.Image.fromObject(object.images[i], long + 1); } } if (object.audience != null) { if (typeof object.audience !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.audience: object expected"); - message.audience = $root.google.cloud.retail.v2alpha.Audience.fromObject(object.audience); + message.audience = $root.google.cloud.retail.v2alpha.Audience.fromObject(object.audience, long + 1); } if (object.colorInfo != null) { if (typeof object.colorInfo !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.colorInfo: object expected"); - message.colorInfo = $root.google.cloud.retail.v2alpha.ColorInfo.fromObject(object.colorInfo); + message.colorInfo = $root.google.cloud.retail.v2alpha.ColorInfo.fromObject(object.colorInfo, long + 1); } if (object.sizes) { if (!Array.isArray(object.sizes)) @@ -66091,18 +68915,18 @@ for (var i = 0; i < object.promotions.length; ++i) { if (typeof object.promotions[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.promotions: object expected"); - message.promotions[i] = $root.google.cloud.retail.v2alpha.Promotion.fromObject(object.promotions[i]); + message.promotions[i] = $root.google.cloud.retail.v2alpha.Promotion.fromObject(object.promotions[i], long + 1); } } if (object.publishTime != null) { if (typeof object.publishTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.publishTime: object expected"); - message.publishTime = $root.google.protobuf.Timestamp.fromObject(object.publishTime); + message.publishTime = $root.google.protobuf.Timestamp.fromObject(object.publishTime, long + 1); } if (object.retrievableFields != null) { if (typeof object.retrievableFields !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.retrievableFields: object expected"); - message.retrievableFields = $root.google.protobuf.FieldMask.fromObject(object.retrievableFields); + message.retrievableFields = $root.google.protobuf.FieldMask.fromObject(object.retrievableFields, long + 1); } if (object.variants) { if (!Array.isArray(object.variants)) @@ -66111,7 +68935,7 @@ for (var i = 0; i < object.variants.length; ++i) { if (typeof object.variants[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.variants: object expected"); - message.variants[i] = $root.google.cloud.retail.v2alpha.Product.fromObject(object.variants[i]); + message.variants[i] = $root.google.cloud.retail.v2alpha.Product.fromObject(object.variants[i], long + 1); } } if (object.localInventories) { @@ -66121,7 +68945,7 @@ for (var i = 0; i < object.localInventories.length; ++i) { if (typeof object.localInventories[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Product.localInventories: object expected"); - message.localInventories[i] = $root.google.cloud.retail.v2alpha.LocalInventory.fromObject(object.localInventories[i]); + message.localInventories[i] = $root.google.cloud.retail.v2alpha.LocalInventory.fromObject(object.localInventories[i], long + 1); } } return message; @@ -66211,8 +69035,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2alpha.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.tags && message.tags.length) { object.tags = []; @@ -66453,7 +69280,7 @@ this.pageCategories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -66541,9 +69368,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Condition.decode = function decode(reader, length, error) { + Condition.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Condition(); while (reader.pos < end) { var tag = reader.uint32(); @@ -66553,13 +69384,13 @@ case 1: { if (!(message.queryTerms && message.queryTerms.length)) message.queryTerms = []; - message.queryTerms.push($root.google.cloud.retail.v2alpha.Condition.QueryTerm.decode(reader, reader.uint32())); + message.queryTerms.push($root.google.cloud.retail.v2alpha.Condition.QueryTerm.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.activeTimeRange && message.activeTimeRange.length)) message.activeTimeRange = []; - message.activeTimeRange.push($root.google.cloud.retail.v2alpha.Condition.TimeRange.decode(reader, reader.uint32())); + message.activeTimeRange.push($root.google.cloud.retail.v2alpha.Condition.TimeRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -66569,7 +69400,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -66600,14 +69431,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Condition.verify = function verify(message) { + Condition.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; for (var i = 0; i < message.queryTerms.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Condition.QueryTerm.verify(message.queryTerms[i]); + var error = $root.google.cloud.retail.v2alpha.Condition.QueryTerm.verify(message.queryTerms[i], long + 1); if (error) return "queryTerms." + error; } @@ -66616,7 +69451,7 @@ if (!Array.isArray(message.activeTimeRange)) return "activeTimeRange: array expected"; for (var i = 0; i < message.activeTimeRange.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Condition.TimeRange.verify(message.activeTimeRange[i]); + var error = $root.google.cloud.retail.v2alpha.Condition.TimeRange.verify(message.activeTimeRange[i], long + 1); if (error) return "activeTimeRange." + error; } @@ -66639,9 +69474,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Condition} Condition */ - Condition.fromObject = function fromObject(object) { + Condition.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Condition) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Condition(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -66650,7 +69489,7 @@ for (var i = 0; i < object.queryTerms.length; ++i) { if (typeof object.queryTerms[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Condition.queryTerms: object expected"); - message.queryTerms[i] = $root.google.cloud.retail.v2alpha.Condition.QueryTerm.fromObject(object.queryTerms[i]); + message.queryTerms[i] = $root.google.cloud.retail.v2alpha.Condition.QueryTerm.fromObject(object.queryTerms[i], long + 1); } } if (object.activeTimeRange) { @@ -66660,7 +69499,7 @@ for (var i = 0; i < object.activeTimeRange.length; ++i) { if (typeof object.activeTimeRange[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Condition.activeTimeRange: object expected"); - message.activeTimeRange[i] = $root.google.cloud.retail.v2alpha.Condition.TimeRange.fromObject(object.activeTimeRange[i]); + message.activeTimeRange[i] = $root.google.cloud.retail.v2alpha.Condition.TimeRange.fromObject(object.activeTimeRange[i], long + 1); } } if (object.pageCategories) { @@ -66756,7 +69595,7 @@ function QueryTerm(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -66831,9 +69670,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryTerm.decode = function decode(reader, length, error) { + QueryTerm.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Condition.QueryTerm(); while (reader.pos < end) { var tag = reader.uint32(); @@ -66849,7 +69692,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -66880,9 +69723,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryTerm.verify = function verify(message) { + QueryTerm.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!$util.isString(message.value)) return "value: string expected"; @@ -66900,9 +69747,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Condition.QueryTerm} QueryTerm */ - QueryTerm.fromObject = function fromObject(object) { + QueryTerm.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Condition.QueryTerm) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Condition.QueryTerm(); if (object.value != null) message.value = String(object.value); @@ -66985,7 +69836,7 @@ function TimeRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -67060,9 +69911,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TimeRange.decode = function decode(reader, length, error) { + TimeRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Condition.TimeRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -67070,15 +69925,15 @@ break; switch (tag >>> 3) { case 1: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -67109,16 +69964,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TimeRange.verify = function verify(message) { + TimeRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -67133,19 +69992,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Condition.TimeRange} TimeRange */ - TimeRange.fromObject = function fromObject(object) { + TimeRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Condition.TimeRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Condition.TimeRange(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Condition.TimeRange.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Condition.TimeRange.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } return message; }; @@ -67237,7 +70100,7 @@ function Rule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -67426,9 +70289,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Rule.decode = function decode(reader, length, error) { + Rule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -67436,55 +70303,55 @@ break; switch (tag >>> 3) { case 2: { - message.boostAction = $root.google.cloud.retail.v2alpha.Rule.BoostAction.decode(reader, reader.uint32()); + message.boostAction = $root.google.cloud.retail.v2alpha.Rule.BoostAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.redirectAction = $root.google.cloud.retail.v2alpha.Rule.RedirectAction.decode(reader, reader.uint32()); + message.redirectAction = $root.google.cloud.retail.v2alpha.Rule.RedirectAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.onewaySynonymsAction = $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction.decode(reader, reader.uint32()); + message.onewaySynonymsAction = $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.doNotAssociateAction = $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction.decode(reader, reader.uint32()); + message.doNotAssociateAction = $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.replacementAction = $root.google.cloud.retail.v2alpha.Rule.ReplacementAction.decode(reader, reader.uint32()); + message.replacementAction = $root.google.cloud.retail.v2alpha.Rule.ReplacementAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.ignoreAction = $root.google.cloud.retail.v2alpha.Rule.IgnoreAction.decode(reader, reader.uint32()); + message.ignoreAction = $root.google.cloud.retail.v2alpha.Rule.IgnoreAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.filterAction = $root.google.cloud.retail.v2alpha.Rule.FilterAction.decode(reader, reader.uint32()); + message.filterAction = $root.google.cloud.retail.v2alpha.Rule.FilterAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.twowaySynonymsAction = $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction.decode(reader, reader.uint32()); + message.twowaySynonymsAction = $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { - message.forceReturnFacetAction = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.decode(reader, reader.uint32()); + message.forceReturnFacetAction = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.removeFacetAction = $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction.decode(reader, reader.uint32()); + message.removeFacetAction = $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.pinAction = $root.google.cloud.retail.v2alpha.Rule.PinAction.decode(reader, reader.uint32()); + message.pinAction = $root.google.cloud.retail.v2alpha.Rule.PinAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { - message.condition = $root.google.cloud.retail.v2alpha.Condition.decode(reader, reader.uint32()); + message.condition = $root.google.cloud.retail.v2alpha.Condition.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -67515,14 +70382,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Rule.verify = function verify(message) { + Rule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.boostAction != null && message.hasOwnProperty("boostAction")) { properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.BoostAction.verify(message.boostAction); + var error = $root.google.cloud.retail.v2alpha.Rule.BoostAction.verify(message.boostAction, long + 1); if (error) return "boostAction." + error; } @@ -67532,7 +70403,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.RedirectAction.verify(message.redirectAction); + var error = $root.google.cloud.retail.v2alpha.Rule.RedirectAction.verify(message.redirectAction, long + 1); if (error) return "redirectAction." + error; } @@ -67542,7 +70413,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction.verify(message.onewaySynonymsAction); + var error = $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction.verify(message.onewaySynonymsAction, long + 1); if (error) return "onewaySynonymsAction." + error; } @@ -67552,7 +70423,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction.verify(message.doNotAssociateAction); + var error = $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction.verify(message.doNotAssociateAction, long + 1); if (error) return "doNotAssociateAction." + error; } @@ -67562,7 +70433,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.ReplacementAction.verify(message.replacementAction); + var error = $root.google.cloud.retail.v2alpha.Rule.ReplacementAction.verify(message.replacementAction, long + 1); if (error) return "replacementAction." + error; } @@ -67572,7 +70443,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.IgnoreAction.verify(message.ignoreAction); + var error = $root.google.cloud.retail.v2alpha.Rule.IgnoreAction.verify(message.ignoreAction, long + 1); if (error) return "ignoreAction." + error; } @@ -67582,7 +70453,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.FilterAction.verify(message.filterAction); + var error = $root.google.cloud.retail.v2alpha.Rule.FilterAction.verify(message.filterAction, long + 1); if (error) return "filterAction." + error; } @@ -67592,7 +70463,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction.verify(message.twowaySynonymsAction); + var error = $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction.verify(message.twowaySynonymsAction, long + 1); if (error) return "twowaySynonymsAction." + error; } @@ -67602,7 +70473,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.verify(message.forceReturnFacetAction); + var error = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.verify(message.forceReturnFacetAction, long + 1); if (error) return "forceReturnFacetAction." + error; } @@ -67612,7 +70483,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction.verify(message.removeFacetAction); + var error = $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction.verify(message.removeFacetAction, long + 1); if (error) return "removeFacetAction." + error; } @@ -67622,13 +70493,13 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.PinAction.verify(message.pinAction); + var error = $root.google.cloud.retail.v2alpha.Rule.PinAction.verify(message.pinAction, long + 1); if (error) return "pinAction." + error; } } if (message.condition != null && message.hasOwnProperty("condition")) { - var error = $root.google.cloud.retail.v2alpha.Condition.verify(message.condition); + var error = $root.google.cloud.retail.v2alpha.Condition.verify(message.condition, long + 1); if (error) return "condition." + error; } @@ -67643,69 +70514,73 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule} Rule */ - Rule.fromObject = function fromObject(object) { + Rule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule(); if (object.boostAction != null) { if (typeof object.boostAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.boostAction: object expected"); - message.boostAction = $root.google.cloud.retail.v2alpha.Rule.BoostAction.fromObject(object.boostAction); + message.boostAction = $root.google.cloud.retail.v2alpha.Rule.BoostAction.fromObject(object.boostAction, long + 1); } if (object.redirectAction != null) { if (typeof object.redirectAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.redirectAction: object expected"); - message.redirectAction = $root.google.cloud.retail.v2alpha.Rule.RedirectAction.fromObject(object.redirectAction); + message.redirectAction = $root.google.cloud.retail.v2alpha.Rule.RedirectAction.fromObject(object.redirectAction, long + 1); } if (object.onewaySynonymsAction != null) { if (typeof object.onewaySynonymsAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.onewaySynonymsAction: object expected"); - message.onewaySynonymsAction = $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction.fromObject(object.onewaySynonymsAction); + message.onewaySynonymsAction = $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction.fromObject(object.onewaySynonymsAction, long + 1); } if (object.doNotAssociateAction != null) { if (typeof object.doNotAssociateAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.doNotAssociateAction: object expected"); - message.doNotAssociateAction = $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction.fromObject(object.doNotAssociateAction); + message.doNotAssociateAction = $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction.fromObject(object.doNotAssociateAction, long + 1); } if (object.replacementAction != null) { if (typeof object.replacementAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.replacementAction: object expected"); - message.replacementAction = $root.google.cloud.retail.v2alpha.Rule.ReplacementAction.fromObject(object.replacementAction); + message.replacementAction = $root.google.cloud.retail.v2alpha.Rule.ReplacementAction.fromObject(object.replacementAction, long + 1); } if (object.ignoreAction != null) { if (typeof object.ignoreAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.ignoreAction: object expected"); - message.ignoreAction = $root.google.cloud.retail.v2alpha.Rule.IgnoreAction.fromObject(object.ignoreAction); + message.ignoreAction = $root.google.cloud.retail.v2alpha.Rule.IgnoreAction.fromObject(object.ignoreAction, long + 1); } if (object.filterAction != null) { if (typeof object.filterAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.filterAction: object expected"); - message.filterAction = $root.google.cloud.retail.v2alpha.Rule.FilterAction.fromObject(object.filterAction); + message.filterAction = $root.google.cloud.retail.v2alpha.Rule.FilterAction.fromObject(object.filterAction, long + 1); } if (object.twowaySynonymsAction != null) { if (typeof object.twowaySynonymsAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.twowaySynonymsAction: object expected"); - message.twowaySynonymsAction = $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction.fromObject(object.twowaySynonymsAction); + message.twowaySynonymsAction = $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction.fromObject(object.twowaySynonymsAction, long + 1); } if (object.forceReturnFacetAction != null) { if (typeof object.forceReturnFacetAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.forceReturnFacetAction: object expected"); - message.forceReturnFacetAction = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.fromObject(object.forceReturnFacetAction); + message.forceReturnFacetAction = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.fromObject(object.forceReturnFacetAction, long + 1); } if (object.removeFacetAction != null) { if (typeof object.removeFacetAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.removeFacetAction: object expected"); - message.removeFacetAction = $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction.fromObject(object.removeFacetAction); + message.removeFacetAction = $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction.fromObject(object.removeFacetAction, long + 1); } if (object.pinAction != null) { if (typeof object.pinAction !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.pinAction: object expected"); - message.pinAction = $root.google.cloud.retail.v2alpha.Rule.PinAction.fromObject(object.pinAction); + message.pinAction = $root.google.cloud.retail.v2alpha.Rule.PinAction.fromObject(object.pinAction, long + 1); } if (object.condition != null) { if (typeof object.condition !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.condition: object expected"); - message.condition = $root.google.cloud.retail.v2alpha.Condition.fromObject(object.condition); + message.condition = $root.google.cloud.retail.v2alpha.Condition.fromObject(object.condition, long + 1); } return message; }; @@ -67832,7 +70707,7 @@ function BoostAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -67907,9 +70782,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BoostAction.decode = function decode(reader, length, error) { + BoostAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.BoostAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -67925,7 +70804,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -67956,9 +70835,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BoostAction.verify = function verify(message) { + BoostAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.boost != null && message.hasOwnProperty("boost")) if (typeof message.boost !== "number") return "boost: number expected"; @@ -67976,9 +70859,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.BoostAction} BoostAction */ - BoostAction.fromObject = function fromObject(object) { + BoostAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.BoostAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.BoostAction(); if (object.boost != null) message.boost = Number(object.boost); @@ -68060,7 +70947,7 @@ function FilterAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -68125,9 +71012,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FilterAction.decode = function decode(reader, length, error) { + FilterAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.FilterAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -68139,7 +71030,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -68170,9 +71061,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FilterAction.verify = function verify(message) { + FilterAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.filter != null && message.hasOwnProperty("filter")) if (!$util.isString(message.filter)) return "filter: string expected"; @@ -68187,9 +71082,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.FilterAction} FilterAction */ - FilterAction.fromObject = function fromObject(object) { + FilterAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.FilterAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.FilterAction(); if (object.filter != null) message.filter = String(object.filter); @@ -68265,7 +71164,7 @@ function RedirectAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -68330,9 +71229,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RedirectAction.decode = function decode(reader, length, error) { + RedirectAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.RedirectAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -68344,7 +71247,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -68375,9 +71278,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RedirectAction.verify = function verify(message) { + RedirectAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.redirectUri != null && message.hasOwnProperty("redirectUri")) if (!$util.isString(message.redirectUri)) return "redirectUri: string expected"; @@ -68392,9 +71299,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.RedirectAction} RedirectAction */ - RedirectAction.fromObject = function fromObject(object) { + RedirectAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.RedirectAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.RedirectAction(); if (object.redirectUri != null) message.redirectUri = String(object.redirectUri); @@ -68471,7 +71382,7 @@ this.synonyms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -68537,9 +71448,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TwowaySynonymsAction.decode = function decode(reader, length, error) { + TwowaySynonymsAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -68553,7 +71468,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -68584,9 +71499,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TwowaySynonymsAction.verify = function verify(message) { + TwowaySynonymsAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.synonyms != null && message.hasOwnProperty("synonyms")) { if (!Array.isArray(message.synonyms)) return "synonyms: array expected"; @@ -68605,9 +71524,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction} TwowaySynonymsAction */ - TwowaySynonymsAction.fromObject = function fromObject(object) { + TwowaySynonymsAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.TwowaySynonymsAction(); if (object.synonyms) { if (!Array.isArray(object.synonyms)) @@ -68696,7 +71619,7 @@ this.onewayTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -68784,9 +71707,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OnewaySynonymsAction.decode = function decode(reader, length, error) { + OnewaySynonymsAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -68812,7 +71739,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -68843,9 +71770,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OnewaySynonymsAction.verify = function verify(message) { + OnewaySynonymsAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -68878,9 +71809,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction} OnewaySynonymsAction */ - OnewaySynonymsAction.fromObject = function fromObject(object) { + OnewaySynonymsAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.OnewaySynonymsAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -68996,7 +71931,7 @@ this.terms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -69084,9 +72019,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DoNotAssociateAction.decode = function decode(reader, length, error) { + DoNotAssociateAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -69112,7 +72051,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -69143,9 +72082,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DoNotAssociateAction.verify = function verify(message) { + DoNotAssociateAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -69178,9 +72121,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.DoNotAssociateAction} DoNotAssociateAction */ - DoNotAssociateAction.fromObject = function fromObject(object) { + DoNotAssociateAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.DoNotAssociateAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -69294,7 +72241,7 @@ this.queryTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -69380,9 +72327,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReplacementAction.decode = function decode(reader, length, error) { + ReplacementAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.ReplacementAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -69404,7 +72355,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -69435,9 +72386,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReplacementAction.verify = function verify(message) { + ReplacementAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -69462,9 +72417,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.ReplacementAction} ReplacementAction */ - ReplacementAction.fromObject = function fromObject(object) { + ReplacementAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.ReplacementAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.ReplacementAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -69561,7 +72520,7 @@ this.ignoreTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -69627,9 +72586,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - IgnoreAction.decode = function decode(reader, length, error) { + IgnoreAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.IgnoreAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -69643,7 +72606,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -69674,9 +72637,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - IgnoreAction.verify = function verify(message) { + IgnoreAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ignoreTerms != null && message.hasOwnProperty("ignoreTerms")) { if (!Array.isArray(message.ignoreTerms)) return "ignoreTerms: array expected"; @@ -69695,9 +72662,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.IgnoreAction} IgnoreAction */ - IgnoreAction.fromObject = function fromObject(object) { + IgnoreAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.IgnoreAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.IgnoreAction(); if (object.ignoreTerms) { if (!Array.isArray(object.ignoreTerms)) @@ -69782,7 +72753,7 @@ this.facetPositionAdjustments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -69848,9 +72819,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ForceReturnFacetAction.decode = function decode(reader, length, error) { + ForceReturnFacetAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -69860,11 +72835,11 @@ case 1: { if (!(message.facetPositionAdjustments && message.facetPositionAdjustments.length)) message.facetPositionAdjustments = []; - message.facetPositionAdjustments.push($root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment.decode(reader, reader.uint32())); + message.facetPositionAdjustments.push($root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -69895,14 +72870,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ForceReturnFacetAction.verify = function verify(message) { + ForceReturnFacetAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetPositionAdjustments != null && message.hasOwnProperty("facetPositionAdjustments")) { if (!Array.isArray(message.facetPositionAdjustments)) return "facetPositionAdjustments: array expected"; for (var i = 0; i < message.facetPositionAdjustments.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment.verify(message.facetPositionAdjustments[i]); + var error = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment.verify(message.facetPositionAdjustments[i], long + 1); if (error) return "facetPositionAdjustments." + error; } @@ -69918,9 +72897,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction} ForceReturnFacetAction */ - ForceReturnFacetAction.fromObject = function fromObject(object) { + ForceReturnFacetAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction(); if (object.facetPositionAdjustments) { if (!Array.isArray(object.facetPositionAdjustments)) @@ -69929,7 +72912,7 @@ for (var i = 0; i < object.facetPositionAdjustments.length; ++i) { if (typeof object.facetPositionAdjustments[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.facetPositionAdjustments: object expected"); - message.facetPositionAdjustments[i] = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment.fromObject(object.facetPositionAdjustments[i]); + message.facetPositionAdjustments[i] = $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment.fromObject(object.facetPositionAdjustments[i], long + 1); } } return message; @@ -70005,7 +72988,7 @@ function FacetPositionAdjustment(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -70080,9 +73063,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetPositionAdjustment.decode = function decode(reader, length, error) { + FacetPositionAdjustment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -70098,7 +73085,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -70129,9 +73116,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetPositionAdjustment.verify = function verify(message) { + FacetPositionAdjustment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributeName != null && message.hasOwnProperty("attributeName")) if (!$util.isString(message.attributeName)) return "attributeName: string expected"; @@ -70149,9 +73140,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment} FacetPositionAdjustment */ - FacetPositionAdjustment.fromObject = function fromObject(object) { + FacetPositionAdjustment.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.ForceReturnFacetAction.FacetPositionAdjustment(); if (object.attributeName != null) message.attributeName = String(object.attributeName); @@ -70237,7 +73232,7 @@ this.attributeNames = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -70303,9 +73298,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFacetAction.decode = function decode(reader, length, error) { + RemoveFacetAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -70319,7 +73318,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -70350,9 +73349,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFacetAction.verify = function verify(message) { + RemoveFacetAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributeNames != null && message.hasOwnProperty("attributeNames")) { if (!Array.isArray(message.attributeNames)) return "attributeNames: array expected"; @@ -70371,9 +73374,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.RemoveFacetAction} RemoveFacetAction */ - RemoveFacetAction.fromObject = function fromObject(object) { + RemoveFacetAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.RemoveFacetAction(); if (object.attributeNames) { if (!Array.isArray(object.attributeNames)) @@ -70458,7 +73465,7 @@ this.pinMap = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -70524,9 +73531,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PinAction.decode = function decode(reader, length, error) { + PinAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rule.PinAction(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -70549,7 +73560,7 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -70557,7 +73568,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -70588,9 +73599,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PinAction.verify = function verify(message) { + PinAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pinMap != null && message.hasOwnProperty("pinMap")) { if (!$util.isObject(message.pinMap)) return "pinMap: object expected"; @@ -70613,16 +73628,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rule.PinAction} PinAction */ - PinAction.fromObject = function fromObject(object) { + PinAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rule.PinAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rule.PinAction(); if (object.pinMap) { if (typeof object.pinMap !== "object") throw TypeError(".google.cloud.retail.v2alpha.Rule.PinAction.pinMap: object expected"); message.pinMap = {}; - for (var keys = Object.keys(object.pinMap), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.pinMap), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.pinMap, keys[i]); message.pinMap[keys[i]] = String(object.pinMap[keys[i]]); + } } return message; }; @@ -70645,8 +73667,11 @@ var keys2; if (message.pinMap && (keys2 = Object.keys(message.pinMap)).length) { object.pinMap = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.pinMap, keys2[j]); object.pinMap[keys2[j]] = message.pinMap[keys2[j]]; + } } return object; }; @@ -70706,7 +73731,7 @@ this.ageGroups = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -70783,9 +73808,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Audience.decode = function decode(reader, length, error) { + Audience.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Audience(); while (reader.pos < end) { var tag = reader.uint32(); @@ -70805,7 +73834,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -70836,9 +73865,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Audience.verify = function verify(message) { + Audience.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.genders != null && message.hasOwnProperty("genders")) { if (!Array.isArray(message.genders)) return "genders: array expected"; @@ -70864,9 +73897,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Audience} Audience */ - Audience.fromObject = function fromObject(object) { + Audience.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Audience) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Audience(); if (object.genders) { if (!Array.isArray(object.genders)) @@ -70967,7 +74004,7 @@ this.colors = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -71044,9 +74081,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ColorInfo.decode = function decode(reader, length, error) { + ColorInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ColorInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -71066,7 +74107,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -71097,9 +74138,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ColorInfo.verify = function verify(message) { + ColorInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.colorFamilies != null && message.hasOwnProperty("colorFamilies")) { if (!Array.isArray(message.colorFamilies)) return "colorFamilies: array expected"; @@ -71125,9 +74170,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ColorInfo} ColorInfo */ - ColorInfo.fromObject = function fromObject(object) { + ColorInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ColorInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ColorInfo(); if (object.colorFamilies) { if (!Array.isArray(object.colorFamilies)) @@ -71230,7 +74279,7 @@ this.numbers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -71345,9 +74394,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomAttribute.decode = function decode(reader, length, error) { + CustomAttribute.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CustomAttribute(); while (reader.pos < end) { var tag = reader.uint32(); @@ -71380,7 +74433,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -71411,9 +74464,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomAttribute.verify = function verify(message) { + CustomAttribute.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.text != null && message.hasOwnProperty("text")) { if (!Array.isArray(message.text)) @@ -71450,9 +74507,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CustomAttribute} CustomAttribute */ - CustomAttribute.fromObject = function fromObject(object) { + CustomAttribute.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CustomAttribute) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CustomAttribute(); if (object.text) { if (!Array.isArray(object.text)) @@ -71566,7 +74627,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -71642,9 +74703,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FulfillmentInfo.decode = function decode(reader, length, error) { + FulfillmentInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.FulfillmentInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -71662,7 +74727,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -71693,9 +74758,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FulfillmentInfo.verify = function verify(message) { + FulfillmentInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -71717,9 +74786,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.FulfillmentInfo} FulfillmentInfo */ - FulfillmentInfo.fromObject = function fromObject(object) { + FulfillmentInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.FulfillmentInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.FulfillmentInfo(); if (object.type != null) message.type = String(object.type); @@ -71811,7 +74884,7 @@ function Image(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -71896,9 +74969,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Image.decode = function decode(reader, length, error) { + Image.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Image(); while (reader.pos < end) { var tag = reader.uint32(); @@ -71918,7 +74995,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -71949,9 +75026,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Image.verify = function verify(message) { + Image.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -71972,9 +75053,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Image} Image */ - Image.fromObject = function fromObject(object) { + Image.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Image) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Image(); if (object.uri != null) message.uri = String(object.uri); @@ -72064,7 +75149,7 @@ function Interval(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -72184,9 +75269,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Interval.decode = function decode(reader, length, error) { + Interval.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Interval(); while (reader.pos < end) { var tag = reader.uint32(); @@ -72210,7 +75299,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -72241,9 +75330,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Interval.verify = function verify(message) { + Interval.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.minimum != null && message.hasOwnProperty("minimum")) { properties.min = 1; @@ -72280,9 +75373,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Interval} Interval */ - Interval.fromObject = function fromObject(object) { + Interval.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Interval) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Interval(); if (object.minimum != null) message.minimum = Number(object.minimum); @@ -72386,7 +75483,7 @@ function PriceInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -72511,9 +75608,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PriceInfo.decode = function decode(reader, length, error) { + PriceInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PriceInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -72537,19 +75638,19 @@ break; } case 5: { - message.priceEffectiveTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.priceEffectiveTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.priceExpireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.priceExpireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.priceRange = $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange.decode(reader, reader.uint32()); + message.priceRange = $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -72580,9 +75681,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PriceInfo.verify = function verify(message) { + PriceInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.currencyCode != null && message.hasOwnProperty("currencyCode")) if (!$util.isString(message.currencyCode)) return "currencyCode: string expected"; @@ -72596,17 +75701,17 @@ if (typeof message.cost !== "number") return "cost: number expected"; if (message.priceEffectiveTime != null && message.hasOwnProperty("priceEffectiveTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.priceEffectiveTime); + var error = $root.google.protobuf.Timestamp.verify(message.priceEffectiveTime, long + 1); if (error) return "priceEffectiveTime." + error; } if (message.priceExpireTime != null && message.hasOwnProperty("priceExpireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.priceExpireTime); + var error = $root.google.protobuf.Timestamp.verify(message.priceExpireTime, long + 1); if (error) return "priceExpireTime." + error; } if (message.priceRange != null && message.hasOwnProperty("priceRange")) { - var error = $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange.verify(message.priceRange); + var error = $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange.verify(message.priceRange, long + 1); if (error) return "priceRange." + error; } @@ -72621,9 +75726,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PriceInfo} PriceInfo */ - PriceInfo.fromObject = function fromObject(object) { + PriceInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PriceInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PriceInfo(); if (object.currencyCode != null) message.currencyCode = String(object.currencyCode); @@ -72636,17 +75745,17 @@ if (object.priceEffectiveTime != null) { if (typeof object.priceEffectiveTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.PriceInfo.priceEffectiveTime: object expected"); - message.priceEffectiveTime = $root.google.protobuf.Timestamp.fromObject(object.priceEffectiveTime); + message.priceEffectiveTime = $root.google.protobuf.Timestamp.fromObject(object.priceEffectiveTime, long + 1); } if (object.priceExpireTime != null) { if (typeof object.priceExpireTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.PriceInfo.priceExpireTime: object expected"); - message.priceExpireTime = $root.google.protobuf.Timestamp.fromObject(object.priceExpireTime); + message.priceExpireTime = $root.google.protobuf.Timestamp.fromObject(object.priceExpireTime, long + 1); } if (object.priceRange != null) { if (typeof object.priceRange !== "object") throw TypeError(".google.cloud.retail.v2alpha.PriceInfo.priceRange: object expected"); - message.priceRange = $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange.fromObject(object.priceRange); + message.priceRange = $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange.fromObject(object.priceRange, long + 1); } return message; }; @@ -72737,7 +75846,7 @@ function PriceRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -72812,9 +75921,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PriceRange.decode = function decode(reader, length, error) { + PriceRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -72822,15 +75935,15 @@ break; switch (tag >>> 3) { case 1: { - message.price = $root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32()); + message.price = $root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.originalPrice = $root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32()); + message.originalPrice = $root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -72861,16 +75974,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PriceRange.verify = function verify(message) { + PriceRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.price != null && message.hasOwnProperty("price")) { - var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.price); + var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.price, long + 1); if (error) return "price." + error; } if (message.originalPrice != null && message.hasOwnProperty("originalPrice")) { - var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.originalPrice); + var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.originalPrice, long + 1); if (error) return "originalPrice." + error; } @@ -72885,19 +76002,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PriceInfo.PriceRange} PriceRange */ - PriceRange.fromObject = function fromObject(object) { + PriceRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PriceInfo.PriceRange(); if (object.price != null) { if (typeof object.price !== "object") throw TypeError(".google.cloud.retail.v2alpha.PriceInfo.PriceRange.price: object expected"); - message.price = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.price); + message.price = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.price, long + 1); } if (object.originalPrice != null) { if (typeof object.originalPrice !== "object") throw TypeError(".google.cloud.retail.v2alpha.PriceInfo.PriceRange.originalPrice: object expected"); - message.originalPrice = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.originalPrice); + message.originalPrice = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.originalPrice, long + 1); } return message; }; @@ -72981,7 +76102,7 @@ this.ratingHistogram = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -73070,9 +76191,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Rating.decode = function decode(reader, length, error) { + Rating.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Rating(); while (reader.pos < end) { var tag = reader.uint32(); @@ -73099,7 +76224,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -73130,9 +76255,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Rating.verify = function verify(message) { + Rating.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ratingCount != null && message.hasOwnProperty("ratingCount")) if (!$util.isInteger(message.ratingCount)) return "ratingCount: integer expected"; @@ -73157,9 +76286,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Rating} Rating */ - Rating.fromObject = function fromObject(object) { + Rating.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Rating) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Rating(); if (object.ratingCount != null) message.ratingCount = object.ratingCount | 0; @@ -73258,7 +76391,7 @@ function UserInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -73353,9 +76486,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserInfo.decode = function decode(reader, length, error) { + UserInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UserInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -73379,7 +76516,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -73410,9 +76547,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserInfo.verify = function verify(message) { + UserInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userId != null && message.hasOwnProperty("userId")) if (!$util.isString(message.userId)) return "userId: string expected"; @@ -73436,9 +76577,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UserInfo} UserInfo */ - UserInfo.fromObject = function fromObject(object) { + UserInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UserInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UserInfo(); if (object.userId != null) message.userId = String(object.userId); @@ -73536,7 +76681,7 @@ this.fulfillmentTypes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -73645,9 +76790,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LocalInventory.decode = function decode(reader, length, error) { + LocalInventory.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.LocalInventory(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -73659,7 +76808,7 @@ break; } case 2: { - message.priceInfo = $root.google.cloud.retail.v2alpha.PriceInfo.decode(reader, reader.uint32()); + message.priceInfo = $root.google.cloud.retail.v2alpha.PriceInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -73679,13 +76828,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2alpha.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -73696,7 +76847,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -73727,14 +76878,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LocalInventory.verify = function verify(message) { + LocalInventory.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placeId != null && message.hasOwnProperty("placeId")) if (!$util.isString(message.placeId)) return "placeId: string expected"; if (message.priceInfo != null && message.hasOwnProperty("priceInfo")) { - var error = $root.google.cloud.retail.v2alpha.PriceInfo.verify(message.priceInfo); + var error = $root.google.cloud.retail.v2alpha.PriceInfo.verify(message.priceInfo, long + 1); if (error) return "priceInfo." + error; } @@ -73754,7 +76909,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2alpha.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -73777,16 +76932,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.LocalInventory} LocalInventory */ - LocalInventory.fromObject = function fromObject(object) { + LocalInventory.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.LocalInventory) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.LocalInventory(); if (object.placeId != null) message.placeId = String(object.placeId); if (object.priceInfo != null) { if (typeof object.priceInfo !== "object") throw TypeError(".google.cloud.retail.v2alpha.LocalInventory.priceInfo: object expected"); - message.priceInfo = $root.google.cloud.retail.v2alpha.PriceInfo.fromObject(object.priceInfo); + message.priceInfo = $root.google.cloud.retail.v2alpha.PriceInfo.fromObject(object.priceInfo, long + 1); } switch (object.availability) { default: @@ -73821,9 +76980,11 @@ throw TypeError(".google.cloud.retail.v2alpha.LocalInventory.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.LocalInventory.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2alpha.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2alpha.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.fulfillmentTypes) { @@ -73865,8 +77026,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2alpha.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.fulfillmentTypes && message.fulfillmentTypes.length) { object.fulfillmentTypes = []; @@ -73950,7 +77114,7 @@ this.droppedPins = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -74031,9 +77195,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PinControlMetadata.decode = function decode(reader, length, error) { + PinControlMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PinControlMetadata(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -74053,10 +77221,10 @@ key = reader.int64(); break; case 2: - value = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -74076,10 +77244,10 @@ key = reader.int64(); break; case 2: - value = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -74087,7 +77255,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -74118,9 +77286,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PinControlMetadata.verify = function verify(message) { + PinControlMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allMatchedPins != null && message.hasOwnProperty("allMatchedPins")) { if (!$util.isObject(message.allMatchedPins)) return "allMatchedPins: object expected"; @@ -74129,7 +77301,7 @@ if (!$util.key64Re.test(key[i])) return "allMatchedPins: integer|Long key{k:int64} expected"; { - var error = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.verify(message.allMatchedPins[key[i]]); + var error = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.verify(message.allMatchedPins[key[i]], long + 1); if (error) return "allMatchedPins." + error; } @@ -74143,7 +77315,7 @@ if (!$util.key64Re.test(key[i])) return "droppedPins: integer|Long key{k:int64} expected"; { - var error = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.verify(message.droppedPins[key[i]]); + var error = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.verify(message.droppedPins[key[i]], long + 1); if (error) return "droppedPins." + error; } @@ -74160,18 +77332,24 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PinControlMetadata} PinControlMetadata */ - PinControlMetadata.fromObject = function fromObject(object) { + PinControlMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PinControlMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PinControlMetadata(); if (object.allMatchedPins) { if (typeof object.allMatchedPins !== "object") throw TypeError(".google.cloud.retail.v2alpha.PinControlMetadata.allMatchedPins: object expected"); message.allMatchedPins = {}; for (var keys = Object.keys(object.allMatchedPins), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.allMatchedPins, keys[i]); if (typeof object.allMatchedPins[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.PinControlMetadata.allMatchedPins: object expected"); - message.allMatchedPins[keys[i]] = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.fromObject(object.allMatchedPins[keys[i]]); + message.allMatchedPins[keys[i]] = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.fromObject(object.allMatchedPins[keys[i]], long + 1); } } if (object.droppedPins) { @@ -74179,9 +77357,11 @@ throw TypeError(".google.cloud.retail.v2alpha.PinControlMetadata.droppedPins: object expected"); message.droppedPins = {}; for (var keys = Object.keys(object.droppedPins), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.droppedPins, keys[i]); if (typeof object.droppedPins[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.PinControlMetadata.droppedPins: object expected"); - message.droppedPins[keys[i]] = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.fromObject(object.droppedPins[keys[i]]); + message.droppedPins[keys[i]] = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.fromObject(object.droppedPins[keys[i]], long + 1); } } return message; @@ -74207,13 +77387,19 @@ var keys2; if (message.allMatchedPins && (keys2 = Object.keys(message.allMatchedPins)).length) { object.allMatchedPins = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.allMatchedPins, keys2[j]); object.allMatchedPins[keys2[j]] = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.toObject(message.allMatchedPins[keys2[j]], options); + } } if (message.droppedPins && (keys2 = Object.keys(message.droppedPins)).length) { object.droppedPins = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.droppedPins, keys2[j]); object.droppedPins[keys2[j]] = $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins.toObject(message.droppedPins[keys2[j]], options); + } } return object; }; @@ -74265,7 +77451,7 @@ this.productId = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -74331,9 +77517,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductPins.decode = function decode(reader, length, error) { + ProductPins.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins(); while (reader.pos < end) { var tag = reader.uint32(); @@ -74347,7 +77537,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -74378,9 +77568,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductPins.verify = function verify(message) { + ProductPins.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productId != null && message.hasOwnProperty("productId")) { if (!Array.isArray(message.productId)) return "productId: array expected"; @@ -74399,9 +77593,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PinControlMetadata.ProductPins} ProductPins */ - ProductPins.fromObject = function fromObject(object) { + ProductPins.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PinControlMetadata.ProductPins(); if (object.productId) { if (!Array.isArray(object.productId)) @@ -74489,7 +77687,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -74555,9 +77753,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StringList.decode = function decode(reader, length, error) { + StringList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.StringList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -74571,7 +77773,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -74602,9 +77804,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StringList.verify = function verify(message) { + StringList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -74623,9 +77829,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.StringList} StringList */ - StringList.fromObject = function fromObject(object) { + StringList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.StringList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.StringList(); if (object.values) { if (!Array.isArray(object.values)) @@ -74710,7 +77920,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -74779,9 +77989,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DoubleList.decode = function decode(reader, length, error) { + DoubleList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.DoubleList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -74800,7 +78014,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -74831,9 +78045,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DoubleList.verify = function verify(message) { + DoubleList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -74852,9 +78070,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.DoubleList} DoubleList */ - DoubleList.fromObject = function fromObject(object) { + DoubleList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.DoubleList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.DoubleList(); if (object.values) { if (!Array.isArray(object.values)) @@ -74938,7 +78160,7 @@ function Promotion(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -75003,9 +78225,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Promotion.decode = function decode(reader, length, error) { + Promotion.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Promotion(); while (reader.pos < end) { var tag = reader.uint32(); @@ -75017,7 +78243,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -75048,9 +78274,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Promotion.verify = function verify(message) { + Promotion.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.promotionId != null && message.hasOwnProperty("promotionId")) if (!$util.isString(message.promotionId)) return "promotionId: string expected"; @@ -75065,9 +78295,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Promotion} Promotion */ - Promotion.fromObject = function fromObject(object) { + Promotion.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Promotion) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Promotion(); if (object.promotionId != null) message.promotionId = String(object.promotionId); @@ -75245,7 +78479,7 @@ function ListBranchesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -75320,9 +78554,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBranchesRequest.decode = function decode(reader, length, error) { + ListBranchesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListBranchesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -75338,7 +78576,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -75369,9 +78607,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBranchesRequest.verify = function verify(message) { + ListBranchesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -75395,9 +78637,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListBranchesRequest} ListBranchesRequest */ - ListBranchesRequest.fromObject = function fromObject(object) { + ListBranchesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListBranchesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListBranchesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -75498,7 +78744,7 @@ this.branches = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -75564,9 +78810,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListBranchesResponse.decode = function decode(reader, length, error) { + ListBranchesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListBranchesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -75576,11 +78826,11 @@ case 1: { if (!(message.branches && message.branches.length)) message.branches = []; - message.branches.push($root.google.cloud.retail.v2alpha.Branch.decode(reader, reader.uint32())); + message.branches.push($root.google.cloud.retail.v2alpha.Branch.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -75611,14 +78861,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListBranchesResponse.verify = function verify(message) { + ListBranchesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.branches != null && message.hasOwnProperty("branches")) { if (!Array.isArray(message.branches)) return "branches: array expected"; for (var i = 0; i < message.branches.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Branch.verify(message.branches[i]); + var error = $root.google.cloud.retail.v2alpha.Branch.verify(message.branches[i], long + 1); if (error) return "branches." + error; } @@ -75634,9 +78888,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListBranchesResponse} ListBranchesResponse */ - ListBranchesResponse.fromObject = function fromObject(object) { + ListBranchesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListBranchesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListBranchesResponse(); if (object.branches) { if (!Array.isArray(object.branches)) @@ -75645,7 +78903,7 @@ for (var i = 0; i < object.branches.length; ++i) { if (typeof object.branches[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListBranchesResponse.branches: object expected"); - message.branches[i] = $root.google.cloud.retail.v2alpha.Branch.fromObject(object.branches[i]); + message.branches[i] = $root.google.cloud.retail.v2alpha.Branch.fromObject(object.branches[i], long + 1); } } return message; @@ -75724,7 +78982,7 @@ function GetBranchRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -75799,9 +79057,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetBranchRequest.decode = function decode(reader, length, error) { + GetBranchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetBranchRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -75817,7 +79079,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -75848,9 +79110,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetBranchRequest.verify = function verify(message) { + GetBranchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -75874,9 +79140,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetBranchRequest} GetBranchRequest */ - GetBranchRequest.fromObject = function fromObject(object) { + GetBranchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetBranchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetBranchRequest(); if (object.name != null) message.name = String(object.name); @@ -75977,7 +79247,7 @@ function ProductLevelConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -76052,9 +79322,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductLevelConfig.decode = function decode(reader, length, error) { + ProductLevelConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ProductLevelConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -76070,7 +79344,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -76101,9 +79375,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductLevelConfig.verify = function verify(message) { + ProductLevelConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ingestionProductType != null && message.hasOwnProperty("ingestionProductType")) if (!$util.isString(message.ingestionProductType)) return "ingestionProductType: string expected"; @@ -76121,9 +79399,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ProductLevelConfig} ProductLevelConfig */ - ProductLevelConfig.fromObject = function fromObject(object) { + ProductLevelConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ProductLevelConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ProductLevelConfig(); if (object.ingestionProductType != null) message.ingestionProductType = String(object.ingestionProductType); @@ -76214,7 +79496,7 @@ function CatalogAttribute(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -76369,9 +79651,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CatalogAttribute.decode = function decode(reader, length, error) { + CatalogAttribute.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CatalogAttribute(); while (reader.pos < end) { var tag = reader.uint32(); @@ -76415,11 +79701,11 @@ break; } case 13: { - message.facetConfig = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.decode(reader, reader.uint32()); + message.facetConfig = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -76450,9 +79736,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CatalogAttribute.verify = function verify(message) { + CatalogAttribute.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -76523,7 +79813,7 @@ break; } if (message.facetConfig != null && message.hasOwnProperty("facetConfig")) { - var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.verify(message.facetConfig); + var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.verify(message.facetConfig, long + 1); if (error) return "facetConfig." + error; } @@ -76538,9 +79828,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CatalogAttribute} CatalogAttribute */ - CatalogAttribute.fromObject = function fromObject(object) { + CatalogAttribute.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CatalogAttribute) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CatalogAttribute(); if (object.key != null) message.key = String(object.key); @@ -76689,7 +79983,7 @@ if (object.facetConfig != null) { if (typeof object.facetConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.CatalogAttribute.facetConfig: object expected"); - message.facetConfig = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.fromObject(object.facetConfig); + message.facetConfig = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.fromObject(object.facetConfig, long + 1); } return message; }; @@ -76795,7 +80089,7 @@ this.mergedFacetValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -76903,9 +80197,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetConfig.decode = function decode(reader, length, error) { + FacetConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -76915,31 +80213,31 @@ case 1: { if (!(message.facetIntervals && message.facetIntervals.length)) message.facetIntervals = []; - message.facetIntervals.push($root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32())); + message.facetIntervals.push($root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.ignoredFacetValues && message.ignoredFacetValues.length)) message.ignoredFacetValues = []; - message.ignoredFacetValues.push($root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues.decode(reader, reader.uint32())); + message.ignoredFacetValues.push($root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.mergedFacetValues && message.mergedFacetValues.length)) message.mergedFacetValues = []; - message.mergedFacetValues.push($root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue.decode(reader, reader.uint32())); + message.mergedFacetValues.push($root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.mergedFacet = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet.decode(reader, reader.uint32()); + message.mergedFacet = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.rerankConfig = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig.decode(reader, reader.uint32()); + message.rerankConfig = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -76970,14 +80268,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetConfig.verify = function verify(message) { + FacetConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetIntervals != null && message.hasOwnProperty("facetIntervals")) { if (!Array.isArray(message.facetIntervals)) return "facetIntervals: array expected"; for (var i = 0; i < message.facetIntervals.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.facetIntervals[i]); + var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.facetIntervals[i], long + 1); if (error) return "facetIntervals." + error; } @@ -76986,7 +80288,7 @@ if (!Array.isArray(message.ignoredFacetValues)) return "ignoredFacetValues: array expected"; for (var i = 0; i < message.ignoredFacetValues.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues.verify(message.ignoredFacetValues[i]); + var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues.verify(message.ignoredFacetValues[i], long + 1); if (error) return "ignoredFacetValues." + error; } @@ -76995,18 +80297,18 @@ if (!Array.isArray(message.mergedFacetValues)) return "mergedFacetValues: array expected"; for (var i = 0; i < message.mergedFacetValues.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue.verify(message.mergedFacetValues[i]); + var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue.verify(message.mergedFacetValues[i], long + 1); if (error) return "mergedFacetValues." + error; } } if (message.mergedFacet != null && message.hasOwnProperty("mergedFacet")) { - var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet.verify(message.mergedFacet); + var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet.verify(message.mergedFacet, long + 1); if (error) return "mergedFacet." + error; } if (message.rerankConfig != null && message.hasOwnProperty("rerankConfig")) { - var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig.verify(message.rerankConfig); + var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig.verify(message.rerankConfig, long + 1); if (error) return "rerankConfig." + error; } @@ -77021,9 +80323,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig} FacetConfig */ - FacetConfig.fromObject = function fromObject(object) { + FacetConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig(); if (object.facetIntervals) { if (!Array.isArray(object.facetIntervals)) @@ -77032,7 +80338,7 @@ for (var i = 0; i < object.facetIntervals.length; ++i) { if (typeof object.facetIntervals[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.facetIntervals: object expected"); - message.facetIntervals[i] = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.facetIntervals[i]); + message.facetIntervals[i] = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.facetIntervals[i], long + 1); } } if (object.ignoredFacetValues) { @@ -77042,7 +80348,7 @@ for (var i = 0; i < object.ignoredFacetValues.length; ++i) { if (typeof object.ignoredFacetValues[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.ignoredFacetValues: object expected"); - message.ignoredFacetValues[i] = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues.fromObject(object.ignoredFacetValues[i]); + message.ignoredFacetValues[i] = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues.fromObject(object.ignoredFacetValues[i], long + 1); } } if (object.mergedFacetValues) { @@ -77052,18 +80358,18 @@ for (var i = 0; i < object.mergedFacetValues.length; ++i) { if (typeof object.mergedFacetValues[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.mergedFacetValues: object expected"); - message.mergedFacetValues[i] = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue.fromObject(object.mergedFacetValues[i]); + message.mergedFacetValues[i] = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue.fromObject(object.mergedFacetValues[i], long + 1); } } if (object.mergedFacet != null) { if (typeof object.mergedFacet !== "object") throw TypeError(".google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.mergedFacet: object expected"); - message.mergedFacet = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet.fromObject(object.mergedFacet); + message.mergedFacet = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet.fromObject(object.mergedFacet, long + 1); } if (object.rerankConfig != null) { if (typeof object.rerankConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.rerankConfig: object expected"); - message.rerankConfig = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig.fromObject(object.rerankConfig); + message.rerankConfig = $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig.fromObject(object.rerankConfig, long + 1); } return message; }; @@ -77161,7 +80467,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -77247,9 +80553,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - IgnoredFacetValues.decode = function decode(reader, length, error) { + IgnoredFacetValues.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues(); while (reader.pos < end) { var tag = reader.uint32(); @@ -77263,15 +80573,15 @@ break; } case 2: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -77302,9 +80612,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - IgnoredFacetValues.verify = function verify(message) { + IgnoredFacetValues.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -77313,12 +80627,12 @@ return "values: string[] expected"; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -77333,9 +80647,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues} IgnoredFacetValues */ - IgnoredFacetValues.fromObject = function fromObject(object) { + IgnoredFacetValues.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues(); if (object.values) { if (!Array.isArray(object.values)) @@ -77347,12 +80665,12 @@ if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.IgnoredFacetValues.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } return message; }; @@ -77439,7 +80757,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -77515,9 +80833,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MergedFacetValue.decode = function decode(reader, length, error) { + MergedFacetValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -77535,7 +80857,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -77566,9 +80888,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MergedFacetValue.verify = function verify(message) { + MergedFacetValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -77590,9 +80916,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue} MergedFacetValue */ - MergedFacetValue.fromObject = function fromObject(object) { + MergedFacetValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacetValue(); if (object.values) { if (!Array.isArray(object.values)) @@ -77682,7 +81012,7 @@ function MergedFacet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -77747,9 +81077,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MergedFacet.decode = function decode(reader, length, error) { + MergedFacet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -77761,7 +81095,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -77792,9 +81126,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MergedFacet.verify = function verify(message) { + MergedFacet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mergedFacetKey != null && message.hasOwnProperty("mergedFacetKey")) if (!$util.isString(message.mergedFacetKey)) return "mergedFacetKey: string expected"; @@ -77809,9 +81147,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet} MergedFacet */ - MergedFacet.fromObject = function fromObject(object) { + MergedFacet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.MergedFacet(); if (object.mergedFacetKey != null) message.mergedFacetKey = String(object.mergedFacetKey); @@ -77889,7 +81231,7 @@ this.facetValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -77965,9 +81307,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RerankConfig.decode = function decode(reader, length, error) { + RerankConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -77985,7 +81331,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -78016,9 +81362,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RerankConfig.verify = function verify(message) { + RerankConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rerankFacet != null && message.hasOwnProperty("rerankFacet")) if (typeof message.rerankFacet !== "boolean") return "rerankFacet: boolean expected"; @@ -78040,9 +81390,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig} RerankConfig */ - RerankConfig.fromObject = function fromObject(object) { + RerankConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CatalogAttribute.FacetConfig.RerankConfig(); if (object.rerankFacet != null) message.rerankFacet = Boolean(object.rerankFacet); @@ -78237,7 +81591,7 @@ this.catalogAttributes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -78325,9 +81679,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AttributesConfig.decode = function decode(reader, length, error) { + AttributesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AttributesConfig(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -78351,13 +81709,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2alpha.CatalogAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.catalogAttributes, key); message.catalogAttributes[key] = value; break; } @@ -78366,7 +81726,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -78397,9 +81757,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AttributesConfig.verify = function verify(message) { + AttributesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -78408,7 +81772,7 @@ return "catalogAttributes: object expected"; var key = Object.keys(message.catalogAttributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.verify(message.catalogAttributes[key[i]]); + var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.verify(message.catalogAttributes[key[i]], long + 1); if (error) return "catalogAttributes." + error; } @@ -78433,9 +81797,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AttributesConfig} AttributesConfig */ - AttributesConfig.fromObject = function fromObject(object) { + AttributesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AttributesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AttributesConfig(); if (object.name != null) message.name = String(object.name); @@ -78444,9 +81812,11 @@ throw TypeError(".google.cloud.retail.v2alpha.AttributesConfig.catalogAttributes: object expected"); message.catalogAttributes = {}; for (var keys = Object.keys(object.catalogAttributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.catalogAttributes, keys[i]); if (typeof object.catalogAttributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.AttributesConfig.catalogAttributes: object expected"); - message.catalogAttributes[keys[i]] = $root.google.cloud.retail.v2alpha.CatalogAttribute.fromObject(object.catalogAttributes[keys[i]]); + message.catalogAttributes[keys[i]] = $root.google.cloud.retail.v2alpha.CatalogAttribute.fromObject(object.catalogAttributes[keys[i]], long + 1); } } switch (object.attributeConfigLevel) { @@ -78496,8 +81866,11 @@ var keys2; if (message.catalogAttributes && (keys2 = Object.keys(message.catalogAttributes)).length) { object.catalogAttributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.catalogAttributes, keys2[j]); object.catalogAttributes[keys2[j]] = $root.google.cloud.retail.v2alpha.CatalogAttribute.toObject(message.catalogAttributes[keys2[j]], options); + } } if (message.attributeConfigLevel != null && message.hasOwnProperty("attributeConfigLevel")) object.attributeConfigLevel = options.enums === String ? $root.google.cloud.retail.v2alpha.AttributeConfigLevel[message.attributeConfigLevel] === undefined ? message.attributeConfigLevel : $root.google.cloud.retail.v2alpha.AttributeConfigLevel[message.attributeConfigLevel] : message.attributeConfigLevel; @@ -78563,7 +81936,7 @@ function CompletionConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -78728,9 +82101,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionConfig.decode = function decode(reader, length, error) { + CompletionConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CompletionConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -78758,7 +82135,7 @@ break; } case 5: { - message.suggestionsInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.suggestionsInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -78766,7 +82143,7 @@ break; } case 7: { - message.denylistInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.denylistInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -78774,7 +82151,7 @@ break; } case 9: { - message.allowlistInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.allowlistInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -78782,7 +82159,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -78813,9 +82190,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionConfig.verify = function verify(message) { + CompletionConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -78832,7 +82213,7 @@ if (typeof message.autoLearning !== "boolean") return "autoLearning: boolean expected"; if (message.suggestionsInputConfig != null && message.hasOwnProperty("suggestionsInputConfig")) { - var error = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.verify(message.suggestionsInputConfig); + var error = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.verify(message.suggestionsInputConfig, long + 1); if (error) return "suggestionsInputConfig." + error; } @@ -78840,7 +82221,7 @@ if (!$util.isString(message.lastSuggestionsImportOperation)) return "lastSuggestionsImportOperation: string expected"; if (message.denylistInputConfig != null && message.hasOwnProperty("denylistInputConfig")) { - var error = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.verify(message.denylistInputConfig); + var error = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.verify(message.denylistInputConfig, long + 1); if (error) return "denylistInputConfig." + error; } @@ -78848,7 +82229,7 @@ if (!$util.isString(message.lastDenylistImportOperation)) return "lastDenylistImportOperation: string expected"; if (message.allowlistInputConfig != null && message.hasOwnProperty("allowlistInputConfig")) { - var error = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.verify(message.allowlistInputConfig); + var error = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.verify(message.allowlistInputConfig, long + 1); if (error) return "allowlistInputConfig." + error; } @@ -78866,9 +82247,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CompletionConfig} CompletionConfig */ - CompletionConfig.fromObject = function fromObject(object) { + CompletionConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CompletionConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CompletionConfig(); if (object.name != null) message.name = String(object.name); @@ -78883,21 +82268,21 @@ if (object.suggestionsInputConfig != null) { if (typeof object.suggestionsInputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompletionConfig.suggestionsInputConfig: object expected"); - message.suggestionsInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.fromObject(object.suggestionsInputConfig); + message.suggestionsInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.fromObject(object.suggestionsInputConfig, long + 1); } if (object.lastSuggestionsImportOperation != null) message.lastSuggestionsImportOperation = String(object.lastSuggestionsImportOperation); if (object.denylistInputConfig != null) { if (typeof object.denylistInputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompletionConfig.denylistInputConfig: object expected"); - message.denylistInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.fromObject(object.denylistInputConfig); + message.denylistInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.fromObject(object.denylistInputConfig, long + 1); } if (object.lastDenylistImportOperation != null) message.lastDenylistImportOperation = String(object.lastDenylistImportOperation); if (object.allowlistInputConfig != null) { if (typeof object.allowlistInputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompletionConfig.allowlistInputConfig: object expected"); - message.allowlistInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.fromObject(object.allowlistInputConfig); + message.allowlistInputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.fromObject(object.allowlistInputConfig, long + 1); } if (object.lastAllowlistImportOperation != null) message.lastAllowlistImportOperation = String(object.lastAllowlistImportOperation); @@ -79011,7 +82396,7 @@ this.feeds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -79128,9 +82513,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MerchantCenterLink.decode = function decode(reader, length, error) { + MerchantCenterLink.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.MerchantCenterLink(); while (reader.pos < end) { var tag = reader.uint32(); @@ -79162,11 +82551,11 @@ case 6: { if (!(message.feeds && message.feeds.length)) message.feeds = []; - message.feeds.push($root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter.decode(reader, reader.uint32())); + message.feeds.push($root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -79197,9 +82586,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MerchantCenterLink.verify = function verify(message) { + MerchantCenterLink.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.merchantCenterAccountId != null && message.hasOwnProperty("merchantCenterAccountId")) if (!$util.isInteger(message.merchantCenterAccountId) && !(message.merchantCenterAccountId && $util.isInteger(message.merchantCenterAccountId.low) && $util.isInteger(message.merchantCenterAccountId.high))) return "merchantCenterAccountId: integer|Long expected"; @@ -79223,7 +82616,7 @@ if (!Array.isArray(message.feeds)) return "feeds: array expected"; for (var i = 0; i < message.feeds.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter.verify(message.feeds[i]); + var error = $root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter.verify(message.feeds[i], long + 1); if (error) return "feeds." + error; } @@ -79239,9 +82632,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.MerchantCenterLink} MerchantCenterLink */ - MerchantCenterLink.fromObject = function fromObject(object) { + MerchantCenterLink.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.MerchantCenterLink) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.MerchantCenterLink(); if (object.merchantCenterAccountId != null) if ($util.Long) @@ -79272,7 +82669,7 @@ for (var i = 0; i < object.feeds.length; ++i) { if (typeof object.feeds[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.MerchantCenterLink.feeds: object expected"); - message.feeds[i] = $root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter.fromObject(object.feeds[i]); + message.feeds[i] = $root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter.fromObject(object.feeds[i], long + 1); } } return message; @@ -79380,7 +82777,7 @@ function MerchantCenterFeedFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -79465,9 +82862,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MerchantCenterFeedFilter.decode = function decode(reader, length, error) { + MerchantCenterFeedFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -79487,7 +82888,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -79518,9 +82919,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MerchantCenterFeedFilter.verify = function verify(message) { + MerchantCenterFeedFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.primaryFeedId != null && message.hasOwnProperty("primaryFeedId")) if (!$util.isInteger(message.primaryFeedId) && !(message.primaryFeedId && $util.isInteger(message.primaryFeedId.low) && $util.isInteger(message.primaryFeedId.high))) return "primaryFeedId: integer|Long expected"; @@ -79541,9 +82946,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.MerchantCenterFeedFilter} MerchantCenterFeedFilter */ - MerchantCenterFeedFilter.fromObject = function fromObject(object) { + MerchantCenterFeedFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.MerchantCenterFeedFilter(); if (object.primaryFeedId != null) if ($util.Long) @@ -79659,7 +83068,7 @@ this.links = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -79725,9 +83134,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MerchantCenterLinkingConfig.decode = function decode(reader, length, error) { + MerchantCenterLinkingConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -79737,11 +83150,11 @@ case 1: { if (!(message.links && message.links.length)) message.links = []; - message.links.push($root.google.cloud.retail.v2alpha.MerchantCenterLink.decode(reader, reader.uint32())); + message.links.push($root.google.cloud.retail.v2alpha.MerchantCenterLink.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -79772,14 +83185,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MerchantCenterLinkingConfig.verify = function verify(message) { + MerchantCenterLinkingConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.links != null && message.hasOwnProperty("links")) { if (!Array.isArray(message.links)) return "links: array expected"; for (var i = 0; i < message.links.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.MerchantCenterLink.verify(message.links[i]); + var error = $root.google.cloud.retail.v2alpha.MerchantCenterLink.verify(message.links[i], long + 1); if (error) return "links." + error; } @@ -79795,9 +83212,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.MerchantCenterLinkingConfig} MerchantCenterLinkingConfig */ - MerchantCenterLinkingConfig.fromObject = function fromObject(object) { + MerchantCenterLinkingConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig(); if (object.links) { if (!Array.isArray(object.links)) @@ -79806,7 +83227,7 @@ for (var i = 0; i < object.links.length; ++i) { if (typeof object.links[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.MerchantCenterLinkingConfig.links: object expected"); - message.links[i] = $root.google.cloud.retail.v2alpha.MerchantCenterLink.fromObject(object.links[i]); + message.links[i] = $root.google.cloud.retail.v2alpha.MerchantCenterLink.fromObject(object.links[i], long + 1); } } return message; @@ -79887,7 +83308,7 @@ function Catalog(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -79982,9 +83403,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Catalog.decode = function decode(reader, length, error) { + Catalog.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Catalog(); while (reader.pos < end) { var tag = reader.uint32(); @@ -80000,15 +83425,15 @@ break; } case 4: { - message.productLevelConfig = $root.google.cloud.retail.v2alpha.ProductLevelConfig.decode(reader, reader.uint32()); + message.productLevelConfig = $root.google.cloud.retail.v2alpha.ProductLevelConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.merchantCenterLinkingConfig = $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig.decode(reader, reader.uint32()); + message.merchantCenterLinkingConfig = $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -80039,9 +83464,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Catalog.verify = function verify(message) { + Catalog.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -80049,12 +83478,12 @@ if (!$util.isString(message.displayName)) return "displayName: string expected"; if (message.productLevelConfig != null && message.hasOwnProperty("productLevelConfig")) { - var error = $root.google.cloud.retail.v2alpha.ProductLevelConfig.verify(message.productLevelConfig); + var error = $root.google.cloud.retail.v2alpha.ProductLevelConfig.verify(message.productLevelConfig, long + 1); if (error) return "productLevelConfig." + error; } if (message.merchantCenterLinkingConfig != null && message.hasOwnProperty("merchantCenterLinkingConfig")) { - var error = $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig.verify(message.merchantCenterLinkingConfig); + var error = $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig.verify(message.merchantCenterLinkingConfig, long + 1); if (error) return "merchantCenterLinkingConfig." + error; } @@ -80069,9 +83498,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Catalog} Catalog */ - Catalog.fromObject = function fromObject(object) { + Catalog.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Catalog) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Catalog(); if (object.name != null) message.name = String(object.name); @@ -80080,12 +83513,12 @@ if (object.productLevelConfig != null) { if (typeof object.productLevelConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.Catalog.productLevelConfig: object expected"); - message.productLevelConfig = $root.google.cloud.retail.v2alpha.ProductLevelConfig.fromObject(object.productLevelConfig); + message.productLevelConfig = $root.google.cloud.retail.v2alpha.ProductLevelConfig.fromObject(object.productLevelConfig, long + 1); } if (object.merchantCenterLinkingConfig != null) { if (typeof object.merchantCenterLinkingConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.Catalog.merchantCenterLinkingConfig: object expected"); - message.merchantCenterLinkingConfig = $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig.fromObject(object.merchantCenterLinkingConfig); + message.merchantCenterLinkingConfig = $root.google.cloud.retail.v2alpha.MerchantCenterLinkingConfig.fromObject(object.merchantCenterLinkingConfig, long + 1); } return message; }; @@ -80171,7 +83604,7 @@ this.inputUris = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -80247,9 +83680,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsSource.decode = function decode(reader, length, error) { + GcsSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GcsSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -80267,7 +83704,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -80298,9 +83735,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsSource.verify = function verify(message) { + GcsSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.inputUris != null && message.hasOwnProperty("inputUris")) { if (!Array.isArray(message.inputUris)) return "inputUris: array expected"; @@ -80322,9 +83763,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GcsSource} GcsSource */ - GcsSource.fromObject = function fromObject(object) { + GcsSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GcsSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GcsSource(); if (object.inputUris) { if (!Array.isArray(object.inputUris)) @@ -80419,7 +83864,7 @@ function BigQuerySource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -80548,9 +83993,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQuerySource.decode = function decode(reader, length, error) { + BigQuerySource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.BigQuerySource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -80558,7 +84007,7 @@ break; switch (tag >>> 3) { case 6: { - message.partitionDate = $root.google.type.Date.decode(reader, reader.uint32()); + message.partitionDate = $root.google.type.Date.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -80582,7 +84031,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -80613,14 +84062,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQuerySource.verify = function verify(message) { + BigQuerySource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.partitionDate != null && message.hasOwnProperty("partitionDate")) { properties.partition = 1; { - var error = $root.google.type.Date.verify(message.partitionDate); + var error = $root.google.type.Date.verify(message.partitionDate, long + 1); if (error) return "partitionDate." + error; } @@ -80651,14 +84104,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.BigQuerySource} BigQuerySource */ - BigQuerySource.fromObject = function fromObject(object) { + BigQuerySource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.BigQuerySource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.BigQuerySource(); if (object.partitionDate != null) { if (typeof object.partitionDate !== "object") throw TypeError(".google.cloud.retail.v2alpha.BigQuerySource.partitionDate: object expected"); - message.partitionDate = $root.google.type.Date.fromObject(object.partitionDate); + message.partitionDate = $root.google.type.Date.fromObject(object.partitionDate, long + 1); } if (object.projectId != null) message.projectId = String(object.projectId); @@ -80761,7 +84218,7 @@ this.products = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -80827,9 +84284,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductInlineSource.decode = function decode(reader, length, error) { + ProductInlineSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ProductInlineSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -80839,11 +84300,11 @@ case 1: { if (!(message.products && message.products.length)) message.products = []; - message.products.push($root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32())); + message.products.push($root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -80874,14 +84335,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductInlineSource.verify = function verify(message) { + ProductInlineSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.products != null && message.hasOwnProperty("products")) { if (!Array.isArray(message.products)) return "products: array expected"; for (var i = 0; i < message.products.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.products[i]); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.products[i], long + 1); if (error) return "products." + error; } @@ -80897,9 +84362,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ProductInlineSource} ProductInlineSource */ - ProductInlineSource.fromObject = function fromObject(object) { + ProductInlineSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ProductInlineSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ProductInlineSource(); if (object.products) { if (!Array.isArray(object.products)) @@ -80908,7 +84377,7 @@ for (var i = 0; i < object.products.length; ++i) { if (typeof object.products[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ProductInlineSource.products: object expected"); - message.products[i] = $root.google.cloud.retail.v2alpha.Product.fromObject(object.products[i]); + message.products[i] = $root.google.cloud.retail.v2alpha.Product.fromObject(object.products[i], long + 1); } } return message; @@ -80987,7 +84456,7 @@ this.userEvents = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -81053,9 +84522,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventInlineSource.decode = function decode(reader, length, error) { + UserEventInlineSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UserEventInlineSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -81065,11 +84538,11 @@ case 1: { if (!(message.userEvents && message.userEvents.length)) message.userEvents = []; - message.userEvents.push($root.google.cloud.retail.v2alpha.UserEvent.decode(reader, reader.uint32())); + message.userEvents.push($root.google.cloud.retail.v2alpha.UserEvent.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -81100,14 +84573,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventInlineSource.verify = function verify(message) { + UserEventInlineSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userEvents != null && message.hasOwnProperty("userEvents")) { if (!Array.isArray(message.userEvents)) return "userEvents: array expected"; for (var i = 0; i < message.userEvents.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.UserEvent.verify(message.userEvents[i]); + var error = $root.google.cloud.retail.v2alpha.UserEvent.verify(message.userEvents[i], long + 1); if (error) return "userEvents." + error; } @@ -81123,9 +84600,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UserEventInlineSource} UserEventInlineSource */ - UserEventInlineSource.fromObject = function fromObject(object) { + UserEventInlineSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UserEventInlineSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UserEventInlineSource(); if (object.userEvents) { if (!Array.isArray(object.userEvents)) @@ -81134,7 +84615,7 @@ for (var i = 0; i < object.userEvents.length; ++i) { if (typeof object.userEvents[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEventInlineSource.userEvents: object expected"); - message.userEvents[i] = $root.google.cloud.retail.v2alpha.UserEvent.fromObject(object.userEvents[i]); + message.userEvents[i] = $root.google.cloud.retail.v2alpha.UserEvent.fromObject(object.userEvents[i], long + 1); } } return message; @@ -81212,7 +84693,7 @@ function ImportErrorsConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -81291,9 +84772,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportErrorsConfig.decode = function decode(reader, length, error) { + ImportErrorsConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ImportErrorsConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -81305,7 +84790,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -81336,9 +84821,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportErrorsConfig.verify = function verify(message) { + ImportErrorsConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsPrefix != null && message.hasOwnProperty("gcsPrefix")) { properties.destination = 1; @@ -81356,9 +84845,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ImportErrorsConfig} ImportErrorsConfig */ - ImportErrorsConfig.fromObject = function fromObject(object) { + ImportErrorsConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ImportErrorsConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ImportErrorsConfig(); if (object.gcsPrefix != null) message.gcsPrefix = String(object.gcsPrefix); @@ -81442,7 +84935,7 @@ function ImportProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -81577,9 +85070,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportProductsRequest.decode = function decode(reader, length, error) { + ImportProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ImportProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -81595,15 +85092,15 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2alpha.ProductInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2alpha.ProductInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -81619,7 +85116,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -81650,9 +85147,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportProductsRequest.verify = function verify(message) { + ImportProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -81660,17 +85161,17 @@ if (!$util.isString(message.requestId)) return "requestId: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2alpha.ProductInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2alpha.ProductInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -81700,9 +85201,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ImportProductsRequest} ImportProductsRequest */ - ImportProductsRequest.fromObject = function fromObject(object) { + ImportProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ImportProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ImportProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -81711,17 +85216,17 @@ if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportProductsRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2alpha.ProductInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2alpha.ProductInputConfig.fromObject(object.inputConfig, long + 1); } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportProductsRequest.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportProductsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } switch (object.reconciliationMode) { default: @@ -81859,7 +85364,7 @@ function ImportUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -81944,9 +85449,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportUserEventsRequest.decode = function decode(reader, length, error) { + ImportUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ImportUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -81958,15 +85467,15 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2alpha.UserEventInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2alpha.UserEventInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -81997,19 +85506,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportUserEventsRequest.verify = function verify(message) { + ImportUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2alpha.UserEventInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2alpha.UserEventInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } @@ -82024,21 +85537,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ImportUserEventsRequest} ImportUserEventsRequest */ - ImportUserEventsRequest.fromObject = function fromObject(object) { + ImportUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ImportUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ImportUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportUserEventsRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2alpha.UserEventInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2alpha.UserEventInputConfig.fromObject(object.inputConfig, long + 1); } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportUserEventsRequest.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } return message; }; @@ -82121,7 +85638,7 @@ function ImportCompletionDataRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -82206,9 +85723,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportCompletionDataRequest.decode = function decode(reader, length, error) { + ImportCompletionDataRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ImportCompletionDataRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -82220,7 +85741,7 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -82228,7 +85749,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -82259,14 +85780,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportCompletionDataRequest.verify = function verify(message) { + ImportCompletionDataRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } @@ -82284,16 +85809,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ImportCompletionDataRequest} ImportCompletionDataRequest */ - ImportCompletionDataRequest.fromObject = function fromObject(object) { + ImportCompletionDataRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ImportCompletionDataRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ImportCompletionDataRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportCompletionDataRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2alpha.CompletionDataInputConfig.fromObject(object.inputConfig, long + 1); } if (object.notificationPubsubTopic != null) message.notificationPubsubTopic = String(object.notificationPubsubTopic); @@ -82378,7 +85907,7 @@ function ProductInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -82477,9 +86006,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductInputConfig.decode = function decode(reader, length, error) { + ProductInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ProductInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -82487,19 +86020,19 @@ break; switch (tag >>> 3) { case 1: { - message.productInlineSource = $root.google.cloud.retail.v2alpha.ProductInlineSource.decode(reader, reader.uint32()); + message.productInlineSource = $root.google.cloud.retail.v2alpha.ProductInlineSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.gcsSource = $root.google.cloud.retail.v2alpha.GcsSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.retail.v2alpha.GcsSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -82530,14 +86063,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductInputConfig.verify = function verify(message) { + ProductInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.productInlineSource != null && message.hasOwnProperty("productInlineSource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2alpha.ProductInlineSource.verify(message.productInlineSource); + var error = $root.google.cloud.retail.v2alpha.ProductInlineSource.verify(message.productInlineSource, long + 1); if (error) return "productInlineSource." + error; } @@ -82547,7 +86084,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2alpha.GcsSource.verify(message.gcsSource); + var error = $root.google.cloud.retail.v2alpha.GcsSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -82557,7 +86094,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2alpha.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2alpha.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -82573,24 +86110,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ProductInputConfig} ProductInputConfig */ - ProductInputConfig.fromObject = function fromObject(object) { + ProductInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ProductInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ProductInputConfig(); if (object.productInlineSource != null) { if (typeof object.productInlineSource !== "object") throw TypeError(".google.cloud.retail.v2alpha.ProductInputConfig.productInlineSource: object expected"); - message.productInlineSource = $root.google.cloud.retail.v2alpha.ProductInlineSource.fromObject(object.productInlineSource); + message.productInlineSource = $root.google.cloud.retail.v2alpha.ProductInlineSource.fromObject(object.productInlineSource, long + 1); } if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.retail.v2alpha.ProductInputConfig.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.retail.v2alpha.GcsSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.retail.v2alpha.GcsSource.fromObject(object.gcsSource, long + 1); } if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2alpha.ProductInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -82677,7 +86218,7 @@ function UserEventInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -82776,9 +86317,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventInputConfig.decode = function decode(reader, length, error) { + UserEventInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UserEventInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -82786,19 +86331,19 @@ break; switch (tag >>> 3) { case 1: { - message.userEventInlineSource = $root.google.cloud.retail.v2alpha.UserEventInlineSource.decode(reader, reader.uint32()); + message.userEventInlineSource = $root.google.cloud.retail.v2alpha.UserEventInlineSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.gcsSource = $root.google.cloud.retail.v2alpha.GcsSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.retail.v2alpha.GcsSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -82829,14 +86374,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventInputConfig.verify = function verify(message) { + UserEventInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.userEventInlineSource != null && message.hasOwnProperty("userEventInlineSource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2alpha.UserEventInlineSource.verify(message.userEventInlineSource); + var error = $root.google.cloud.retail.v2alpha.UserEventInlineSource.verify(message.userEventInlineSource, long + 1); if (error) return "userEventInlineSource." + error; } @@ -82846,7 +86395,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2alpha.GcsSource.verify(message.gcsSource); + var error = $root.google.cloud.retail.v2alpha.GcsSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -82856,7 +86405,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2alpha.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2alpha.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -82872,24 +86421,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UserEventInputConfig} UserEventInputConfig */ - UserEventInputConfig.fromObject = function fromObject(object) { + UserEventInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UserEventInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UserEventInputConfig(); if (object.userEventInlineSource != null) { if (typeof object.userEventInlineSource !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEventInputConfig.userEventInlineSource: object expected"); - message.userEventInlineSource = $root.google.cloud.retail.v2alpha.UserEventInlineSource.fromObject(object.userEventInlineSource); + message.userEventInlineSource = $root.google.cloud.retail.v2alpha.UserEventInlineSource.fromObject(object.userEventInlineSource, long + 1); } if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEventInputConfig.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.retail.v2alpha.GcsSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.retail.v2alpha.GcsSource.fromObject(object.gcsSource, long + 1); } if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEventInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -82974,7 +86527,7 @@ function CompletionDataInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -83053,9 +86606,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionDataInputConfig.decode = function decode(reader, length, error) { + CompletionDataInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CompletionDataInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -83063,11 +86620,11 @@ break; switch (tag >>> 3) { case 1: { - message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -83098,14 +86655,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionDataInputConfig.verify = function verify(message) { + CompletionDataInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.bigQuerySource != null && message.hasOwnProperty("bigQuerySource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2alpha.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2alpha.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -83121,14 +86682,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CompletionDataInputConfig} CompletionDataInputConfig */ - CompletionDataInputConfig.fromObject = function fromObject(object) { + CompletionDataInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CompletionDataInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CompletionDataInputConfig(); if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompletionDataInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2alpha.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -83209,7 +86774,7 @@ function ImportMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -83334,9 +86899,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportMetadata.decode = function decode(reader, length, error) { + ImportMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ImportMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -83344,11 +86913,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -83368,11 +86937,11 @@ break; } case 7: { - message.transformedUserEventsMetadata = $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata.decode(reader, reader.uint32()); + message.transformedUserEventsMetadata = $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -83403,16 +86972,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportMetadata.verify = function verify(message) { + ImportMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -83429,7 +87002,7 @@ if (!$util.isString(message.notificationPubsubTopic)) return "notificationPubsubTopic: string expected"; if (message.transformedUserEventsMetadata != null && message.hasOwnProperty("transformedUserEventsMetadata")) { - var error = $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata.verify(message.transformedUserEventsMetadata); + var error = $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata.verify(message.transformedUserEventsMetadata, long + 1); if (error) return "transformedUserEventsMetadata." + error; } @@ -83444,19 +87017,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ImportMetadata} ImportMetadata */ - ImportMetadata.fromObject = function fromObject(object) { + ImportMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ImportMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ImportMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.successCount != null) if ($util.Long) @@ -83483,7 +87060,7 @@ if (object.transformedUserEventsMetadata != null) { if (typeof object.transformedUserEventsMetadata !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportMetadata.transformedUserEventsMetadata: object expected"); - message.transformedUserEventsMetadata = $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata.fromObject(object.transformedUserEventsMetadata); + message.transformedUserEventsMetadata = $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata.fromObject(object.transformedUserEventsMetadata, long + 1); } return message; }; @@ -83591,7 +87168,7 @@ function TransformedUserEventsMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -83666,9 +87243,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TransformedUserEventsMetadata.decode = function decode(reader, length, error) { + TransformedUserEventsMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -83684,7 +87265,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -83715,9 +87296,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TransformedUserEventsMetadata.verify = function verify(message) { + TransformedUserEventsMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.sourceEventsCount != null && message.hasOwnProperty("sourceEventsCount")) if (!$util.isInteger(message.sourceEventsCount) && !(message.sourceEventsCount && $util.isInteger(message.sourceEventsCount.low) && $util.isInteger(message.sourceEventsCount.high))) return "sourceEventsCount: integer|Long expected"; @@ -83735,9 +87320,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.TransformedUserEventsMetadata} TransformedUserEventsMetadata */ - TransformedUserEventsMetadata.fromObject = function fromObject(object) { + TransformedUserEventsMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.TransformedUserEventsMetadata(); if (object.sourceEventsCount != null) if ($util.Long) @@ -83849,7 +87438,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -83925,9 +87514,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportProductsResponse.decode = function decode(reader, length, error) { + ImportProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ImportProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -83937,15 +87530,15 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -83976,20 +87569,24 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportProductsResponse.verify = function verify(message) { + ImportProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } @@ -84004,9 +87601,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ImportProductsResponse} ImportProductsResponse */ - ImportProductsResponse.fromObject = function fromObject(object) { + ImportProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ImportProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ImportProductsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -84015,13 +87616,13 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportProductsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportProductsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } return message; }; @@ -84105,7 +87706,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -84191,9 +87792,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportUserEventsResponse.decode = function decode(reader, length, error) { + ImportUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ImportUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -84203,19 +87808,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.importSummary = $root.google.cloud.retail.v2alpha.UserEventImportSummary.decode(reader, reader.uint32()); + message.importSummary = $root.google.cloud.retail.v2alpha.UserEventImportSummary.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -84246,25 +87851,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportUserEventsResponse.verify = function verify(message) { + ImportUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.importSummary != null && message.hasOwnProperty("importSummary")) { - var error = $root.google.cloud.retail.v2alpha.UserEventImportSummary.verify(message.importSummary); + var error = $root.google.cloud.retail.v2alpha.UserEventImportSummary.verify(message.importSummary, long + 1); if (error) return "importSummary." + error; } @@ -84279,9 +87888,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ImportUserEventsResponse} ImportUserEventsResponse */ - ImportUserEventsResponse.fromObject = function fromObject(object) { + ImportUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ImportUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ImportUserEventsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -84290,18 +87903,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportUserEventsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportUserEventsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2alpha.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.importSummary != null) { if (typeof object.importSummary !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportUserEventsResponse.importSummary: object expected"); - message.importSummary = $root.google.cloud.retail.v2alpha.UserEventImportSummary.fromObject(object.importSummary); + message.importSummary = $root.google.cloud.retail.v2alpha.UserEventImportSummary.fromObject(object.importSummary, long + 1); } return message; }; @@ -84387,7 +88000,7 @@ function UserEventImportSummary(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -84462,9 +88075,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventImportSummary.decode = function decode(reader, length, error) { + UserEventImportSummary.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UserEventImportSummary(); while (reader.pos < end) { var tag = reader.uint32(); @@ -84480,7 +88097,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -84511,9 +88128,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventImportSummary.verify = function verify(message) { + UserEventImportSummary.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.joinedEventsCount != null && message.hasOwnProperty("joinedEventsCount")) if (!$util.isInteger(message.joinedEventsCount) && !(message.joinedEventsCount && $util.isInteger(message.joinedEventsCount.low) && $util.isInteger(message.joinedEventsCount.high))) return "joinedEventsCount: integer|Long expected"; @@ -84531,9 +88152,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UserEventImportSummary} UserEventImportSummary */ - UserEventImportSummary.fromObject = function fromObject(object) { + UserEventImportSummary.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UserEventImportSummary) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UserEventImportSummary(); if (object.joinedEventsCount != null) if ($util.Long) @@ -84644,7 +88269,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -84710,9 +88335,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportCompletionDataResponse.decode = function decode(reader, length, error) { + ImportCompletionDataResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ImportCompletionDataResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -84722,11 +88351,11 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -84757,14 +88386,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportCompletionDataResponse.verify = function verify(message) { + ImportCompletionDataResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } @@ -84780,9 +88413,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ImportCompletionDataResponse} ImportCompletionDataResponse */ - ImportCompletionDataResponse.fromObject = function fromObject(object) { + ImportCompletionDataResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ImportCompletionDataResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ImportCompletionDataResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -84791,7 +88428,7 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ImportCompletionDataResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } return message; @@ -84893,7 +88530,7 @@ this.pageCategories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -85164,9 +88801,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEvent.decode = function decode(reader, length, error) { + UserEvent.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UserEvent(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -85186,7 +88827,7 @@ break; } case 3: { - message.eventTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.eventTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -85202,11 +88843,11 @@ case 6: { if (!(message.productDetails && message.productDetails.length)) message.productDetails = []; - message.productDetails.push($root.google.cloud.retail.v2alpha.ProductDetail.decode(reader, reader.uint32())); + message.productDetails.push($root.google.cloud.retail.v2alpha.ProductDetail.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { - message.completionDetail = $root.google.cloud.retail.v2alpha.CompletionDetail.decode(reader, reader.uint32()); + message.completionDetail = $root.google.cloud.retail.v2alpha.CompletionDetail.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -85222,13 +88863,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2alpha.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -85237,7 +88880,7 @@ break; } case 9: { - message.purchaseTransaction = $root.google.cloud.retail.v2alpha.PurchaseTransaction.decode(reader, reader.uint32()); + message.purchaseTransaction = $root.google.cloud.retail.v2alpha.PurchaseTransaction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -85263,7 +88906,7 @@ break; } case 12: { - message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { @@ -85283,7 +88926,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -85314,9 +88957,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEvent.verify = function verify(message) { + UserEvent.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.eventType != null && message.hasOwnProperty("eventType")) if (!$util.isString(message.eventType)) return "eventType: string expected"; @@ -85327,7 +88974,7 @@ if (!$util.isString(message.sessionId)) return "sessionId: string expected"; if (message.eventTime != null && message.hasOwnProperty("eventTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.eventTime); + var error = $root.google.protobuf.Timestamp.verify(message.eventTime, long + 1); if (error) return "eventTime." + error; } @@ -85345,13 +88992,13 @@ if (!Array.isArray(message.productDetails)) return "productDetails: array expected"; for (var i = 0; i < message.productDetails.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.ProductDetail.verify(message.productDetails[i]); + var error = $root.google.cloud.retail.v2alpha.ProductDetail.verify(message.productDetails[i], long + 1); if (error) return "productDetails." + error; } } if (message.completionDetail != null && message.hasOwnProperty("completionDetail")) { - var error = $root.google.cloud.retail.v2alpha.CompletionDetail.verify(message.completionDetail); + var error = $root.google.cloud.retail.v2alpha.CompletionDetail.verify(message.completionDetail, long + 1); if (error) return "completionDetail." + error; } @@ -85360,7 +89007,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2alpha.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -85369,7 +89016,7 @@ if (!$util.isString(message.cartId)) return "cartId: string expected"; if (message.purchaseTransaction != null && message.hasOwnProperty("purchaseTransaction")) { - var error = $root.google.cloud.retail.v2alpha.PurchaseTransaction.verify(message.purchaseTransaction); + var error = $root.google.cloud.retail.v2alpha.PurchaseTransaction.verify(message.purchaseTransaction, long + 1); if (error) return "purchaseTransaction." + error; } @@ -85393,7 +89040,7 @@ return "pageCategories: string[] expected"; } if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2alpha.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2alpha.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } @@ -85420,9 +89067,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UserEvent} UserEvent */ - UserEvent.fromObject = function fromObject(object) { + UserEvent.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UserEvent) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UserEvent(); if (object.eventType != null) message.eventType = String(object.eventType); @@ -85433,7 +89084,7 @@ if (object.eventTime != null) { if (typeof object.eventTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEvent.eventTime: object expected"); - message.eventTime = $root.google.protobuf.Timestamp.fromObject(object.eventTime); + message.eventTime = $root.google.protobuf.Timestamp.fromObject(object.eventTime, long + 1); } if (object.experimentIds) { if (!Array.isArray(object.experimentIds)) @@ -85451,22 +89102,24 @@ for (var i = 0; i < object.productDetails.length; ++i) { if (typeof object.productDetails[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEvent.productDetails: object expected"); - message.productDetails[i] = $root.google.cloud.retail.v2alpha.ProductDetail.fromObject(object.productDetails[i]); + message.productDetails[i] = $root.google.cloud.retail.v2alpha.ProductDetail.fromObject(object.productDetails[i], long + 1); } } if (object.completionDetail != null) { if (typeof object.completionDetail !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEvent.completionDetail: object expected"); - message.completionDetail = $root.google.cloud.retail.v2alpha.CompletionDetail.fromObject(object.completionDetail); + message.completionDetail = $root.google.cloud.retail.v2alpha.CompletionDetail.fromObject(object.completionDetail, long + 1); } if (object.attributes) { if (typeof object.attributes !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEvent.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEvent.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2alpha.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2alpha.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.cartId != null) @@ -85474,7 +89127,7 @@ if (object.purchaseTransaction != null) { if (typeof object.purchaseTransaction !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEvent.purchaseTransaction: object expected"); - message.purchaseTransaction = $root.google.cloud.retail.v2alpha.PurchaseTransaction.fromObject(object.purchaseTransaction); + message.purchaseTransaction = $root.google.cloud.retail.v2alpha.PurchaseTransaction.fromObject(object.purchaseTransaction, long + 1); } if (object.searchQuery != null) message.searchQuery = String(object.searchQuery); @@ -85494,7 +89147,7 @@ if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2alpha.UserEvent.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.fromObject(object.userInfo, long + 1); } if (object.uri != null) message.uri = String(object.uri); @@ -85567,8 +89220,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2alpha.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.cartId != null && message.hasOwnProperty("cartId")) object.cartId = message.cartId; @@ -85654,7 +89310,7 @@ function ProductDetail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -85729,9 +89385,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductDetail.decode = function decode(reader, length, error) { + ProductDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ProductDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -85739,15 +89399,15 @@ break; switch (tag >>> 3) { case 1: { - message.product = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.quantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32()); + message.quantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -85778,16 +89438,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductDetail.verify = function verify(message) { + ProductDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.product); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.product, long + 1); if (error) return "product." + error; } if (message.quantity != null && message.hasOwnProperty("quantity")) { - var error = $root.google.protobuf.Int32Value.verify(message.quantity); + var error = $root.google.protobuf.Int32Value.verify(message.quantity, long + 1); if (error) return "quantity." + error; } @@ -85802,19 +89466,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ProductDetail} ProductDetail */ - ProductDetail.fromObject = function fromObject(object) { + ProductDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ProductDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ProductDetail(); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2alpha.ProductDetail.product: object expected"); - message.product = $root.google.cloud.retail.v2alpha.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2alpha.Product.fromObject(object.product, long + 1); } if (object.quantity != null) { if (typeof object.quantity !== "object") throw TypeError(".google.cloud.retail.v2alpha.ProductDetail.quantity: object expected"); - message.quantity = $root.google.protobuf.Int32Value.fromObject(object.quantity); + message.quantity = $root.google.protobuf.Int32Value.fromObject(object.quantity, long + 1); } return message; }; @@ -85894,7 +89562,7 @@ function CompletionDetail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -85979,9 +89647,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionDetail.decode = function decode(reader, length, error) { + CompletionDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CompletionDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -86001,7 +89673,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -86032,9 +89704,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionDetail.verify = function verify(message) { + CompletionDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionAttributionToken != null && message.hasOwnProperty("completionAttributionToken")) if (!$util.isString(message.completionAttributionToken)) return "completionAttributionToken: string expected"; @@ -86055,9 +89731,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CompletionDetail} CompletionDetail */ - CompletionDetail.fromObject = function fromObject(object) { + CompletionDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CompletionDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CompletionDetail(); if (object.completionAttributionToken != null) message.completionAttributionToken = String(object.completionAttributionToken); @@ -86148,7 +89828,7 @@ function PurchaseTransaction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -86253,9 +89933,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurchaseTransaction.decode = function decode(reader, length, error) { + PurchaseTransaction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PurchaseTransaction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -86283,7 +89967,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -86314,9 +89998,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurchaseTransaction.verify = function verify(message) { + PurchaseTransaction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -86343,9 +90031,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PurchaseTransaction} PurchaseTransaction */ - PurchaseTransaction.fromObject = function fromObject(object) { + PurchaseTransaction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PurchaseTransaction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PurchaseTransaction(); if (object.id != null) message.id = String(object.id); @@ -86875,7 +90567,7 @@ function ListCatalogsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -86960,9 +90652,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListCatalogsRequest.decode = function decode(reader, length, error) { + ListCatalogsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListCatalogsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -86982,7 +90678,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -87013,9 +90709,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListCatalogsRequest.verify = function verify(message) { + ListCatalogsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -87036,9 +90736,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListCatalogsRequest} ListCatalogsRequest */ - ListCatalogsRequest.fromObject = function fromObject(object) { + ListCatalogsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListCatalogsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListCatalogsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -87127,7 +90831,7 @@ this.catalogs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -87203,9 +90907,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListCatalogsResponse.decode = function decode(reader, length, error) { + ListCatalogsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListCatalogsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -87215,7 +90923,7 @@ case 1: { if (!(message.catalogs && message.catalogs.length)) message.catalogs = []; - message.catalogs.push($root.google.cloud.retail.v2alpha.Catalog.decode(reader, reader.uint32())); + message.catalogs.push($root.google.cloud.retail.v2alpha.Catalog.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -87223,7 +90931,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -87254,14 +90962,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListCatalogsResponse.verify = function verify(message) { + ListCatalogsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalogs != null && message.hasOwnProperty("catalogs")) { if (!Array.isArray(message.catalogs)) return "catalogs: array expected"; for (var i = 0; i < message.catalogs.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Catalog.verify(message.catalogs[i]); + var error = $root.google.cloud.retail.v2alpha.Catalog.verify(message.catalogs[i], long + 1); if (error) return "catalogs." + error; } @@ -87280,9 +90992,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListCatalogsResponse} ListCatalogsResponse */ - ListCatalogsResponse.fromObject = function fromObject(object) { + ListCatalogsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListCatalogsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListCatalogsResponse(); if (object.catalogs) { if (!Array.isArray(object.catalogs)) @@ -87291,7 +91007,7 @@ for (var i = 0; i < object.catalogs.length; ++i) { if (typeof object.catalogs[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListCatalogsResponse.catalogs: object expected"); - message.catalogs[i] = $root.google.cloud.retail.v2alpha.Catalog.fromObject(object.catalogs[i]); + message.catalogs[i] = $root.google.cloud.retail.v2alpha.Catalog.fromObject(object.catalogs[i], long + 1); } } if (object.nextPageToken != null) @@ -87376,7 +91092,7 @@ function UpdateCatalogRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -87451,9 +91167,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateCatalogRequest.decode = function decode(reader, length, error) { + UpdateCatalogRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateCatalogRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -87461,15 +91181,15 @@ break; switch (tag >>> 3) { case 1: { - message.catalog = $root.google.cloud.retail.v2alpha.Catalog.decode(reader, reader.uint32()); + message.catalog = $root.google.cloud.retail.v2alpha.Catalog.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -87500,16 +91220,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateCatalogRequest.verify = function verify(message) { + UpdateCatalogRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) { - var error = $root.google.cloud.retail.v2alpha.Catalog.verify(message.catalog); + var error = $root.google.cloud.retail.v2alpha.Catalog.verify(message.catalog, long + 1); if (error) return "catalog." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -87524,19 +91248,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateCatalogRequest} UpdateCatalogRequest */ - UpdateCatalogRequest.fromObject = function fromObject(object) { + UpdateCatalogRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateCatalogRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateCatalogRequest(); if (object.catalog != null) { if (typeof object.catalog !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateCatalogRequest.catalog: object expected"); - message.catalog = $root.google.cloud.retail.v2alpha.Catalog.fromObject(object.catalog); + message.catalog = $root.google.cloud.retail.v2alpha.Catalog.fromObject(object.catalog, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateCatalogRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -87617,7 +91345,7 @@ function SetDefaultBranchRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -87712,9 +91440,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetDefaultBranchRequest.decode = function decode(reader, length, error) { + SetDefaultBranchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SetDefaultBranchRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -87738,7 +91470,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -87769,9 +91501,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetDefaultBranchRequest.verify = function verify(message) { + SetDefaultBranchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -87795,9 +91531,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SetDefaultBranchRequest} SetDefaultBranchRequest */ - SetDefaultBranchRequest.fromObject = function fromObject(object) { + SetDefaultBranchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SetDefaultBranchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SetDefaultBranchRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -87889,7 +91629,7 @@ function GetDefaultBranchRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -87954,9 +91694,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetDefaultBranchRequest.decode = function decode(reader, length, error) { + GetDefaultBranchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetDefaultBranchRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -87968,7 +91712,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -87999,9 +91743,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetDefaultBranchRequest.verify = function verify(message) { + GetDefaultBranchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -88016,9 +91764,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetDefaultBranchRequest} GetDefaultBranchRequest */ - GetDefaultBranchRequest.fromObject = function fromObject(object) { + GetDefaultBranchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetDefaultBranchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetDefaultBranchRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -88096,7 +91848,7 @@ function GetDefaultBranchResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -88181,9 +91933,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetDefaultBranchResponse.decode = function decode(reader, length, error) { + GetDefaultBranchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetDefaultBranchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -88195,7 +91951,7 @@ break; } case 2: { - message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -88203,7 +91959,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -88234,14 +91990,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetDefaultBranchResponse.verify = function verify(message) { + GetDefaultBranchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.branch != null && message.hasOwnProperty("branch")) if (!$util.isString(message.branch)) return "branch: string expected"; if (message.setTime != null && message.hasOwnProperty("setTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.setTime); + var error = $root.google.protobuf.Timestamp.verify(message.setTime, long + 1); if (error) return "setTime." + error; } @@ -88259,16 +92019,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetDefaultBranchResponse} GetDefaultBranchResponse */ - GetDefaultBranchResponse.fromObject = function fromObject(object) { + GetDefaultBranchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetDefaultBranchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetDefaultBranchResponse(); if (object.branch != null) message.branch = String(object.branch); if (object.setTime != null) { if (typeof object.setTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.GetDefaultBranchResponse.setTime: object expected"); - message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime); + message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime, long + 1); } if (object.note != null) message.note = String(object.note); @@ -88351,7 +92115,7 @@ function GetCompletionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -88416,9 +92180,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCompletionConfigRequest.decode = function decode(reader, length, error) { + GetCompletionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetCompletionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -88430,7 +92198,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -88461,9 +92229,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetCompletionConfigRequest.verify = function verify(message) { + GetCompletionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -88478,9 +92250,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetCompletionConfigRequest} GetCompletionConfigRequest */ - GetCompletionConfigRequest.fromObject = function fromObject(object) { + GetCompletionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetCompletionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetCompletionConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -88557,7 +92333,7 @@ function UpdateCompletionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -88632,9 +92408,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateCompletionConfigRequest.decode = function decode(reader, length, error) { + UpdateCompletionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateCompletionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -88642,15 +92422,15 @@ break; switch (tag >>> 3) { case 1: { - message.completionConfig = $root.google.cloud.retail.v2alpha.CompletionConfig.decode(reader, reader.uint32()); + message.completionConfig = $root.google.cloud.retail.v2alpha.CompletionConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -88681,16 +92461,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateCompletionConfigRequest.verify = function verify(message) { + UpdateCompletionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionConfig != null && message.hasOwnProperty("completionConfig")) { - var error = $root.google.cloud.retail.v2alpha.CompletionConfig.verify(message.completionConfig); + var error = $root.google.cloud.retail.v2alpha.CompletionConfig.verify(message.completionConfig, long + 1); if (error) return "completionConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -88705,19 +92489,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateCompletionConfigRequest} UpdateCompletionConfigRequest */ - UpdateCompletionConfigRequest.fromObject = function fromObject(object) { + UpdateCompletionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateCompletionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateCompletionConfigRequest(); if (object.completionConfig != null) { if (typeof object.completionConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateCompletionConfigRequest.completionConfig: object expected"); - message.completionConfig = $root.google.cloud.retail.v2alpha.CompletionConfig.fromObject(object.completionConfig); + message.completionConfig = $root.google.cloud.retail.v2alpha.CompletionConfig.fromObject(object.completionConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateCompletionConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -88795,7 +92583,7 @@ function GetAttributesConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -88860,9 +92648,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetAttributesConfigRequest.decode = function decode(reader, length, error) { + GetAttributesConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetAttributesConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -88874,7 +92666,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -88905,9 +92697,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetAttributesConfigRequest.verify = function verify(message) { + GetAttributesConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -88922,9 +92718,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetAttributesConfigRequest} GetAttributesConfigRequest */ - GetAttributesConfigRequest.fromObject = function fromObject(object) { + GetAttributesConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetAttributesConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetAttributesConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -89001,7 +92801,7 @@ function UpdateAttributesConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -89076,9 +92876,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateAttributesConfigRequest.decode = function decode(reader, length, error) { + UpdateAttributesConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateAttributesConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -89086,15 +92890,15 @@ break; switch (tag >>> 3) { case 1: { - message.attributesConfig = $root.google.cloud.retail.v2alpha.AttributesConfig.decode(reader, reader.uint32()); + message.attributesConfig = $root.google.cloud.retail.v2alpha.AttributesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -89125,16 +92929,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateAttributesConfigRequest.verify = function verify(message) { + UpdateAttributesConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) { - var error = $root.google.cloud.retail.v2alpha.AttributesConfig.verify(message.attributesConfig); + var error = $root.google.cloud.retail.v2alpha.AttributesConfig.verify(message.attributesConfig, long + 1); if (error) return "attributesConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -89149,19 +92957,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateAttributesConfigRequest} UpdateAttributesConfigRequest */ - UpdateAttributesConfigRequest.fromObject = function fromObject(object) { + UpdateAttributesConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateAttributesConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateAttributesConfigRequest(); if (object.attributesConfig != null) { if (typeof object.attributesConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateAttributesConfigRequest.attributesConfig: object expected"); - message.attributesConfig = $root.google.cloud.retail.v2alpha.AttributesConfig.fromObject(object.attributesConfig); + message.attributesConfig = $root.google.cloud.retail.v2alpha.AttributesConfig.fromObject(object.attributesConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateAttributesConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -89240,7 +93052,7 @@ function AddCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -89315,9 +93127,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddCatalogAttributeRequest.decode = function decode(reader, length, error) { + AddCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AddCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -89329,11 +93145,11 @@ break; } case 2: { - message.catalogAttribute = $root.google.cloud.retail.v2alpha.CatalogAttribute.decode(reader, reader.uint32()); + message.catalogAttribute = $root.google.cloud.retail.v2alpha.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -89364,14 +93180,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddCatalogAttributeRequest.verify = function verify(message) { + AddCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; if (message.catalogAttribute != null && message.hasOwnProperty("catalogAttribute")) { - var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.verify(message.catalogAttribute); + var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.verify(message.catalogAttribute, long + 1); if (error) return "catalogAttribute." + error; } @@ -89386,16 +93206,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AddCatalogAttributeRequest} AddCatalogAttributeRequest */ - AddCatalogAttributeRequest.fromObject = function fromObject(object) { + AddCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AddCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AddCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); if (object.catalogAttribute != null) { if (typeof object.catalogAttribute !== "object") throw TypeError(".google.cloud.retail.v2alpha.AddCatalogAttributeRequest.catalogAttribute: object expected"); - message.catalogAttribute = $root.google.cloud.retail.v2alpha.CatalogAttribute.fromObject(object.catalogAttribute); + message.catalogAttribute = $root.google.cloud.retail.v2alpha.CatalogAttribute.fromObject(object.catalogAttribute, long + 1); } return message; }; @@ -89474,7 +93298,7 @@ function RemoveCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -89549,9 +93373,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveCatalogAttributeRequest.decode = function decode(reader, length, error) { + RemoveCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RemoveCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -89567,7 +93395,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -89598,9 +93426,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveCatalogAttributeRequest.verify = function verify(message) { + RemoveCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; @@ -89618,9 +93450,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RemoveCatalogAttributeRequest} RemoveCatalogAttributeRequest */ - RemoveCatalogAttributeRequest.fromObject = function fromObject(object) { + RemoveCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RemoveCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.RemoveCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); @@ -89704,7 +93540,7 @@ this.attributeKeys = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -89780,9 +93616,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchRemoveCatalogAttributesRequest.decode = function decode(reader, length, error) { + BatchRemoveCatalogAttributesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -89800,7 +93640,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -89831,9 +93671,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchRemoveCatalogAttributesRequest.verify = function verify(message) { + BatchRemoveCatalogAttributesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; @@ -89855,9 +93699,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesRequest} BatchRemoveCatalogAttributesRequest */ - BatchRemoveCatalogAttributesRequest.fromObject = function fromObject(object) { + BatchRemoveCatalogAttributesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); @@ -89950,7 +93798,7 @@ this.resetCatalogAttributes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -90027,9 +93875,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchRemoveCatalogAttributesResponse.decode = function decode(reader, length, error) { + BatchRemoveCatalogAttributesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -90049,7 +93901,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -90080,9 +93932,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchRemoveCatalogAttributesResponse.verify = function verify(message) { + BatchRemoveCatalogAttributesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deletedCatalogAttributes != null && message.hasOwnProperty("deletedCatalogAttributes")) { if (!Array.isArray(message.deletedCatalogAttributes)) return "deletedCatalogAttributes: array expected"; @@ -90108,9 +93964,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesResponse} BatchRemoveCatalogAttributesResponse */ - BatchRemoveCatalogAttributesResponse.fromObject = function fromObject(object) { + BatchRemoveCatalogAttributesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.BatchRemoveCatalogAttributesResponse(); if (object.deletedCatalogAttributes) { if (!Array.isArray(object.deletedCatalogAttributes)) @@ -90210,7 +94070,7 @@ function ReplaceCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -90295,9 +94155,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReplaceCatalogAttributeRequest.decode = function decode(reader, length, error) { + ReplaceCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -90309,15 +94173,15 @@ break; } case 2: { - message.catalogAttribute = $root.google.cloud.retail.v2alpha.CatalogAttribute.decode(reader, reader.uint32()); + message.catalogAttribute = $root.google.cloud.retail.v2alpha.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -90348,19 +94212,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReplaceCatalogAttributeRequest.verify = function verify(message) { + ReplaceCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; if (message.catalogAttribute != null && message.hasOwnProperty("catalogAttribute")) { - var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.verify(message.catalogAttribute); + var error = $root.google.cloud.retail.v2alpha.CatalogAttribute.verify(message.catalogAttribute, long + 1); if (error) return "catalogAttribute." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -90375,21 +94243,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest} ReplaceCatalogAttributeRequest */ - ReplaceCatalogAttributeRequest.fromObject = function fromObject(object) { + ReplaceCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); if (object.catalogAttribute != null) { if (typeof object.catalogAttribute !== "object") throw TypeError(".google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest.catalogAttribute: object expected"); - message.catalogAttribute = $root.google.cloud.retail.v2alpha.CatalogAttribute.fromObject(object.catalogAttribute); + message.catalogAttribute = $root.google.cloud.retail.v2alpha.CatalogAttribute.fromObject(object.catalogAttribute, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.ReplaceCatalogAttributeRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -90580,7 +94452,7 @@ this.languageCodes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -90726,9 +94598,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompleteQueryRequest.decode = function decode(reader, length, error) { + CompleteQueryRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CompleteQueryRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -90774,7 +94650,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -90805,9 +94681,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompleteQueryRequest.verify = function verify(message) { + CompleteQueryRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -90850,9 +94730,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CompleteQueryRequest} CompleteQueryRequest */ - CompleteQueryRequest.fromObject = function fromObject(object) { + CompleteQueryRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CompleteQueryRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CompleteQueryRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -90984,7 +94868,7 @@ this.attributeResults = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -91084,9 +94968,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompleteQueryResponse.decode = function decode(reader, length, error) { + CompleteQueryResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CompleteQueryResponse(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -91096,7 +94984,7 @@ case 1: { if (!(message.completionResults && message.completionResults.length)) message.completionResults = []; - message.completionResults.push($root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.decode(reader, reader.uint32())); + message.completionResults.push($root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -91106,7 +94994,7 @@ case 3: { if (!(message.recentSearchResults && message.recentSearchResults.length)) message.recentSearchResults = []; - message.recentSearchResults.push($root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult.decode(reader, reader.uint32())); + message.recentSearchResults.push($root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -91122,18 +95010,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributeResults, key); message.attributeResults[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -91164,14 +95054,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompleteQueryResponse.verify = function verify(message) { + CompleteQueryResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionResults != null && message.hasOwnProperty("completionResults")) { if (!Array.isArray(message.completionResults)) return "completionResults: array expected"; for (var i = 0; i < message.completionResults.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.verify(message.completionResults[i]); + var error = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.verify(message.completionResults[i], long + 1); if (error) return "completionResults." + error; } @@ -91183,7 +95077,7 @@ if (!Array.isArray(message.recentSearchResults)) return "recentSearchResults: array expected"; for (var i = 0; i < message.recentSearchResults.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult.verify(message.recentSearchResults[i]); + var error = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult.verify(message.recentSearchResults[i], long + 1); if (error) return "recentSearchResults." + error; } @@ -91193,7 +95087,7 @@ return "attributeResults: object expected"; var key = Object.keys(message.attributeResults); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult.verify(message.attributeResults[key[i]]); + var error = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult.verify(message.attributeResults[key[i]], long + 1); if (error) return "attributeResults." + error; } @@ -91209,9 +95103,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CompleteQueryResponse} CompleteQueryResponse */ - CompleteQueryResponse.fromObject = function fromObject(object) { + CompleteQueryResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CompleteQueryResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CompleteQueryResponse(); if (object.completionResults) { if (!Array.isArray(object.completionResults)) @@ -91220,7 +95118,7 @@ for (var i = 0; i < object.completionResults.length; ++i) { if (typeof object.completionResults[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompleteQueryResponse.completionResults: object expected"); - message.completionResults[i] = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.fromObject(object.completionResults[i]); + message.completionResults[i] = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.fromObject(object.completionResults[i], long + 1); } } if (object.attributionToken != null) @@ -91232,7 +95130,7 @@ for (var i = 0; i < object.recentSearchResults.length; ++i) { if (typeof object.recentSearchResults[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompleteQueryResponse.recentSearchResults: object expected"); - message.recentSearchResults[i] = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult.fromObject(object.recentSearchResults[i]); + message.recentSearchResults[i] = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult.fromObject(object.recentSearchResults[i], long + 1); } } if (object.attributeResults) { @@ -91240,9 +95138,11 @@ throw TypeError(".google.cloud.retail.v2alpha.CompleteQueryResponse.attributeResults: object expected"); message.attributeResults = {}; for (var keys = Object.keys(object.attributeResults), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributeResults, keys[i]); if (typeof object.attributeResults[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompleteQueryResponse.attributeResults: object expected"); - message.attributeResults[keys[i]] = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult.fromObject(object.attributeResults[keys[i]]); + message.attributeResults[keys[i]] = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult.fromObject(object.attributeResults[keys[i]], long + 1); } } return message; @@ -91284,8 +95184,11 @@ var keys2; if (message.attributeResults && (keys2 = Object.keys(message.attributeResults)).length) { object.attributeResults = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributeResults, keys2[j]); object.attributeResults[keys2[j]] = $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult.toObject(message.attributeResults[keys2[j]], options); + } } return object; }; @@ -91341,7 +95244,7 @@ this.facets = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -91440,9 +95343,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionResult.decode = function decode(reader, length, error) { + CompletionResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -91466,20 +95373,22 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2alpha.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } case 3: { if (!(message.facets && message.facets.length)) message.facets = []; - message.facets.push($root.google.cloud.retail.v2alpha.SearchResponse.Facet.decode(reader, reader.uint32())); + message.facets.push($root.google.cloud.retail.v2alpha.SearchResponse.Facet.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -91487,7 +95396,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -91518,9 +95427,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionResult.verify = function verify(message) { + CompletionResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.suggestion != null && message.hasOwnProperty("suggestion")) if (!$util.isString(message.suggestion)) return "suggestion: string expected"; @@ -91529,7 +95442,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2alpha.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -91538,7 +95451,7 @@ if (!Array.isArray(message.facets)) return "facets: array expected"; for (var i = 0; i < message.facets.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.verify(message.facets[i]); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.verify(message.facets[i], long + 1); if (error) return "facets." + error; } @@ -91557,9 +95470,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult} CompletionResult */ - CompletionResult.fromObject = function fromObject(object) { + CompletionResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult(); if (object.suggestion != null) message.suggestion = String(object.suggestion); @@ -91568,9 +95485,11 @@ throw TypeError(".google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2alpha.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2alpha.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.facets) { @@ -91580,7 +95499,7 @@ for (var i = 0; i < object.facets.length; ++i) { if (typeof object.facets[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.CompleteQueryResponse.CompletionResult.facets: object expected"); - message.facets[i] = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.fromObject(object.facets[i]); + message.facets[i] = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.fromObject(object.facets[i], long + 1); } } if (object.totalProductCount != null) @@ -91614,8 +95533,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2alpha.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.facets && message.facets.length) { object.facets = []; @@ -91676,7 +95598,7 @@ function RecentSearchResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -91741,9 +95663,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RecentSearchResult.decode = function decode(reader, length, error) { + RecentSearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -91755,7 +95681,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -91786,9 +95712,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RecentSearchResult.verify = function verify(message) { + RecentSearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.recentSearch != null && message.hasOwnProperty("recentSearch")) if (!$util.isString(message.recentSearch)) return "recentSearch: string expected"; @@ -91803,9 +95733,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult} RecentSearchResult */ - RecentSearchResult.fromObject = function fromObject(object) { + RecentSearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CompleteQueryResponse.RecentSearchResult(); if (object.recentSearch != null) message.recentSearch = String(object.recentSearch); @@ -91882,7 +95816,7 @@ this.suggestions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -91948,9 +95882,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AttributeResult.decode = function decode(reader, length, error) { + AttributeResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -91964,7 +95902,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -91995,9 +95933,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AttributeResult.verify = function verify(message) { + AttributeResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.suggestions != null && message.hasOwnProperty("suggestions")) { if (!Array.isArray(message.suggestions)) return "suggestions: array expected"; @@ -92016,9 +95958,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult} AttributeResult */ - AttributeResult.fromObject = function fromObject(object) { + AttributeResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CompleteQueryResponse.AttributeResult(); if (object.suggestions) { if (!Array.isArray(object.suggestions)) @@ -92174,7 +96120,7 @@ function ProductAttributeValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -92249,9 +96195,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductAttributeValue.decode = function decode(reader, length, error) { + ProductAttributeValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ProductAttributeValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -92267,7 +96217,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -92298,9 +96248,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductAttributeValue.verify = function verify(message) { + ProductAttributeValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -92318,9 +96272,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ProductAttributeValue} ProductAttributeValue */ - ProductAttributeValue.fromObject = function fromObject(object) { + ProductAttributeValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ProductAttributeValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ProductAttributeValue(); if (object.name != null) message.name = String(object.name); @@ -92403,7 +96361,7 @@ function ProductAttributeInterval(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -92478,9 +96436,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductAttributeInterval.decode = function decode(reader, length, error) { + ProductAttributeInterval.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ProductAttributeInterval(); while (reader.pos < end) { var tag = reader.uint32(); @@ -92492,11 +96454,11 @@ break; } case 2: { - message.interval = $root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32()); + message.interval = $root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -92527,14 +96489,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductAttributeInterval.verify = function verify(message) { + ProductAttributeInterval.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.interval != null && message.hasOwnProperty("interval")) { - var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.interval); + var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.interval, long + 1); if (error) return "interval." + error; } @@ -92549,16 +96515,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ProductAttributeInterval} ProductAttributeInterval */ - ProductAttributeInterval.fromObject = function fromObject(object) { + ProductAttributeInterval.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ProductAttributeInterval) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ProductAttributeInterval(); if (object.name != null) message.name = String(object.name); if (object.interval != null) { if (typeof object.interval !== "object") throw TypeError(".google.cloud.retail.v2alpha.ProductAttributeInterval.interval: object expected"); - message.interval = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.interval); + message.interval = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.interval, long + 1); } return message; }; @@ -92638,7 +96608,7 @@ function Tile(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -92737,9 +96707,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Tile.decode = function decode(reader, length, error) { + Tile.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Tile(); while (reader.pos < end) { var tag = reader.uint32(); @@ -92747,11 +96721,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.productAttributeInterval = $root.google.cloud.retail.v2alpha.ProductAttributeInterval.decode(reader, reader.uint32()); + message.productAttributeInterval = $root.google.cloud.retail.v2alpha.ProductAttributeInterval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -92759,7 +96733,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -92790,14 +96764,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Tile.verify = function verify(message) { + Tile.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { properties.productAttribute = 1; { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -92807,7 +96785,7 @@ return "productAttribute: multiple values"; properties.productAttribute = 1; { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeInterval.verify(message.productAttributeInterval); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeInterval.verify(message.productAttributeInterval, long + 1); if (error) return "productAttributeInterval." + error; } @@ -92826,19 +96804,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Tile} Tile */ - Tile.fromObject = function fromObject(object) { + Tile.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Tile) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Tile(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2alpha.Tile.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } if (object.productAttributeInterval != null) { if (typeof object.productAttributeInterval !== "object") throw TypeError(".google.cloud.retail.v2alpha.Tile.productAttributeInterval: object expected"); - message.productAttributeInterval = $root.google.cloud.retail.v2alpha.ProductAttributeInterval.fromObject(object.productAttributeInterval); + message.productAttributeInterval = $root.google.cloud.retail.v2alpha.ProductAttributeInterval.fromObject(object.productAttributeInterval, long + 1); } if (object.representativeProductId != null) message.representativeProductId = String(object.representativeProductId); @@ -92958,7 +96940,7 @@ this.userAttributes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -93329,9 +97311,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchRequest.decode = function decode(reader, length, error) { + SearchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -93355,7 +97341,7 @@ break; } case 5: { - message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -93385,19 +97371,19 @@ case 12: { if (!(message.facetSpecs && message.facetSpecs.length)) message.facetSpecs = []; - message.facetSpecs.push($root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.decode(reader, reader.uint32())); + message.facetSpecs.push($root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.dynamicFacetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32()); + message.dynamicFacetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.boostSpec = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.decode(reader, reader.uint32()); + message.boostSpec = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.queryExpansionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec.decode(reader, reader.uint32()); + message.queryExpansionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { @@ -93425,7 +97411,7 @@ break; } case 32: { - message.personalizationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32()); + message.personalizationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 34: { @@ -93444,15 +97430,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } case 35: { - message.spellCorrectionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec.decode(reader, reader.uint32()); + message.spellCorrectionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 38: { @@ -93460,11 +97448,11 @@ break; } case 40: { - message.conversationalSearchSpec = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.decode(reader, reader.uint32()); + message.conversationalSearchSpec = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 41: { - message.tileNavigationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec.decode(reader, reader.uint32()); + message.tileNavigationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 43: { @@ -93492,18 +97480,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2alpha.StringList.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.StringList.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.userAttributes, key); message.userAttributes[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -93534,9 +97524,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchRequest.verify = function verify(message) { + SearchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) @@ -93551,7 +97545,7 @@ if (!$util.isString(message.visitorId)) return "visitorId: string expected"; if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2alpha.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2alpha.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } @@ -93577,23 +97571,23 @@ if (!Array.isArray(message.facetSpecs)) return "facetSpecs: array expected"; for (var i = 0; i < message.facetSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.verify(message.facetSpecs[i]); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.verify(message.facetSpecs[i], long + 1); if (error) return "facetSpecs." + error; } } if (message.dynamicFacetSpec != null && message.hasOwnProperty("dynamicFacetSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec, long + 1); if (error) return "dynamicFacetSpec." + error; } if (message.boostSpec != null && message.hasOwnProperty("boostSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.verify(message.boostSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.verify(message.boostSpec, long + 1); if (error) return "boostSpec." + error; } if (message.queryExpansionSpec != null && message.hasOwnProperty("queryExpansionSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec.verify(message.queryExpansionSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec.verify(message.queryExpansionSpec, long + 1); if (error) return "queryExpansionSpec." + error; } @@ -93635,7 +97629,7 @@ break; } if (message.personalizationSpec != null && message.hasOwnProperty("personalizationSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec, long + 1); if (error) return "personalizationSpec." + error; } @@ -93650,7 +97644,7 @@ if (message.spellCorrectionSpec != null && message.hasOwnProperty("spellCorrectionSpec")) { properties._spellCorrectionSpec = 1; { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec.verify(message.spellCorrectionSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec.verify(message.spellCorrectionSpec, long + 1); if (error) return "spellCorrectionSpec." + error; } @@ -93659,12 +97653,12 @@ if (!$util.isString(message.entity)) return "entity: string expected"; if (message.conversationalSearchSpec != null && message.hasOwnProperty("conversationalSearchSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.verify(message.conversationalSearchSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.verify(message.conversationalSearchSpec, long + 1); if (error) return "conversationalSearchSpec." + error; } if (message.tileNavigationSpec != null && message.hasOwnProperty("tileNavigationSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec.verify(message.tileNavigationSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec.verify(message.tileNavigationSpec, long + 1); if (error) return "tileNavigationSpec." + error; } @@ -93682,7 +97676,7 @@ return "userAttributes: object expected"; var key = Object.keys(message.userAttributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.StringList.verify(message.userAttributes[key[i]]); + var error = $root.google.cloud.retail.v2alpha.StringList.verify(message.userAttributes[key[i]], long + 1); if (error) return "userAttributes." + error; } @@ -93698,9 +97692,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest} SearchRequest */ - SearchRequest.fromObject = function fromObject(object) { + SearchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest(); if (object.placement != null) message.placement = String(object.placement); @@ -93713,7 +97711,7 @@ if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.fromObject(object.userInfo, long + 1); } if (object.pageSize != null) message.pageSize = object.pageSize | 0; @@ -93734,23 +97732,23 @@ for (var i = 0; i < object.facetSpecs.length; ++i) { if (typeof object.facetSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.facetSpecs: object expected"); - message.facetSpecs[i] = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.fromObject(object.facetSpecs[i]); + message.facetSpecs[i] = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.fromObject(object.facetSpecs[i], long + 1); } } if (object.dynamicFacetSpec != null) { if (typeof object.dynamicFacetSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.dynamicFacetSpec: object expected"); - message.dynamicFacetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec); + message.dynamicFacetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec, long + 1); } if (object.boostSpec != null) { if (typeof object.boostSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.boostSpec: object expected"); - message.boostSpec = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.fromObject(object.boostSpec); + message.boostSpec = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.fromObject(object.boostSpec, long + 1); } if (object.queryExpansionSpec != null) { if (typeof object.queryExpansionSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.queryExpansionSpec: object expected"); - message.queryExpansionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec.fromObject(object.queryExpansionSpec); + message.queryExpansionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec.fromObject(object.queryExpansionSpec, long + 1); } switch (object.relevanceThreshold) { default: @@ -93819,31 +97817,34 @@ if (object.personalizationSpec != null) { if (typeof object.personalizationSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.personalizationSpec: object expected"); - message.personalizationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec); + message.personalizationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec, long + 1); } if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.spellCorrectionSpec != null) { if (typeof object.spellCorrectionSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.spellCorrectionSpec: object expected"); - message.spellCorrectionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec.fromObject(object.spellCorrectionSpec); + message.spellCorrectionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec.fromObject(object.spellCorrectionSpec, long + 1); } if (object.entity != null) message.entity = String(object.entity); if (object.conversationalSearchSpec != null) { if (typeof object.conversationalSearchSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.conversationalSearchSpec: object expected"); - message.conversationalSearchSpec = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.fromObject(object.conversationalSearchSpec); + message.conversationalSearchSpec = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.fromObject(object.conversationalSearchSpec, long + 1); } if (object.tileNavigationSpec != null) { if (typeof object.tileNavigationSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.tileNavigationSpec: object expected"); - message.tileNavigationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec.fromObject(object.tileNavigationSpec); + message.tileNavigationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec.fromObject(object.tileNavigationSpec, long + 1); } if (object.languageCode != null) message.languageCode = String(object.languageCode); @@ -93856,9 +97857,11 @@ throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.userAttributes: object expected"); message.userAttributes = {}; for (var keys = Object.keys(object.userAttributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.userAttributes, keys[i]); if (typeof object.userAttributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.userAttributes: object expected"); - message.userAttributes[keys[i]] = $root.google.cloud.retail.v2alpha.StringList.fromObject(object.userAttributes[keys[i]]); + message.userAttributes[keys[i]] = $root.google.cloud.retail.v2alpha.StringList.fromObject(object.userAttributes[keys[i]], long + 1); } } return message; @@ -93966,8 +97969,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.spellCorrectionSpec != null && message.hasOwnProperty("spellCorrectionSpec")) { object.spellCorrectionSpec = $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec.toObject(message.spellCorrectionSpec, options); @@ -93988,8 +97994,11 @@ object.placeId = message.placeId; if (message.userAttributes && (keys2 = Object.keys(message.userAttributes)).length) { object.userAttributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.userAttributes, keys2[j]); object.userAttributes[keys2[j]] = $root.google.cloud.retail.v2alpha.StringList.toObject(message.userAttributes[keys2[j]], options); + } } return object; }; @@ -94044,7 +98053,7 @@ this.excludedFilterKeys = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -94140,9 +98149,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetSpec.decode = function decode(reader, length, error) { + FacetSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -94150,7 +98163,7 @@ break; switch (tag >>> 3) { case 1: { - message.facetKey = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.decode(reader, reader.uint32()); + message.facetKey = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -94168,7 +98181,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -94199,11 +98212,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetSpec.verify = function verify(message) { + FacetSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetKey != null && message.hasOwnProperty("facetKey")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.verify(message.facetKey); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.verify(message.facetKey, long + 1); if (error) return "facetKey." + error; } @@ -94231,14 +98248,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.FacetSpec} FacetSpec */ - FacetSpec.fromObject = function fromObject(object) { + FacetSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec(); if (object.facetKey != null) { if (typeof object.facetKey !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.FacetSpec.facetKey: object expected"); - message.facetKey = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.fromObject(object.facetKey); + message.facetKey = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.fromObject(object.facetKey, long + 1); } if (object.limit != null) message.limit = object.limit | 0; @@ -94346,7 +98367,7 @@ this.contains = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -94495,9 +98516,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetKey.decode = function decode(reader, length, error) { + FacetKey.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey(); while (reader.pos < end) { var tag = reader.uint32(); @@ -94511,7 +98536,7 @@ case 2: { if (!(message.intervals && message.intervals.length)) message.intervals = []; - message.intervals.push($root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32())); + message.intervals.push($root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -94549,7 +98574,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -94580,9 +98605,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetKey.verify = function verify(message) { + FacetKey.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -94590,7 +98619,7 @@ if (!Array.isArray(message.intervals)) return "intervals: array expected"; for (var i = 0; i < message.intervals.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.intervals[i]); + var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.intervals[i], long + 1); if (error) return "intervals." + error; } @@ -94639,9 +98668,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey} FacetKey */ - FacetKey.fromObject = function fromObject(object) { + FacetKey.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey(); if (object.key != null) message.key = String(object.key); @@ -94652,7 +98685,7 @@ for (var i = 0; i < object.intervals.length; ++i) { if (typeof object.intervals[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.FacetSpec.FacetKey.intervals: object expected"); - message.intervals[i] = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.intervals[i]); + message.intervals[i] = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.intervals[i], long + 1); } } if (object.restrictedValues) { @@ -94798,7 +98831,7 @@ function DynamicFacetSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -94863,9 +98896,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DynamicFacetSpec.decode = function decode(reader, length, error) { + DynamicFacetSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -94877,7 +98914,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -94908,9 +98945,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DynamicFacetSpec.verify = function verify(message) { + DynamicFacetSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -94931,9 +98972,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec} DynamicFacetSpec */ - DynamicFacetSpec.fromObject = function fromObject(object) { + DynamicFacetSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec(); switch (object.mode) { default: @@ -95045,7 +99090,7 @@ this.conditionBoostSpecs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -95130,9 +99175,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BoostSpec.decode = function decode(reader, length, error) { + BoostSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -95142,7 +99191,7 @@ case 1: { if (!(message.conditionBoostSpecs && message.conditionBoostSpecs.length)) message.conditionBoostSpecs = []; - message.conditionBoostSpecs.push($root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32())); + message.conditionBoostSpecs.push($root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -95150,7 +99199,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -95181,15 +99230,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BoostSpec.verify = function verify(message) { + BoostSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.conditionBoostSpecs != null && message.hasOwnProperty("conditionBoostSpecs")) { if (!Array.isArray(message.conditionBoostSpecs)) return "conditionBoostSpecs: array expected"; for (var i = 0; i < message.conditionBoostSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.conditionBoostSpecs[i]); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.conditionBoostSpecs[i], long + 1); if (error) return "conditionBoostSpecs." + error; } @@ -95210,9 +99263,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.BoostSpec} BoostSpec */ - BoostSpec.fromObject = function fromObject(object) { + BoostSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec(); if (object.conditionBoostSpecs) { if (!Array.isArray(object.conditionBoostSpecs)) @@ -95221,7 +99278,7 @@ for (var i = 0; i < object.conditionBoostSpecs.length; ++i) { if (typeof object.conditionBoostSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.BoostSpec.conditionBoostSpecs: object expected"); - message.conditionBoostSpecs[i] = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.conditionBoostSpecs[i]); + message.conditionBoostSpecs[i] = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.conditionBoostSpecs[i], long + 1); } } if (object.skipBoostSpecValidation != null) @@ -95304,7 +99361,7 @@ function ConditionBoostSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -95379,9 +99436,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConditionBoostSpec.decode = function decode(reader, length, error) { + ConditionBoostSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -95397,7 +99458,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -95428,9 +99489,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConditionBoostSpec.verify = function verify(message) { + ConditionBoostSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.condition != null && message.hasOwnProperty("condition")) if (!$util.isString(message.condition)) return "condition: string expected"; @@ -95448,9 +99513,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec} ConditionBoostSpec */ - ConditionBoostSpec.fromObject = function fromObject(object) { + ConditionBoostSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec(); if (object.condition != null) message.condition = String(object.condition); @@ -95536,7 +99605,7 @@ function QueryExpansionSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -95611,9 +99680,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryExpansionSpec.decode = function decode(reader, length, error) { + QueryExpansionSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -95629,7 +99702,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -95660,9 +99733,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryExpansionSpec.verify = function verify(message) { + QueryExpansionSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.condition != null && message.hasOwnProperty("condition")) switch (message.condition) { default: @@ -95686,9 +99763,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec} QueryExpansionSpec */ - QueryExpansionSpec.fromObject = function fromObject(object) { + QueryExpansionSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.QueryExpansionSpec(); switch (object.condition) { default: @@ -95804,7 +99885,7 @@ function PersonalizationSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -95869,9 +99950,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PersonalizationSpec.decode = function decode(reader, length, error) { + PersonalizationSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -95883,7 +99968,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -95914,9 +99999,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PersonalizationSpec.verify = function verify(message) { + PersonalizationSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -95937,9 +100026,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec} PersonalizationSpec */ - PersonalizationSpec.fromObject = function fromObject(object) { + PersonalizationSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec(); switch (object.mode) { default: @@ -96049,7 +100142,7 @@ function SpellCorrectionSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -96114,9 +100207,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SpellCorrectionSpec.decode = function decode(reader, length, error) { + SpellCorrectionSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -96128,7 +100225,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -96159,9 +100256,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SpellCorrectionSpec.verify = function verify(message) { + SpellCorrectionSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -96182,9 +100283,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec} SpellCorrectionSpec */ - SpellCorrectionSpec.fromObject = function fromObject(object) { + SpellCorrectionSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.SpellCorrectionSpec(); switch (object.mode) { default: @@ -96296,7 +100401,7 @@ function ConversationalSearchSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -96381,9 +100486,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchSpec.decode = function decode(reader, length, error) { + ConversationalSearchSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -96399,11 +100508,11 @@ break; } case 3: { - message.userAnswer = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.decode(reader, reader.uint32()); + message.userAnswer = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -96434,9 +100543,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchSpec.verify = function verify(message) { + ConversationalSearchSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupConversationRequested != null && message.hasOwnProperty("followupConversationRequested")) if (typeof message.followupConversationRequested !== "boolean") return "followupConversationRequested: boolean expected"; @@ -96444,7 +100557,7 @@ if (!$util.isString(message.conversationId)) return "conversationId: string expected"; if (message.userAnswer != null && message.hasOwnProperty("userAnswer")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.verify(message.userAnswer); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.verify(message.userAnswer, long + 1); if (error) return "userAnswer." + error; } @@ -96459,9 +100572,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec} ConversationalSearchSpec */ - ConversationalSearchSpec.fromObject = function fromObject(object) { + ConversationalSearchSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec(); if (object.followupConversationRequested != null) message.followupConversationRequested = Boolean(object.followupConversationRequested); @@ -96470,7 +100587,7 @@ if (object.userAnswer != null) { if (typeof object.userAnswer !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.userAnswer: object expected"); - message.userAnswer = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.fromObject(object.userAnswer); + message.userAnswer = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.fromObject(object.userAnswer, long + 1); } return message; }; @@ -96549,7 +100666,7 @@ function UserAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -96638,9 +100755,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserAnswer.decode = function decode(reader, length, error) { + UserAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -96652,11 +100773,11 @@ break; } case 2: { - message.selectedAnswer = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.decode(reader, reader.uint32()); + message.selectedAnswer = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -96687,9 +100808,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserAnswer.verify = function verify(message) { + UserAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.textAnswer != null && message.hasOwnProperty("textAnswer")) { properties.type = 1; @@ -96701,7 +100826,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.verify(message.selectedAnswer); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.verify(message.selectedAnswer, long + 1); if (error) return "selectedAnswer." + error; } @@ -96717,16 +100842,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer} UserAnswer */ - UserAnswer.fromObject = function fromObject(object) { + UserAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer(); if (object.textAnswer != null) message.textAnswer = String(object.textAnswer); if (object.selectedAnswer != null) { if (typeof object.selectedAnswer !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.selectedAnswer: object expected"); - message.selectedAnswer = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer); + message.selectedAnswer = $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer, long + 1); } return message; }; @@ -96805,7 +100934,7 @@ this.productAttributeValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -96881,9 +101010,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectedAnswer.decode = function decode(reader, length, error) { + SelectedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -96893,15 +101026,15 @@ case 1: { if (!(message.productAttributeValues && message.productAttributeValues.length)) message.productAttributeValues = []; - message.productAttributeValues.push($root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32())); + message.productAttributeValues.push($root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -96932,20 +101065,24 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectedAnswer.verify = function verify(message) { + SelectedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValues != null && message.hasOwnProperty("productAttributeValues")) { if (!Array.isArray(message.productAttributeValues)) return "productAttributeValues: array expected"; for (var i = 0; i < message.productAttributeValues.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValues[i]); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValues[i], long + 1); if (error) return "productAttributeValues." + error; } } if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -96960,9 +101097,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer} SelectedAnswer */ - SelectedAnswer.fromObject = function fromObject(object) { + SelectedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer(); if (object.productAttributeValues) { if (!Array.isArray(object.productAttributeValues)) @@ -96971,13 +101112,13 @@ for (var i = 0; i < object.productAttributeValues.length; ++i) { if (typeof object.productAttributeValues[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.productAttributeValues: object expected"); - message.productAttributeValues[i] = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValues[i]); + message.productAttributeValues[i] = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValues[i], long + 1); } } if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -97066,7 +101207,7 @@ this.appliedTiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -97142,9 +101283,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TileNavigationSpec.decode = function decode(reader, length, error) { + TileNavigationSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -97158,11 +101303,11 @@ case 2: { if (!(message.appliedTiles && message.appliedTiles.length)) message.appliedTiles = []; - message.appliedTiles.push($root.google.cloud.retail.v2alpha.Tile.decode(reader, reader.uint32())); + message.appliedTiles.push($root.google.cloud.retail.v2alpha.Tile.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -97193,9 +101338,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TileNavigationSpec.verify = function verify(message) { + TileNavigationSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tileNavigationRequested != null && message.hasOwnProperty("tileNavigationRequested")) if (typeof message.tileNavigationRequested !== "boolean") return "tileNavigationRequested: boolean expected"; @@ -97203,7 +101352,7 @@ if (!Array.isArray(message.appliedTiles)) return "appliedTiles: array expected"; for (var i = 0; i < message.appliedTiles.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Tile.verify(message.appliedTiles[i]); + var error = $root.google.cloud.retail.v2alpha.Tile.verify(message.appliedTiles[i], long + 1); if (error) return "appliedTiles." + error; } @@ -97219,9 +101368,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec} TileNavigationSpec */ - TileNavigationSpec.fromObject = function fromObject(object) { + TileNavigationSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec(); if (object.tileNavigationRequested != null) message.tileNavigationRequested = Boolean(object.tileNavigationRequested); @@ -97232,7 +101385,7 @@ for (var i = 0; i < object.appliedTiles.length; ++i) { if (typeof object.appliedTiles[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchRequest.TileNavigationSpec.appliedTiles: object expected"); - message.appliedTiles[i] = $root.google.cloud.retail.v2alpha.Tile.fromObject(object.appliedTiles[i]); + message.appliedTiles[i] = $root.google.cloud.retail.v2alpha.Tile.fromObject(object.appliedTiles[i], long + 1); } } return message; @@ -97371,7 +101524,7 @@ this.experimentInfo = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -97571,9 +101724,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchResponse.decode = function decode(reader, length, error) { + SearchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -97583,13 +101740,13 @@ case 1: { if (!(message.results && message.results.length)) message.results = []; - message.results.push($root.google.cloud.retail.v2alpha.SearchResponse.SearchResult.decode(reader, reader.uint32())); + message.results.push($root.google.cloud.retail.v2alpha.SearchResponse.SearchResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.facets && message.facets.length)) message.facets = []; - message.facets.push($root.google.cloud.retail.v2alpha.SearchResponse.Facet.decode(reader, reader.uint32())); + message.facets.push($root.google.cloud.retail.v2alpha.SearchResponse.Facet.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -97609,7 +101766,7 @@ break; } case 7: { - message.queryExpansionInfo = $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo.decode(reader, reader.uint32()); + message.queryExpansionInfo = $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -97623,31 +101780,31 @@ break; } case 22: { - message.pinControlMetadata = $root.google.cloud.retail.v2alpha.PinControlMetadata.decode(reader, reader.uint32()); + message.pinControlMetadata = $root.google.cloud.retail.v2alpha.PinControlMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { if (!(message.invalidConditionBoostSpecs && message.invalidConditionBoostSpecs.length)) message.invalidConditionBoostSpecs = []; - message.invalidConditionBoostSpecs.push($root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32())); + message.invalidConditionBoostSpecs.push($root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 17: { if (!(message.experimentInfo && message.experimentInfo.length)) message.experimentInfo = []; - message.experimentInfo.push($root.google.cloud.retail.v2alpha.ExperimentInfo.decode(reader, reader.uint32())); + message.experimentInfo.push($root.google.cloud.retail.v2alpha.ExperimentInfo.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 18: { - message.conversationalSearchResult = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.decode(reader, reader.uint32()); + message.conversationalSearchResult = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { - message.tileNavigationResult = $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult.decode(reader, reader.uint32()); + message.tileNavigationResult = $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -97678,14 +101835,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchResponse.verify = function verify(message) { + SearchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.results != null && message.hasOwnProperty("results")) { if (!Array.isArray(message.results)) return "results: array expected"; for (var i = 0; i < message.results.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.SearchResult.verify(message.results[i]); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.SearchResult.verify(message.results[i], long + 1); if (error) return "results." + error; } @@ -97694,7 +101855,7 @@ if (!Array.isArray(message.facets)) return "facets: array expected"; for (var i = 0; i < message.facets.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.verify(message.facets[i]); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.verify(message.facets[i], long + 1); if (error) return "facets." + error; } @@ -97712,7 +101873,7 @@ if (!$util.isString(message.nextPageToken)) return "nextPageToken: string expected"; if (message.queryExpansionInfo != null && message.hasOwnProperty("queryExpansionInfo")) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo.verify(message.queryExpansionInfo); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo.verify(message.queryExpansionInfo, long + 1); if (error) return "queryExpansionInfo." + error; } @@ -97727,7 +101888,7 @@ return "appliedControls: string[] expected"; } if (message.pinControlMetadata != null && message.hasOwnProperty("pinControlMetadata")) { - var error = $root.google.cloud.retail.v2alpha.PinControlMetadata.verify(message.pinControlMetadata); + var error = $root.google.cloud.retail.v2alpha.PinControlMetadata.verify(message.pinControlMetadata, long + 1); if (error) return "pinControlMetadata." + error; } @@ -97735,7 +101896,7 @@ if (!Array.isArray(message.invalidConditionBoostSpecs)) return "invalidConditionBoostSpecs: array expected"; for (var i = 0; i < message.invalidConditionBoostSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.invalidConditionBoostSpecs[i]); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.invalidConditionBoostSpecs[i], long + 1); if (error) return "invalidConditionBoostSpecs." + error; } @@ -97744,18 +101905,18 @@ if (!Array.isArray(message.experimentInfo)) return "experimentInfo: array expected"; for (var i = 0; i < message.experimentInfo.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.ExperimentInfo.verify(message.experimentInfo[i]); + var error = $root.google.cloud.retail.v2alpha.ExperimentInfo.verify(message.experimentInfo[i], long + 1); if (error) return "experimentInfo." + error; } } if (message.conversationalSearchResult != null && message.hasOwnProperty("conversationalSearchResult")) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.verify(message.conversationalSearchResult); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.verify(message.conversationalSearchResult, long + 1); if (error) return "conversationalSearchResult." + error; } if (message.tileNavigationResult != null && message.hasOwnProperty("tileNavigationResult")) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult.verify(message.tileNavigationResult); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult.verify(message.tileNavigationResult, long + 1); if (error) return "tileNavigationResult." + error; } @@ -97770,9 +101931,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse} SearchResponse */ - SearchResponse.fromObject = function fromObject(object) { + SearchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse(); if (object.results) { if (!Array.isArray(object.results)) @@ -97781,7 +101946,7 @@ for (var i = 0; i < object.results.length; ++i) { if (typeof object.results[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.results: object expected"); - message.results[i] = $root.google.cloud.retail.v2alpha.SearchResponse.SearchResult.fromObject(object.results[i]); + message.results[i] = $root.google.cloud.retail.v2alpha.SearchResponse.SearchResult.fromObject(object.results[i], long + 1); } } if (object.facets) { @@ -97791,7 +101956,7 @@ for (var i = 0; i < object.facets.length; ++i) { if (typeof object.facets[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.facets: object expected"); - message.facets[i] = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.fromObject(object.facets[i]); + message.facets[i] = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.fromObject(object.facets[i], long + 1); } } if (object.totalSize != null) @@ -97805,7 +101970,7 @@ if (object.queryExpansionInfo != null) { if (typeof object.queryExpansionInfo !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.queryExpansionInfo: object expected"); - message.queryExpansionInfo = $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo.fromObject(object.queryExpansionInfo); + message.queryExpansionInfo = $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo.fromObject(object.queryExpansionInfo, long + 1); } if (object.redirectUri != null) message.redirectUri = String(object.redirectUri); @@ -97819,7 +101984,7 @@ if (object.pinControlMetadata != null) { if (typeof object.pinControlMetadata !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.pinControlMetadata: object expected"); - message.pinControlMetadata = $root.google.cloud.retail.v2alpha.PinControlMetadata.fromObject(object.pinControlMetadata); + message.pinControlMetadata = $root.google.cloud.retail.v2alpha.PinControlMetadata.fromObject(object.pinControlMetadata, long + 1); } if (object.invalidConditionBoostSpecs) { if (!Array.isArray(object.invalidConditionBoostSpecs)) @@ -97828,7 +101993,7 @@ for (var i = 0; i < object.invalidConditionBoostSpecs.length; ++i) { if (typeof object.invalidConditionBoostSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.invalidConditionBoostSpecs: object expected"); - message.invalidConditionBoostSpecs[i] = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.invalidConditionBoostSpecs[i]); + message.invalidConditionBoostSpecs[i] = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.invalidConditionBoostSpecs[i], long + 1); } } if (object.experimentInfo) { @@ -97838,18 +102003,18 @@ for (var i = 0; i < object.experimentInfo.length; ++i) { if (typeof object.experimentInfo[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.experimentInfo: object expected"); - message.experimentInfo[i] = $root.google.cloud.retail.v2alpha.ExperimentInfo.fromObject(object.experimentInfo[i]); + message.experimentInfo[i] = $root.google.cloud.retail.v2alpha.ExperimentInfo.fromObject(object.experimentInfo[i], long + 1); } } if (object.conversationalSearchResult != null) { if (typeof object.conversationalSearchResult !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.conversationalSearchResult: object expected"); - message.conversationalSearchResult = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.fromObject(object.conversationalSearchResult); + message.conversationalSearchResult = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.fromObject(object.conversationalSearchResult, long + 1); } if (object.tileNavigationResult != null) { if (typeof object.tileNavigationResult !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.tileNavigationResult: object expected"); - message.tileNavigationResult = $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult.fromObject(object.tileNavigationResult); + message.tileNavigationResult = $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult.fromObject(object.tileNavigationResult, long + 1); } return message; }; @@ -97987,7 +102152,7 @@ this.modelScores = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -98122,9 +102287,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchResult.decode = function decode(reader, length, error) { + SearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse.SearchResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -98136,7 +102305,7 @@ break; } case 2: { - message.product = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -98156,13 +102325,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + value = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.matchingVariantFields, key); message.matchingVariantFields[key] = value; break; } @@ -98179,13 +102350,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.variantRollupValues, key); message.variantRollupValues[key] = value; break; } @@ -98208,18 +102381,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2alpha.DoubleList.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2alpha.DoubleList.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.modelScores, key); message.modelScores[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -98250,14 +102425,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchResult.verify = function verify(message) { + SearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.product); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.product, long + 1); if (error) return "product." + error; } @@ -98269,7 +102448,7 @@ return "matchingVariantFields: object expected"; var key = Object.keys(message.matchingVariantFields); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.FieldMask.verify(message.matchingVariantFields[key[i]]); + var error = $root.google.protobuf.FieldMask.verify(message.matchingVariantFields[key[i]], long + 1); if (error) return "matchingVariantFields." + error; } @@ -98279,7 +102458,7 @@ return "variantRollupValues: object expected"; var key = Object.keys(message.variantRollupValues); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.variantRollupValues[key[i]]); + var error = $root.google.protobuf.Value.verify(message.variantRollupValues[key[i]], long + 1); if (error) return "variantRollupValues." + error; } @@ -98296,7 +102475,7 @@ return "modelScores: object expected"; var key = Object.keys(message.modelScores); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.DoubleList.verify(message.modelScores[key[i]]); + var error = $root.google.cloud.retail.v2alpha.DoubleList.verify(message.modelScores[key[i]], long + 1); if (error) return "modelScores." + error; } @@ -98312,16 +102491,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse.SearchResult} SearchResult */ - SearchResult.fromObject = function fromObject(object) { + SearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse.SearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse.SearchResult(); if (object.id != null) message.id = String(object.id); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.SearchResult.product: object expected"); - message.product = $root.google.cloud.retail.v2alpha.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2alpha.Product.fromObject(object.product, long + 1); } if (object.matchingVariantCount != null) message.matchingVariantCount = object.matchingVariantCount | 0; @@ -98330,9 +102513,11 @@ throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.SearchResult.matchingVariantFields: object expected"); message.matchingVariantFields = {}; for (var keys = Object.keys(object.matchingVariantFields), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.matchingVariantFields, keys[i]); if (typeof object.matchingVariantFields[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.SearchResult.matchingVariantFields: object expected"); - message.matchingVariantFields[keys[i]] = $root.google.protobuf.FieldMask.fromObject(object.matchingVariantFields[keys[i]]); + message.matchingVariantFields[keys[i]] = $root.google.protobuf.FieldMask.fromObject(object.matchingVariantFields[keys[i]], long + 1); } } if (object.variantRollupValues) { @@ -98340,9 +102525,11 @@ throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.SearchResult.variantRollupValues: object expected"); message.variantRollupValues = {}; for (var keys = Object.keys(object.variantRollupValues), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.variantRollupValues, keys[i]); if (typeof object.variantRollupValues[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.SearchResult.variantRollupValues: object expected"); - message.variantRollupValues[keys[i]] = $root.google.protobuf.Value.fromObject(object.variantRollupValues[keys[i]]); + message.variantRollupValues[keys[i]] = $root.google.protobuf.Value.fromObject(object.variantRollupValues[keys[i]], long + 1); } } if (object.personalLabels) { @@ -98357,9 +102544,11 @@ throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.SearchResult.modelScores: object expected"); message.modelScores = {}; for (var keys = Object.keys(object.modelScores), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.modelScores, keys[i]); if (typeof object.modelScores[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.SearchResult.modelScores: object expected"); - message.modelScores[keys[i]] = $root.google.cloud.retail.v2alpha.DoubleList.fromObject(object.modelScores[keys[i]]); + message.modelScores[keys[i]] = $root.google.cloud.retail.v2alpha.DoubleList.fromObject(object.modelScores[keys[i]], long + 1); } } return message; @@ -98399,13 +102588,19 @@ var keys2; if (message.matchingVariantFields && (keys2 = Object.keys(message.matchingVariantFields)).length) { object.matchingVariantFields = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.matchingVariantFields, keys2[j]); object.matchingVariantFields[keys2[j]] = $root.google.protobuf.FieldMask.toObject(message.matchingVariantFields[keys2[j]], options); + } } if (message.variantRollupValues && (keys2 = Object.keys(message.variantRollupValues)).length) { object.variantRollupValues = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.variantRollupValues, keys2[j]); object.variantRollupValues[keys2[j]] = $root.google.protobuf.Value.toObject(message.variantRollupValues[keys2[j]], options); + } } if (message.personalLabels && message.personalLabels.length) { object.personalLabels = []; @@ -98414,8 +102609,11 @@ } if (message.modelScores && (keys2 = Object.keys(message.modelScores)).length) { object.modelScores = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.modelScores, keys2[j]); object.modelScores[keys2[j]] = $root.google.cloud.retail.v2alpha.DoubleList.toObject(message.modelScores[keys2[j]], options); + } } return object; }; @@ -98472,7 +102670,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -98558,9 +102756,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Facet.decode = function decode(reader, length, error) { + Facet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse.Facet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -98574,7 +102776,7 @@ case 2: { if (!(message.values && message.values.length)) message.values = []; - message.values.push($root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.decode(reader, reader.uint32())); + message.values.push($root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -98582,7 +102784,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -98613,9 +102815,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Facet.verify = function verify(message) { + Facet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -98623,7 +102829,7 @@ if (!Array.isArray(message.values)) return "values: array expected"; for (var i = 0; i < message.values.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.verify(message.values[i]); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.verify(message.values[i], long + 1); if (error) return "values." + error; } @@ -98642,9 +102848,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse.Facet} Facet */ - Facet.fromObject = function fromObject(object) { + Facet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse.Facet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse.Facet(); if (object.key != null) message.key = String(object.key); @@ -98655,7 +102865,7 @@ for (var i = 0; i < object.values.length; ++i) { if (typeof object.values[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.Facet.values: object expected"); - message.values[i] = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.fromObject(object.values[i]); + message.values[i] = $root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.fromObject(object.values[i], long + 1); } } if (object.dynamicFacet != null) @@ -98744,7 +102954,7 @@ function FacetValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -98863,9 +103073,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetValue.decode = function decode(reader, length, error) { + FacetValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -98877,7 +103091,7 @@ break; } case 2: { - message.interval = $root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32()); + message.interval = $root.google.cloud.retail.v2alpha.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -98893,7 +103107,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -98924,9 +103138,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetValue.verify = function verify(message) { + FacetValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.value != null && message.hasOwnProperty("value")) { properties.facetValue = 1; @@ -98938,7 +103156,7 @@ return "facetValue: multiple values"; properties.facetValue = 1; { - var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.interval); + var error = $root.google.cloud.retail.v2alpha.Interval.verify(message.interval, long + 1); if (error) return "interval." + error; } @@ -98963,16 +103181,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue} FacetValue */ - FacetValue.fromObject = function fromObject(object) { + FacetValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue(); if (object.value != null) message.value = String(object.value); if (object.interval != null) { if (typeof object.interval !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.Facet.FacetValue.interval: object expected"); - message.interval = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.interval); + message.interval = $root.google.cloud.retail.v2alpha.Interval.fromObject(object.interval, long + 1); } if (object.count != null) if ($util.Long) @@ -99087,7 +103309,7 @@ function QueryExpansionInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -99162,9 +103384,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryExpansionInfo.decode = function decode(reader, length, error) { + QueryExpansionInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -99180,7 +103406,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -99211,9 +103437,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryExpansionInfo.verify = function verify(message) { + QueryExpansionInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.expandedQuery != null && message.hasOwnProperty("expandedQuery")) if (typeof message.expandedQuery !== "boolean") return "expandedQuery: boolean expected"; @@ -99231,9 +103461,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo} QueryExpansionInfo */ - QueryExpansionInfo.fromObject = function fromObject(object) { + QueryExpansionInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse.QueryExpansionInfo(); if (object.expandedQuery != null) message.expandedQuery = Boolean(object.expandedQuery); @@ -99336,7 +103570,7 @@ this.suggestedAnswers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -99453,9 +103687,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchResult.decode = function decode(reader, length, error) { + ConversationalSearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -99473,7 +103711,7 @@ case 3: { if (!(message.additionalFilters && message.additionalFilters.length)) message.additionalFilters = []; - message.additionalFilters.push($root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32())); + message.additionalFilters.push($root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -99483,15 +103721,15 @@ case 5: { if (!(message.suggestedAnswers && message.suggestedAnswers.length)) message.suggestedAnswers = []; - message.suggestedAnswers.push($root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer.decode(reader, reader.uint32())); + message.suggestedAnswers.push($root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { - message.additionalFilter = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32()); + message.additionalFilter = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -99522,9 +103760,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchResult.verify = function verify(message) { + ConversationalSearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.conversationId != null && message.hasOwnProperty("conversationId")) if (!$util.isString(message.conversationId)) return "conversationId: string expected"; @@ -99535,7 +103777,7 @@ if (!Array.isArray(message.additionalFilters)) return "additionalFilters: array expected"; for (var i = 0; i < message.additionalFilters.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilters[i]); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilters[i], long + 1); if (error) return "additionalFilters." + error; } @@ -99547,13 +103789,13 @@ if (!Array.isArray(message.suggestedAnswers)) return "suggestedAnswers: array expected"; for (var i = 0; i < message.suggestedAnswers.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer.verify(message.suggestedAnswers[i]); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer.verify(message.suggestedAnswers[i], long + 1); if (error) return "suggestedAnswers." + error; } } if (message.additionalFilter != null && message.hasOwnProperty("additionalFilter")) { - var error = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilter); + var error = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilter, long + 1); if (error) return "additionalFilter." + error; } @@ -99568,9 +103810,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult} ConversationalSearchResult */ - ConversationalSearchResult.fromObject = function fromObject(object) { + ConversationalSearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult(); if (object.conversationId != null) message.conversationId = String(object.conversationId); @@ -99583,7 +103829,7 @@ for (var i = 0; i < object.additionalFilters.length; ++i) { if (typeof object.additionalFilters[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.additionalFilters: object expected"); - message.additionalFilters[i] = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilters[i]); + message.additionalFilters[i] = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilters[i], long + 1); } } if (object.followupQuestion != null) @@ -99595,13 +103841,13 @@ for (var i = 0; i < object.suggestedAnswers.length; ++i) { if (typeof object.suggestedAnswers[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.suggestedAnswers: object expected"); - message.suggestedAnswers[i] = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer.fromObject(object.suggestedAnswers[i]); + message.suggestedAnswers[i] = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer.fromObject(object.suggestedAnswers[i], long + 1); } } if (object.additionalFilter != null) { if (typeof object.additionalFilter !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.additionalFilter: object expected"); - message.additionalFilter = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilter); + message.additionalFilter = $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilter, long + 1); } return message; }; @@ -99696,7 +103942,7 @@ function SuggestedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -99761,9 +104007,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SuggestedAnswer.decode = function decode(reader, length, error) { + SuggestedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -99771,11 +104021,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -99806,11 +104056,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SuggestedAnswer.verify = function verify(message) { + SuggestedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -99825,14 +104079,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer} SuggestedAnswer */ - SuggestedAnswer.fromObject = function fromObject(object) { + SuggestedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.SuggestedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -99906,7 +104164,7 @@ function AdditionalFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -99971,9 +104229,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AdditionalFilter.decode = function decode(reader, length, error) { + AdditionalFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -99981,11 +104243,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -100016,11 +104278,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AdditionalFilter.verify = function verify(message) { + AdditionalFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -100035,14 +104301,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter} AdditionalFilter */ - AdditionalFilter.fromObject = function fromObject(object) { + AdditionalFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.ConversationalSearchResult.AdditionalFilter.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -100120,7 +104390,7 @@ this.tiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -100186,9 +104456,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TileNavigationResult.decode = function decode(reader, length, error) { + TileNavigationResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -100198,11 +104472,11 @@ case 1: { if (!(message.tiles && message.tiles.length)) message.tiles = []; - message.tiles.push($root.google.cloud.retail.v2alpha.Tile.decode(reader, reader.uint32())); + message.tiles.push($root.google.cloud.retail.v2alpha.Tile.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -100233,14 +104507,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TileNavigationResult.verify = function verify(message) { + TileNavigationResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tiles != null && message.hasOwnProperty("tiles")) { if (!Array.isArray(message.tiles)) return "tiles: array expected"; for (var i = 0; i < message.tiles.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Tile.verify(message.tiles[i]); + var error = $root.google.cloud.retail.v2alpha.Tile.verify(message.tiles[i], long + 1); if (error) return "tiles." + error; } @@ -100256,9 +104534,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult} TileNavigationResult */ - TileNavigationResult.fromObject = function fromObject(object) { + TileNavigationResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult(); if (object.tiles) { if (!Array.isArray(object.tiles)) @@ -100267,7 +104549,7 @@ for (var i = 0; i < object.tiles.length; ++i) { if (typeof object.tiles[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.SearchResponse.TileNavigationResult.tiles: object expected"); - message.tiles[i] = $root.google.cloud.retail.v2alpha.Tile.fromObject(object.tiles[i]); + message.tiles[i] = $root.google.cloud.retail.v2alpha.Tile.fromObject(object.tiles[i], long + 1); } } return message; @@ -100349,7 +104631,7 @@ function ExperimentInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -100438,9 +104720,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentInfo.decode = function decode(reader, length, error) { + ExperimentInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExperimentInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -100448,7 +104734,7 @@ break; switch (tag >>> 3) { case 2: { - message.servingConfigExperiment = $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment.decode(reader, reader.uint32()); + message.servingConfigExperiment = $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -100456,7 +104742,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -100487,14 +104773,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentInfo.verify = function verify(message) { + ExperimentInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.servingConfigExperiment != null && message.hasOwnProperty("servingConfigExperiment")) { properties.experimentMetadata = 1; { - var error = $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment.verify(message.servingConfigExperiment); + var error = $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment.verify(message.servingConfigExperiment, long + 1); if (error) return "servingConfigExperiment." + error; } @@ -100513,14 +104803,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExperimentInfo} ExperimentInfo */ - ExperimentInfo.fromObject = function fromObject(object) { + ExperimentInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExperimentInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExperimentInfo(); if (object.servingConfigExperiment != null) { if (typeof object.servingConfigExperiment !== "object") throw TypeError(".google.cloud.retail.v2alpha.ExperimentInfo.servingConfigExperiment: object expected"); - message.servingConfigExperiment = $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment.fromObject(object.servingConfigExperiment); + message.servingConfigExperiment = $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment.fromObject(object.servingConfigExperiment, long + 1); } if (object.experiment != null) message.experiment = String(object.experiment); @@ -100599,7 +104893,7 @@ function ServingConfigExperiment(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -100674,9 +104968,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfigExperiment.decode = function decode(reader, length, error) { + ServingConfigExperiment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -100692,7 +104990,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -100723,9 +105021,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfigExperiment.verify = function verify(message) { + ServingConfigExperiment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.originalServingConfig != null && message.hasOwnProperty("originalServingConfig")) if (!$util.isString(message.originalServingConfig)) return "originalServingConfig: string expected"; @@ -100743,9 +105045,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment} ServingConfigExperiment */ - ServingConfigExperiment.fromObject = function fromObject(object) { + ServingConfigExperiment.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ExperimentInfo.ServingConfigExperiment(); if (object.originalServingConfig != null) message.originalServingConfig = String(object.originalServingConfig); @@ -100839,7 +105145,7 @@ this.searchSolutionUseCase = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -100987,9 +105293,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Control.decode = function decode(reader, length, error) { + Control.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Control(); while (reader.pos < end) { var tag = reader.uint32(); @@ -100997,11 +105307,11 @@ break; switch (tag >>> 3) { case 3: { - message.facetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.decode(reader, reader.uint32()); + message.facetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.rule = $root.google.cloud.retail.v2alpha.Rule.decode(reader, reader.uint32()); + message.rule = $root.google.cloud.retail.v2alpha.Rule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -101041,7 +105351,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -101072,14 +105382,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Control.verify = function verify(message) { + Control.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.facetSpec != null && message.hasOwnProperty("facetSpec")) { properties.control = 1; { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.verify(message.facetSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.verify(message.facetSpec, long + 1); if (error) return "facetSpec." + error; } @@ -101089,7 +105403,7 @@ return "control: multiple values"; properties.control = 1; { - var error = $root.google.cloud.retail.v2alpha.Rule.verify(message.rule); + var error = $root.google.cloud.retail.v2alpha.Rule.verify(message.rule, long + 1); if (error) return "rule." + error; } @@ -101144,19 +105458,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Control} Control */ - Control.fromObject = function fromObject(object) { + Control.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Control) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Control(); if (object.facetSpec != null) { if (typeof object.facetSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.Control.facetSpec: object expected"); - message.facetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.fromObject(object.facetSpec); + message.facetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.FacetSpec.fromObject(object.facetSpec, long + 1); } if (object.rule != null) { if (typeof object.rule !== "object") throw TypeError(".google.cloud.retail.v2alpha.Control.rule: object expected"); - message.rule = $root.google.cloud.retail.v2alpha.Rule.fromObject(object.rule); + message.rule = $root.google.cloud.retail.v2alpha.Rule.fromObject(object.rule, long + 1); } if (object.name != null) message.name = String(object.name); @@ -101527,7 +105845,7 @@ function CreateControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -101612,9 +105930,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateControlRequest.decode = function decode(reader, length, error) { + CreateControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CreateControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -101626,7 +105948,7 @@ break; } case 2: { - message.control = $root.google.cloud.retail.v2alpha.Control.decode(reader, reader.uint32()); + message.control = $root.google.cloud.retail.v2alpha.Control.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -101634,7 +105956,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -101665,14 +105987,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateControlRequest.verify = function verify(message) { + CreateControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.control != null && message.hasOwnProperty("control")) { - var error = $root.google.cloud.retail.v2alpha.Control.verify(message.control); + var error = $root.google.cloud.retail.v2alpha.Control.verify(message.control, long + 1); if (error) return "control." + error; } @@ -101690,16 +106016,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CreateControlRequest} CreateControlRequest */ - CreateControlRequest.fromObject = function fromObject(object) { + CreateControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CreateControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CreateControlRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.control != null) { if (typeof object.control !== "object") throw TypeError(".google.cloud.retail.v2alpha.CreateControlRequest.control: object expected"); - message.control = $root.google.cloud.retail.v2alpha.Control.fromObject(object.control); + message.control = $root.google.cloud.retail.v2alpha.Control.fromObject(object.control, long + 1); } if (object.controlId != null) message.controlId = String(object.controlId); @@ -101783,7 +106113,7 @@ function UpdateControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -101858,9 +106188,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateControlRequest.decode = function decode(reader, length, error) { + UpdateControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -101868,15 +106202,15 @@ break; switch (tag >>> 3) { case 1: { - message.control = $root.google.cloud.retail.v2alpha.Control.decode(reader, reader.uint32()); + message.control = $root.google.cloud.retail.v2alpha.Control.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -101907,16 +106241,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateControlRequest.verify = function verify(message) { + UpdateControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.control != null && message.hasOwnProperty("control")) { - var error = $root.google.cloud.retail.v2alpha.Control.verify(message.control); + var error = $root.google.cloud.retail.v2alpha.Control.verify(message.control, long + 1); if (error) return "control." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -101931,19 +106269,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateControlRequest} UpdateControlRequest */ - UpdateControlRequest.fromObject = function fromObject(object) { + UpdateControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateControlRequest(); if (object.control != null) { if (typeof object.control !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateControlRequest.control: object expected"); - message.control = $root.google.cloud.retail.v2alpha.Control.fromObject(object.control); + message.control = $root.google.cloud.retail.v2alpha.Control.fromObject(object.control, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateControlRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -102021,7 +106363,7 @@ function DeleteControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -102086,9 +106428,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteControlRequest.decode = function decode(reader, length, error) { + DeleteControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.DeleteControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -102100,7 +106446,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -102131,9 +106477,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteControlRequest.verify = function verify(message) { + DeleteControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -102148,9 +106498,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.DeleteControlRequest} DeleteControlRequest */ - DeleteControlRequest.fromObject = function fromObject(object) { + DeleteControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.DeleteControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.DeleteControlRequest(); if (object.name != null) message.name = String(object.name); @@ -102226,7 +106580,7 @@ function GetControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -102291,9 +106645,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetControlRequest.decode = function decode(reader, length, error) { + GetControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -102305,7 +106663,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -102336,9 +106694,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetControlRequest.verify = function verify(message) { + GetControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -102353,9 +106715,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetControlRequest} GetControlRequest */ - GetControlRequest.fromObject = function fromObject(object) { + GetControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetControlRequest(); if (object.name != null) message.name = String(object.name); @@ -102434,7 +106800,7 @@ function ListControlsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -102529,9 +106895,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListControlsRequest.decode = function decode(reader, length, error) { + ListControlsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListControlsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -102555,7 +106925,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -102586,9 +106956,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListControlsRequest.verify = function verify(message) { + ListControlsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -102612,9 +106986,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListControlsRequest} ListControlsRequest */ - ListControlsRequest.fromObject = function fromObject(object) { + ListControlsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListControlsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListControlsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -102708,7 +107086,7 @@ this.controls = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -102784,9 +107162,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListControlsResponse.decode = function decode(reader, length, error) { + ListControlsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListControlsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -102796,7 +107178,7 @@ case 1: { if (!(message.controls && message.controls.length)) message.controls = []; - message.controls.push($root.google.cloud.retail.v2alpha.Control.decode(reader, reader.uint32())); + message.controls.push($root.google.cloud.retail.v2alpha.Control.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -102804,7 +107186,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -102835,14 +107217,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListControlsResponse.verify = function verify(message) { + ListControlsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.controls != null && message.hasOwnProperty("controls")) { if (!Array.isArray(message.controls)) return "controls: array expected"; for (var i = 0; i < message.controls.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Control.verify(message.controls[i]); + var error = $root.google.cloud.retail.v2alpha.Control.verify(message.controls[i], long + 1); if (error) return "controls." + error; } @@ -102861,9 +107247,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListControlsResponse} ListControlsResponse */ - ListControlsResponse.fromObject = function fromObject(object) { + ListControlsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListControlsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListControlsResponse(); if (object.controls) { if (!Array.isArray(object.controls)) @@ -102872,7 +107262,7 @@ for (var i = 0; i < object.controls.length; ++i) { if (typeof object.controls[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListControlsResponse.controls: object expected"); - message.controls[i] = $root.google.cloud.retail.v2alpha.Control.fromObject(object.controls[i]); + message.controls[i] = $root.google.cloud.retail.v2alpha.Control.fromObject(object.controls[i], long + 1); } } if (object.nextPageToken != null) @@ -103037,7 +107427,7 @@ this.safetySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -103205,9 +107595,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchRequest.decode = function decode(reader, length, error) { + ConversationalSearchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -103237,7 +107631,7 @@ break; } case 6: { - message.searchParams = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams.decode(reader, reader.uint32()); + message.searchParams = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -103245,11 +107639,11 @@ break; } case 7: { - message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.conversationalFilteringSpec = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec.decode(reader, reader.uint32()); + message.conversationalFilteringSpec = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -103268,21 +107662,23 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.userLabels, key); message.userLabels[key] = value; break; } case 14: { if (!(message.safetySettings && message.safetySettings.length)) message.safetySettings = []; - message.safetySettings.push($root.google.cloud.retail.v2alpha.SafetySetting.decode(reader, reader.uint32())); + message.safetySettings.push($root.google.cloud.retail.v2alpha.SafetySetting.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -103313,9 +107709,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchRequest.verify = function verify(message) { + ConversationalSearchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) return "placement: string expected"; @@ -103336,7 +107736,7 @@ if (!$util.isString(message.conversationId)) return "conversationId: string expected"; if (message.searchParams != null && message.hasOwnProperty("searchParams")) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams.verify(message.searchParams); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams.verify(message.searchParams, long + 1); if (error) return "searchParams." + error; } @@ -103344,12 +107744,12 @@ if (!$util.isString(message.visitorId)) return "visitorId: string expected"; if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2alpha.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2alpha.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } if (message.conversationalFilteringSpec != null && message.hasOwnProperty("conversationalFilteringSpec")) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec.verify(message.conversationalFilteringSpec); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec.verify(message.conversationalFilteringSpec, long + 1); if (error) return "conversationalFilteringSpec." + error; } @@ -103365,7 +107765,7 @@ if (!Array.isArray(message.safetySettings)) return "safetySettings: array expected"; for (var i = 0; i < message.safetySettings.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.SafetySetting.verify(message.safetySettings[i]); + var error = $root.google.cloud.retail.v2alpha.SafetySetting.verify(message.safetySettings[i], long + 1); if (error) return "safetySettings." + error; } @@ -103381,9 +107781,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchRequest} ConversationalSearchRequest */ - ConversationalSearchRequest.fromObject = function fromObject(object) { + ConversationalSearchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest(); if (object.placement != null) message.placement = String(object.placement); @@ -103403,26 +107807,29 @@ if (object.searchParams != null) { if (typeof object.searchParams !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.searchParams: object expected"); - message.searchParams = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams.fromObject(object.searchParams); + message.searchParams = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams.fromObject(object.searchParams, long + 1); } if (object.visitorId != null) message.visitorId = String(object.visitorId); if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2alpha.UserInfo.fromObject(object.userInfo, long + 1); } if (object.conversationalFilteringSpec != null) { if (typeof object.conversationalFilteringSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.conversationalFilteringSpec: object expected"); - message.conversationalFilteringSpec = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec.fromObject(object.conversationalFilteringSpec); + message.conversationalFilteringSpec = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec.fromObject(object.conversationalFilteringSpec, long + 1); } if (object.userLabels) { if (typeof object.userLabels !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.userLabels: object expected"); message.userLabels = {}; - for (var keys = Object.keys(object.userLabels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.userLabels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.userLabels, keys[i]); message.userLabels[keys[i]] = String(object.userLabels[keys[i]]); + } } if (object.safetySettings) { if (!Array.isArray(object.safetySettings)) @@ -103431,7 +107838,7 @@ for (var i = 0; i < object.safetySettings.length; ++i) { if (typeof object.safetySettings[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.safetySettings: object expected"); - message.safetySettings[i] = $root.google.cloud.retail.v2alpha.SafetySetting.fromObject(object.safetySettings[i]); + message.safetySettings[i] = $root.google.cloud.retail.v2alpha.SafetySetting.fromObject(object.safetySettings[i], long + 1); } } return message; @@ -103490,8 +107897,11 @@ var keys2; if (message.userLabels && (keys2 = Object.keys(message.userLabels)).length) { object.userLabels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.userLabels, keys2[j]); object.userLabels[keys2[j]] = message.userLabels[keys2[j]]; + } } if (message.safetySettings && message.safetySettings.length) { object.safetySettings = []; @@ -103550,7 +107960,7 @@ function SearchParams(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -103645,9 +108055,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchParams.decode = function decode(reader, length, error) { + SearchParams.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams(); while (reader.pos < end) { var tag = reader.uint32(); @@ -103667,11 +108081,11 @@ break; } case 4: { - message.boostSpec = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.decode(reader, reader.uint32()); + message.boostSpec = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -103702,9 +108116,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchParams.verify = function verify(message) { + SearchParams.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.filter != null && message.hasOwnProperty("filter")) if (!$util.isString(message.filter)) return "filter: string expected"; @@ -103715,7 +108133,7 @@ if (!$util.isString(message.sortBy)) return "sortBy: string expected"; if (message.boostSpec != null && message.hasOwnProperty("boostSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.verify(message.boostSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.verify(message.boostSpec, long + 1); if (error) return "boostSpec." + error; } @@ -103730,9 +108148,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams} SearchParams */ - SearchParams.fromObject = function fromObject(object) { + SearchParams.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams(); if (object.filter != null) message.filter = String(object.filter); @@ -103743,7 +108165,7 @@ if (object.boostSpec != null) { if (typeof object.boostSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.SearchParams.boostSpec: object expected"); - message.boostSpec = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.fromObject(object.boostSpec); + message.boostSpec = $root.google.cloud.retail.v2alpha.SearchRequest.BoostSpec.fromObject(object.boostSpec, long + 1); } return message; }; @@ -103828,7 +108250,7 @@ function UserAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -103917,9 +108339,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserAnswer.decode = function decode(reader, length, error) { + UserAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -103931,11 +108357,11 @@ break; } case 2: { - message.selectedAnswer = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer.decode(reader, reader.uint32()); + message.selectedAnswer = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -103966,9 +108392,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserAnswer.verify = function verify(message) { + UserAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.textAnswer != null && message.hasOwnProperty("textAnswer")) { properties.type = 1; @@ -103980,7 +108410,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer.verify(message.selectedAnswer); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer.verify(message.selectedAnswer, long + 1); if (error) return "selectedAnswer." + error; } @@ -103996,16 +108426,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer} UserAnswer */ - UserAnswer.fromObject = function fromObject(object) { + UserAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer(); if (object.textAnswer != null) message.textAnswer = String(object.textAnswer); if (object.selectedAnswer != null) { if (typeof object.selectedAnswer !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.selectedAnswer: object expected"); - message.selectedAnswer = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer); + message.selectedAnswer = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer, long + 1); } return message; }; @@ -104082,7 +108516,7 @@ function SelectedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -104147,9 +108581,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectedAnswer.decode = function decode(reader, length, error) { + SelectedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -104157,11 +108595,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -104192,11 +108630,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectedAnswer.verify = function verify(message) { + SelectedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -104211,14 +108653,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer} SelectedAnswer */ - SelectedAnswer.fromObject = function fromObject(object) { + SelectedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.SelectedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -104297,7 +108743,7 @@ function ConversationalFilteringSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -104382,9 +108828,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalFilteringSpec.decode = function decode(reader, length, error) { + ConversationalFilteringSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -104396,7 +108846,7 @@ break; } case 2: { - message.userAnswer = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.decode(reader, reader.uint32()); + message.userAnswer = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -104404,7 +108854,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -104435,14 +108885,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalFilteringSpec.verify = function verify(message) { + ConversationalFilteringSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.enableConversationalFiltering != null && message.hasOwnProperty("enableConversationalFiltering")) if (typeof message.enableConversationalFiltering !== "boolean") return "enableConversationalFiltering: boolean expected"; if (message.userAnswer != null && message.hasOwnProperty("userAnswer")) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.verify(message.userAnswer); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.verify(message.userAnswer, long + 1); if (error) return "userAnswer." + error; } @@ -104467,16 +108921,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec} ConversationalFilteringSpec */ - ConversationalFilteringSpec.fromObject = function fromObject(object) { + ConversationalFilteringSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec(); if (object.enableConversationalFiltering != null) message.enableConversationalFiltering = Boolean(object.enableConversationalFiltering); if (object.userAnswer != null) { if (typeof object.userAnswer !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchRequest.ConversationalFilteringSpec.userAnswer: object expected"); - message.userAnswer = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.fromObject(object.userAnswer); + message.userAnswer = $root.google.cloud.retail.v2alpha.ConversationalSearchRequest.UserAnswer.fromObject(object.userAnswer, long + 1); } switch (object.conversationalFilteringMode) { default: @@ -104610,7 +109068,7 @@ this.refinedSearch = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -104737,9 +109195,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchResponse.decode = function decode(reader, length, error) { + ConversationalSearchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -104757,7 +109219,7 @@ break; } case 3: { - message.followupQuestion = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32()); + message.followupQuestion = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -104767,11 +109229,11 @@ case 6: { if (!(message.refinedSearch && message.refinedSearch.length)) message.refinedSearch = []; - message.refinedSearch.push($root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch.decode(reader, reader.uint32())); + message.refinedSearch.push($root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.conversationalFilteringResult = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.decode(reader, reader.uint32()); + message.conversationalFilteringResult = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -104779,7 +109241,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -104810,9 +109272,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchResponse.verify = function verify(message) { + ConversationalSearchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userQueryTypes != null && message.hasOwnProperty("userQueryTypes")) { if (!Array.isArray(message.userQueryTypes)) return "userQueryTypes: array expected"; @@ -104824,7 +109290,7 @@ if (!$util.isString(message.conversationalTextResponse)) return "conversationalTextResponse: string expected"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion, long + 1); if (error) return "followupQuestion." + error; } @@ -104835,13 +109301,13 @@ if (!Array.isArray(message.refinedSearch)) return "refinedSearch: array expected"; for (var i = 0; i < message.refinedSearch.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch.verify(message.refinedSearch[i]); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch.verify(message.refinedSearch[i], long + 1); if (error) return "refinedSearch." + error; } } if (message.conversationalFilteringResult != null && message.hasOwnProperty("conversationalFilteringResult")) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.verify(message.conversationalFilteringResult); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.verify(message.conversationalFilteringResult, long + 1); if (error) return "conversationalFilteringResult." + error; } @@ -104865,9 +109331,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchResponse} ConversationalSearchResponse */ - ConversationalSearchResponse.fromObject = function fromObject(object) { + ConversationalSearchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse(); if (object.userQueryTypes) { if (!Array.isArray(object.userQueryTypes)) @@ -104881,7 +109351,7 @@ if (object.followupQuestion != null) { if (typeof object.followupQuestion !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchResponse.followupQuestion: object expected"); - message.followupQuestion = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion); + message.followupQuestion = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion, long + 1); } if (object.conversationId != null) message.conversationId = String(object.conversationId); @@ -104892,13 +109362,13 @@ for (var i = 0; i < object.refinedSearch.length; ++i) { if (typeof object.refinedSearch[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchResponse.refinedSearch: object expected"); - message.refinedSearch[i] = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch.fromObject(object.refinedSearch[i]); + message.refinedSearch[i] = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch.fromObject(object.refinedSearch[i], long + 1); } } if (object.conversationalFilteringResult != null) { if (typeof object.conversationalFilteringResult !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchResponse.conversationalFilteringResult: object expected"); - message.conversationalFilteringResult = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.fromObject(object.conversationalFilteringResult); + message.conversationalFilteringResult = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.fromObject(object.conversationalFilteringResult, long + 1); } switch (object.state) { default: @@ -105018,7 +109488,7 @@ this.suggestedAnswers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -105094,9 +109564,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FollowupQuestion.decode = function decode(reader, length, error) { + FollowupQuestion.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion(); while (reader.pos < end) { var tag = reader.uint32(); @@ -105110,11 +109584,11 @@ case 2: { if (!(message.suggestedAnswers && message.suggestedAnswers.length)) message.suggestedAnswers = []; - message.suggestedAnswers.push($root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.decode(reader, reader.uint32())); + message.suggestedAnswers.push($root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -105145,9 +109619,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FollowupQuestion.verify = function verify(message) { + FollowupQuestion.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) if (!$util.isString(message.followupQuestion)) return "followupQuestion: string expected"; @@ -105155,7 +109633,7 @@ if (!Array.isArray(message.suggestedAnswers)) return "suggestedAnswers: array expected"; for (var i = 0; i < message.suggestedAnswers.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.verify(message.suggestedAnswers[i]); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.verify(message.suggestedAnswers[i], long + 1); if (error) return "suggestedAnswers." + error; } @@ -105171,9 +109649,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion} FollowupQuestion */ - FollowupQuestion.fromObject = function fromObject(object) { + FollowupQuestion.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion(); if (object.followupQuestion != null) message.followupQuestion = String(object.followupQuestion); @@ -105184,7 +109666,7 @@ for (var i = 0; i < object.suggestedAnswers.length; ++i) { if (typeof object.suggestedAnswers[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.suggestedAnswers: object expected"); - message.suggestedAnswers[i] = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.fromObject(object.suggestedAnswers[i]); + message.suggestedAnswers[i] = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.fromObject(object.suggestedAnswers[i], long + 1); } } return message; @@ -105263,7 +109745,7 @@ function SuggestedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -105328,9 +109810,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SuggestedAnswer.decode = function decode(reader, length, error) { + SuggestedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -105338,11 +109824,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -105373,11 +109859,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SuggestedAnswer.verify = function verify(message) { + SuggestedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -105392,14 +109882,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer} SuggestedAnswer */ - SuggestedAnswer.fromObject = function fromObject(object) { + SuggestedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -105476,7 +109970,7 @@ function RefinedSearch(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -105541,9 +110035,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RefinedSearch.decode = function decode(reader, length, error) { + RefinedSearch.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch(); while (reader.pos < end) { var tag = reader.uint32(); @@ -105555,7 +110053,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -105586,9 +110084,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RefinedSearch.verify = function verify(message) { + RefinedSearch.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.query != null && message.hasOwnProperty("query")) if (!$util.isString(message.query)) return "query: string expected"; @@ -105603,9 +110105,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch} RefinedSearch */ - RefinedSearch.fromObject = function fromObject(object) { + RefinedSearch.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.RefinedSearch(); if (object.query != null) message.query = String(object.query); @@ -105682,7 +110188,7 @@ function ConversationalFilteringResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -105757,9 +110263,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalFilteringResult.decode = function decode(reader, length, error) { + ConversationalFilteringResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -105767,15 +110277,15 @@ break; switch (tag >>> 3) { case 1: { - message.followupQuestion = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32()); + message.followupQuestion = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.additionalFilter = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.decode(reader, reader.uint32()); + message.additionalFilter = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -105806,16 +110316,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalFilteringResult.verify = function verify(message) { + ConversationalFilteringResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion, long + 1); if (error) return "followupQuestion." + error; } if (message.additionalFilter != null && message.hasOwnProperty("additionalFilter")) { - var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.verify(message.additionalFilter); + var error = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.verify(message.additionalFilter, long + 1); if (error) return "additionalFilter." + error; } @@ -105830,19 +110344,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult} ConversationalFilteringResult */ - ConversationalFilteringResult.fromObject = function fromObject(object) { + ConversationalFilteringResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult(); if (object.followupQuestion != null) { if (typeof object.followupQuestion !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.followupQuestion: object expected"); - message.followupQuestion = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion); + message.followupQuestion = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion, long + 1); } if (object.additionalFilter != null) { if (typeof object.additionalFilter !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.additionalFilter: object expected"); - message.additionalFilter = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.fromObject(object.additionalFilter); + message.additionalFilter = $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.fromObject(object.additionalFilter, long + 1); } return message; }; @@ -105917,7 +110435,7 @@ function AdditionalFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -105982,9 +110500,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AdditionalFilter.decode = function decode(reader, length, error) { + AdditionalFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -105992,11 +110514,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -106027,11 +110549,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AdditionalFilter.verify = function verify(message) { + AdditionalFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2alpha.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -106046,14 +110572,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter} AdditionalFilter */ - AdditionalFilter.fromObject = function fromObject(object) { + AdditionalFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2alpha.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2alpha.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -106173,7 +110703,7 @@ function SafetySetting(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -106258,9 +110788,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SafetySetting.decode = function decode(reader, length, error) { + SafetySetting.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SafetySetting(); while (reader.pos < end) { var tag = reader.uint32(); @@ -106280,7 +110814,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -106311,9 +110845,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SafetySetting.verify = function verify(message) { + SafetySetting.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.category != null && message.hasOwnProperty("category")) switch (message.category) { default: @@ -106358,9 +110896,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SafetySetting} SafetySetting */ - SafetySetting.fromObject = function fromObject(object) { + SafetySetting.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SafetySetting) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SafetySetting(); switch (object.category) { default: @@ -106565,7 +111107,7 @@ function GenerativeQuestionsFeatureConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -106650,9 +111192,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerativeQuestionsFeatureConfig.decode = function decode(reader, length, error) { + GenerativeQuestionsFeatureConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -106672,7 +111218,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -106703,9 +111249,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerativeQuestionsFeatureConfig.verify = function verify(message) { + GenerativeQuestionsFeatureConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -106726,9 +111276,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig} GenerativeQuestionsFeatureConfig */ - GenerativeQuestionsFeatureConfig.fromObject = function fromObject(object) { + GenerativeQuestionsFeatureConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -106822,7 +111376,7 @@ this.exampleValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -106948,9 +111502,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerativeQuestionConfig.decode = function decode(reader, length, error) { + GenerativeQuestionConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -106988,7 +111546,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -107019,9 +111577,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerativeQuestionConfig.verify = function verify(message) { + GenerativeQuestionConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -107058,9 +111620,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GenerativeQuestionConfig} GenerativeQuestionConfig */ - GenerativeQuestionConfig.fromObject = function fromObject(object) { + GenerativeQuestionConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -107377,7 +111943,7 @@ function UpdateGenerativeQuestionsFeatureConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -107452,9 +112018,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error) { + UpdateGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionsFeatureConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -107462,15 +112032,15 @@ break; switch (tag >>> 3) { case 2: { - message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig.decode(reader, reader.uint32()); + message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -107501,16 +112071,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateGenerativeQuestionsFeatureConfigRequest.verify = function verify(message) { + UpdateGenerativeQuestionsFeatureConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionsFeatureConfig != null && message.hasOwnProperty("generativeQuestionsFeatureConfig")) { - var error = $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig.verify(message.generativeQuestionsFeatureConfig); + var error = $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig.verify(message.generativeQuestionsFeatureConfig, long + 1); if (error) return "generativeQuestionsFeatureConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -107525,19 +112099,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateGenerativeQuestionsFeatureConfigRequest} UpdateGenerativeQuestionsFeatureConfigRequest */ - UpdateGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object) { + UpdateGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionsFeatureConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionsFeatureConfigRequest(); if (object.generativeQuestionsFeatureConfig != null) { if (typeof object.generativeQuestionsFeatureConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateGenerativeQuestionsFeatureConfigRequest.generativeQuestionsFeatureConfig: object expected"); - message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig.fromObject(object.generativeQuestionsFeatureConfig); + message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2alpha.GenerativeQuestionsFeatureConfig.fromObject(object.generativeQuestionsFeatureConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateGenerativeQuestionsFeatureConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -107615,7 +112193,7 @@ function GetGenerativeQuestionsFeatureConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -107680,9 +112258,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error) { + GetGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetGenerativeQuestionsFeatureConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -107694,7 +112276,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -107725,9 +112307,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetGenerativeQuestionsFeatureConfigRequest.verify = function verify(message) { + GetGenerativeQuestionsFeatureConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -107742,9 +112328,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetGenerativeQuestionsFeatureConfigRequest} GetGenerativeQuestionsFeatureConfigRequest */ - GetGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object) { + GetGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetGenerativeQuestionsFeatureConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetGenerativeQuestionsFeatureConfigRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -107820,7 +112410,7 @@ function ListGenerativeQuestionConfigsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -107885,9 +112475,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error) { + ListGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -107899,7 +112493,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -107930,9 +112524,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListGenerativeQuestionConfigsRequest.verify = function verify(message) { + ListGenerativeQuestionConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -107947,9 +112545,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsRequest} ListGenerativeQuestionConfigsRequest */ - ListGenerativeQuestionConfigsRequest.fromObject = function fromObject(object) { + ListGenerativeQuestionConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -108026,7 +112628,7 @@ this.generativeQuestionConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -108092,9 +112694,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error) { + ListGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -108104,11 +112710,11 @@ case 1: { if (!(message.generativeQuestionConfigs && message.generativeQuestionConfigs.length)) message.generativeQuestionConfigs = []; - message.generativeQuestionConfigs.push($root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.decode(reader, reader.uint32())); + message.generativeQuestionConfigs.push($root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -108139,14 +112745,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListGenerativeQuestionConfigsResponse.verify = function verify(message) { + ListGenerativeQuestionConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfigs != null && message.hasOwnProperty("generativeQuestionConfigs")) { if (!Array.isArray(message.generativeQuestionConfigs)) return "generativeQuestionConfigs: array expected"; for (var i = 0; i < message.generativeQuestionConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i]); + var error = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i], long + 1); if (error) return "generativeQuestionConfigs." + error; } @@ -108162,9 +112772,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsResponse} ListGenerativeQuestionConfigsResponse */ - ListGenerativeQuestionConfigsResponse.fromObject = function fromObject(object) { + ListGenerativeQuestionConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsResponse(); if (object.generativeQuestionConfigs) { if (!Array.isArray(object.generativeQuestionConfigs)) @@ -108173,7 +112787,7 @@ for (var i = 0; i < object.generativeQuestionConfigs.length; ++i) { if (typeof object.generativeQuestionConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListGenerativeQuestionConfigsResponse.generativeQuestionConfigs: object expected"); - message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i]); + message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i], long + 1); } } return message; @@ -108252,7 +112866,7 @@ function UpdateGenerativeQuestionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -108327,9 +112941,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateGenerativeQuestionConfigRequest.decode = function decode(reader, length, error) { + UpdateGenerativeQuestionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -108337,15 +112955,15 @@ break; switch (tag >>> 3) { case 3: { - message.generativeQuestionConfig = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.decode(reader, reader.uint32()); + message.generativeQuestionConfig = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -108376,16 +112994,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateGenerativeQuestionConfigRequest.verify = function verify(message) { + UpdateGenerativeQuestionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfig != null && message.hasOwnProperty("generativeQuestionConfig")) { - var error = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.verify(message.generativeQuestionConfig); + var error = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.verify(message.generativeQuestionConfig, long + 1); if (error) return "generativeQuestionConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -108400,19 +113022,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest} UpdateGenerativeQuestionConfigRequest */ - UpdateGenerativeQuestionConfigRequest.fromObject = function fromObject(object) { + UpdateGenerativeQuestionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest(); if (object.generativeQuestionConfig != null) { if (typeof object.generativeQuestionConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest.generativeQuestionConfig: object expected"); - message.generativeQuestionConfig = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfig); + message.generativeQuestionConfig = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -108492,7 +113118,7 @@ this.requests = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -108568,9 +113194,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchUpdateGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error) { + BatchUpdateGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -108584,11 +113214,11 @@ case 2: { if (!(message.requests && message.requests.length)) message.requests = []; - message.requests.push($root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest.decode(reader, reader.uint32())); + message.requests.push($root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -108619,9 +113249,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchUpdateGenerativeQuestionConfigsRequest.verify = function verify(message) { + BatchUpdateGenerativeQuestionConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -108629,7 +113263,7 @@ if (!Array.isArray(message.requests)) return "requests: array expected"; for (var i = 0; i < message.requests.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest.verify(message.requests[i]); + var error = $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest.verify(message.requests[i], long + 1); if (error) return "requests." + error; } @@ -108645,9 +113279,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsRequest} BatchUpdateGenerativeQuestionConfigsRequest */ - BatchUpdateGenerativeQuestionConfigsRequest.fromObject = function fromObject(object) { + BatchUpdateGenerativeQuestionConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -108658,7 +113296,7 @@ for (var i = 0; i < object.requests.length; ++i) { if (typeof object.requests[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsRequest.requests: object expected"); - message.requests[i] = $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest.fromObject(object.requests[i]); + message.requests[i] = $root.google.cloud.retail.v2alpha.UpdateGenerativeQuestionConfigRequest.fromObject(object.requests[i], long + 1); } } return message; @@ -108741,7 +113379,7 @@ this.generativeQuestionConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -108807,9 +113445,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchUpdateGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error) { + BatchUpdateGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -108819,11 +113461,11 @@ case 1: { if (!(message.generativeQuestionConfigs && message.generativeQuestionConfigs.length)) message.generativeQuestionConfigs = []; - message.generativeQuestionConfigs.push($root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.decode(reader, reader.uint32())); + message.generativeQuestionConfigs.push($root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -108854,14 +113496,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchUpdateGenerativeQuestionConfigsResponse.verify = function verify(message) { + BatchUpdateGenerativeQuestionConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfigs != null && message.hasOwnProperty("generativeQuestionConfigs")) { if (!Array.isArray(message.generativeQuestionConfigs)) return "generativeQuestionConfigs: array expected"; for (var i = 0; i < message.generativeQuestionConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i]); + var error = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i], long + 1); if (error) return "generativeQuestionConfigs." + error; } @@ -108877,9 +113523,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsResponse} BatchUpdateGenerativeQuestionConfigsResponse */ - BatchUpdateGenerativeQuestionConfigsResponse.fromObject = function fromObject(object) { + BatchUpdateGenerativeQuestionConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsResponse(); if (object.generativeQuestionConfigs) { if (!Array.isArray(object.generativeQuestionConfigs)) @@ -108888,7 +113538,7 @@ for (var i = 0; i < object.generativeQuestionConfigs.length; ++i) { if (typeof object.generativeQuestionConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.BatchUpdateGenerativeQuestionConfigsResponse.generativeQuestionConfigs: object expected"); - message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i]); + message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2alpha.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i], long + 1); } } return message; @@ -108976,7 +113626,7 @@ this.feedFilters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -109132,9 +113782,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MerchantCenterAccountLink.decode = function decode(reader, length, error) { + MerchantCenterAccountLink.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink(); while (reader.pos < end) { var tag = reader.uint32(); @@ -109168,7 +113822,7 @@ case 6: { if (!(message.feedFilters && message.feedFilters.length)) message.feedFilters = []; - message.feedFilters.push($root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter.decode(reader, reader.uint32())); + message.feedFilters.push($root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { @@ -109184,7 +113838,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -109215,9 +113869,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MerchantCenterAccountLink.verify = function verify(message) { + MerchantCenterAccountLink.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -109240,7 +113898,7 @@ if (!Array.isArray(message.feedFilters)) return "feedFilters: array expected"; for (var i = 0; i < message.feedFilters.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter.verify(message.feedFilters[i]); + var error = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter.verify(message.feedFilters[i], long + 1); if (error) return "feedFilters." + error; } @@ -109272,9 +113930,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.MerchantCenterAccountLink} MerchantCenterAccountLink */ - MerchantCenterAccountLink.fromObject = function fromObject(object) { + MerchantCenterAccountLink.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink(); if (object.name != null) message.name = String(object.name); @@ -109302,7 +113964,7 @@ for (var i = 0; i < object.feedFilters.length; ++i) { if (typeof object.feedFilters[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.MerchantCenterAccountLink.feedFilters: object expected"); - message.feedFilters[i] = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter.fromObject(object.feedFilters[i]); + message.feedFilters[i] = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter.fromObject(object.feedFilters[i], long + 1); } } switch (object.state) { @@ -109443,7 +114105,7 @@ function MerchantCenterFeedFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -109528,9 +114190,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MerchantCenterFeedFilter.decode = function decode(reader, length, error) { + MerchantCenterFeedFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -109550,7 +114216,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -109581,9 +114247,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MerchantCenterFeedFilter.verify = function verify(message) { + MerchantCenterFeedFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.primaryFeedId != null && message.hasOwnProperty("primaryFeedId")) if (!$util.isInteger(message.primaryFeedId) && !(message.primaryFeedId && $util.isInteger(message.primaryFeedId.low) && $util.isInteger(message.primaryFeedId.high))) return "primaryFeedId: integer|Long expected"; @@ -109604,9 +114274,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter} MerchantCenterFeedFilter */ - MerchantCenterFeedFilter.fromObject = function fromObject(object) { + MerchantCenterFeedFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.MerchantCenterFeedFilter(); if (object.primaryFeedId != null) if ($util.Long) @@ -109743,7 +114417,7 @@ function CreateMerchantCenterAccountLinkMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -109818,9 +114492,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateMerchantCenterAccountLinkMetadata.decode = function decode(reader, length, error) { + CreateMerchantCenterAccountLinkMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -109828,15 +114506,15 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -109867,16 +114545,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateMerchantCenterAccountLinkMetadata.verify = function verify(message) { + CreateMerchantCenterAccountLinkMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -109891,19 +114573,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkMetadata} CreateMerchantCenterAccountLinkMetadata */ - CreateMerchantCenterAccountLinkMetadata.fromObject = function fromObject(object) { + CreateMerchantCenterAccountLinkMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } return message; }; @@ -110115,7 +114801,7 @@ function ListMerchantCenterAccountLinksRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -110180,9 +114866,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListMerchantCenterAccountLinksRequest.decode = function decode(reader, length, error) { + ListMerchantCenterAccountLinksRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -110194,7 +114884,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -110225,9 +114915,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListMerchantCenterAccountLinksRequest.verify = function verify(message) { + ListMerchantCenterAccountLinksRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -110242,9 +114936,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksRequest} ListMerchantCenterAccountLinksRequest */ - ListMerchantCenterAccountLinksRequest.fromObject = function fromObject(object) { + ListMerchantCenterAccountLinksRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -110321,7 +115019,7 @@ this.merchantCenterAccountLinks = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -110387,9 +115085,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListMerchantCenterAccountLinksResponse.decode = function decode(reader, length, error) { + ListMerchantCenterAccountLinksResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -110399,11 +115101,11 @@ case 1: { if (!(message.merchantCenterAccountLinks && message.merchantCenterAccountLinks.length)) message.merchantCenterAccountLinks = []; - message.merchantCenterAccountLinks.push($root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.decode(reader, reader.uint32())); + message.merchantCenterAccountLinks.push($root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -110434,14 +115136,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListMerchantCenterAccountLinksResponse.verify = function verify(message) { + ListMerchantCenterAccountLinksResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.merchantCenterAccountLinks != null && message.hasOwnProperty("merchantCenterAccountLinks")) { if (!Array.isArray(message.merchantCenterAccountLinks)) return "merchantCenterAccountLinks: array expected"; for (var i = 0; i < message.merchantCenterAccountLinks.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.verify(message.merchantCenterAccountLinks[i]); + var error = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.verify(message.merchantCenterAccountLinks[i], long + 1); if (error) return "merchantCenterAccountLinks." + error; } @@ -110457,9 +115163,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksResponse} ListMerchantCenterAccountLinksResponse */ - ListMerchantCenterAccountLinksResponse.fromObject = function fromObject(object) { + ListMerchantCenterAccountLinksResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksResponse(); if (object.merchantCenterAccountLinks) { if (!Array.isArray(object.merchantCenterAccountLinks)) @@ -110468,7 +115178,7 @@ for (var i = 0; i < object.merchantCenterAccountLinks.length; ++i) { if (typeof object.merchantCenterAccountLinks[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListMerchantCenterAccountLinksResponse.merchantCenterAccountLinks: object expected"); - message.merchantCenterAccountLinks[i] = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.fromObject(object.merchantCenterAccountLinks[i]); + message.merchantCenterAccountLinks[i] = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.fromObject(object.merchantCenterAccountLinks[i], long + 1); } } return message; @@ -110547,7 +115257,7 @@ function CreateMerchantCenterAccountLinkRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -110622,9 +115332,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateMerchantCenterAccountLinkRequest.decode = function decode(reader, length, error) { + CreateMerchantCenterAccountLinkRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -110636,11 +115350,11 @@ break; } case 2: { - message.merchantCenterAccountLink = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.decode(reader, reader.uint32()); + message.merchantCenterAccountLink = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -110671,14 +115385,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateMerchantCenterAccountLinkRequest.verify = function verify(message) { + CreateMerchantCenterAccountLinkRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.merchantCenterAccountLink != null && message.hasOwnProperty("merchantCenterAccountLink")) { - var error = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.verify(message.merchantCenterAccountLink); + var error = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.verify(message.merchantCenterAccountLink, long + 1); if (error) return "merchantCenterAccountLink." + error; } @@ -110693,16 +115411,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkRequest} CreateMerchantCenterAccountLinkRequest */ - CreateMerchantCenterAccountLinkRequest.fromObject = function fromObject(object) { + CreateMerchantCenterAccountLinkRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.merchantCenterAccountLink != null) { if (typeof object.merchantCenterAccountLink !== "object") throw TypeError(".google.cloud.retail.v2alpha.CreateMerchantCenterAccountLinkRequest.merchantCenterAccountLink: object expected"); - message.merchantCenterAccountLink = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.fromObject(object.merchantCenterAccountLink); + message.merchantCenterAccountLink = $root.google.cloud.retail.v2alpha.MerchantCenterAccountLink.fromObject(object.merchantCenterAccountLink, long + 1); } return message; }; @@ -110780,7 +115502,7 @@ function DeleteMerchantCenterAccountLinkRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -110845,9 +115567,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteMerchantCenterAccountLinkRequest.decode = function decode(reader, length, error) { + DeleteMerchantCenterAccountLinkRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.DeleteMerchantCenterAccountLinkRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -110859,7 +115585,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -110890,9 +115616,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteMerchantCenterAccountLinkRequest.verify = function verify(message) { + DeleteMerchantCenterAccountLinkRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -110907,9 +115637,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.DeleteMerchantCenterAccountLinkRequest} DeleteMerchantCenterAccountLinkRequest */ - DeleteMerchantCenterAccountLinkRequest.fromObject = function fromObject(object) { + DeleteMerchantCenterAccountLinkRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.DeleteMerchantCenterAccountLinkRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.DeleteMerchantCenterAccountLinkRequest(); if (object.name != null) message.name = String(object.name); @@ -111001,7 +115735,7 @@ this.servingConfigLists = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -111231,9 +115965,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Model.decode = function decode(reader, length, error) { + Model.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Model(); while (reader.pos < end) { var tag = reader.uint32(); @@ -111241,7 +115979,7 @@ break; switch (tag >>> 3) { case 17: { - message.pageOptimizationConfig = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.decode(reader, reader.uint32()); + message.pageOptimizationConfig = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -111261,11 +115999,11 @@ break; } case 5: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -111281,7 +116019,7 @@ break; } case 12: { - message.lastTuneTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastTuneTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { @@ -111299,15 +116037,15 @@ case 19: { if (!(message.servingConfigLists && message.servingConfigLists.length)) message.servingConfigLists = []; - message.servingConfigLists.push($root.google.cloud.retail.v2alpha.Model.ServingConfigList.decode(reader, reader.uint32())); + message.servingConfigLists.push($root.google.cloud.retail.v2alpha.Model.ServingConfigList.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { - message.modelFeaturesConfig = $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig.decode(reader, reader.uint32()); + message.modelFeaturesConfig = $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -111338,14 +116076,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Model.verify = function verify(message) { + Model.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.pageOptimizationConfig != null && message.hasOwnProperty("pageOptimizationConfig")) { properties.trainingConfig = 1; { - var error = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.verify(message.pageOptimizationConfig); + var error = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.verify(message.pageOptimizationConfig, long + 1); if (error) return "pageOptimizationConfig." + error; } @@ -111376,12 +116118,12 @@ break; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -111402,7 +116144,7 @@ break; } if (message.lastTuneTime != null && message.hasOwnProperty("lastTuneTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastTuneTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastTuneTime, long + 1); if (error) return "lastTuneTime." + error; } @@ -111431,13 +116173,13 @@ if (!Array.isArray(message.servingConfigLists)) return "servingConfigLists: array expected"; for (var i = 0; i < message.servingConfigLists.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Model.ServingConfigList.verify(message.servingConfigLists[i]); + var error = $root.google.cloud.retail.v2alpha.Model.ServingConfigList.verify(message.servingConfigLists[i], long + 1); if (error) return "servingConfigLists." + error; } } if (message.modelFeaturesConfig != null && message.hasOwnProperty("modelFeaturesConfig")) { - var error = $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig.verify(message.modelFeaturesConfig); + var error = $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig.verify(message.modelFeaturesConfig, long + 1); if (error) return "modelFeaturesConfig." + error; } @@ -111452,14 +116194,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Model} Model */ - Model.fromObject = function fromObject(object) { + Model.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Model) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Model(); if (object.pageOptimizationConfig != null) { if (typeof object.pageOptimizationConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.pageOptimizationConfig: object expected"); - message.pageOptimizationConfig = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.fromObject(object.pageOptimizationConfig); + message.pageOptimizationConfig = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.fromObject(object.pageOptimizationConfig, long + 1); } if (object.name != null) message.name = String(object.name); @@ -111512,12 +116258,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.type != null) message.type = String(object.type); @@ -111550,7 +116296,7 @@ if (object.lastTuneTime != null) { if (typeof object.lastTuneTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.lastTuneTime: object expected"); - message.lastTuneTime = $root.google.protobuf.Timestamp.fromObject(object.lastTuneTime); + message.lastTuneTime = $root.google.protobuf.Timestamp.fromObject(object.lastTuneTime, long + 1); } if (object.tuningOperation != null) message.tuningOperation = String(object.tuningOperation); @@ -111601,13 +116347,13 @@ for (var i = 0; i < object.servingConfigLists.length; ++i) { if (typeof object.servingConfigLists[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.servingConfigLists: object expected"); - message.servingConfigLists[i] = $root.google.cloud.retail.v2alpha.Model.ServingConfigList.fromObject(object.servingConfigLists[i]); + message.servingConfigLists[i] = $root.google.cloud.retail.v2alpha.Model.ServingConfigList.fromObject(object.servingConfigLists[i], long + 1); } } if (object.modelFeaturesConfig != null) { if (typeof object.modelFeaturesConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.modelFeaturesConfig: object expected"); - message.modelFeaturesConfig = $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig.fromObject(object.modelFeaturesConfig); + message.modelFeaturesConfig = $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig.fromObject(object.modelFeaturesConfig, long + 1); } return message; }; @@ -111733,7 +116479,7 @@ this.panels = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -111819,9 +116565,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PageOptimizationConfig.decode = function decode(reader, length, error) { + PageOptimizationConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -111835,7 +116585,7 @@ case 2: { if (!(message.panels && message.panels.length)) message.panels = []; - message.panels.push($root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel.decode(reader, reader.uint32())); + message.panels.push($root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -111843,7 +116593,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -111874,9 +116624,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PageOptimizationConfig.verify = function verify(message) { + PageOptimizationConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pageOptimizationEventType != null && message.hasOwnProperty("pageOptimizationEventType")) if (!$util.isString(message.pageOptimizationEventType)) return "pageOptimizationEventType: string expected"; @@ -111884,7 +116638,7 @@ if (!Array.isArray(message.panels)) return "panels: array expected"; for (var i = 0; i < message.panels.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel.verify(message.panels[i]); + var error = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel.verify(message.panels[i], long + 1); if (error) return "panels." + error; } @@ -111911,9 +116665,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Model.PageOptimizationConfig} PageOptimizationConfig */ - PageOptimizationConfig.fromObject = function fromObject(object) { + PageOptimizationConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig(); if (object.pageOptimizationEventType != null) message.pageOptimizationEventType = String(object.pageOptimizationEventType); @@ -111924,7 +116682,7 @@ for (var i = 0; i < object.panels.length; ++i) { if (typeof object.panels[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.PageOptimizationConfig.panels: object expected"); - message.panels[i] = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel.fromObject(object.panels[i]); + message.panels[i] = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel.fromObject(object.panels[i], long + 1); } } switch (object.restriction) { @@ -112035,7 +116793,7 @@ function Candidate(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -112114,9 +116872,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Candidate.decode = function decode(reader, length, error) { + Candidate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate(); while (reader.pos < end) { var tag = reader.uint32(); @@ -112128,7 +116890,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -112159,9 +116921,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Candidate.verify = function verify(message) { + Candidate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.servingConfigId != null && message.hasOwnProperty("servingConfigId")) { properties.candidate = 1; @@ -112179,9 +116945,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate} Candidate */ - Candidate.fromObject = function fromObject(object) { + Candidate.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate(); if (object.servingConfigId != null) message.servingConfigId = String(object.servingConfigId); @@ -112261,7 +117031,7 @@ this.candidates = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -112347,9 +117117,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Panel.decode = function decode(reader, length, error) { + Panel.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel(); while (reader.pos < end) { var tag = reader.uint32(); @@ -112363,15 +117137,15 @@ case 2: { if (!(message.candidates && message.candidates.length)) message.candidates = []; - message.candidates.push($root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.decode(reader, reader.uint32())); + message.candidates.push($root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.defaultCandidate = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.decode(reader, reader.uint32()); + message.defaultCandidate = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -112402,9 +117176,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Panel.verify = function verify(message) { + Panel.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.displayName != null && message.hasOwnProperty("displayName")) if (!$util.isString(message.displayName)) return "displayName: string expected"; @@ -112412,13 +117190,13 @@ if (!Array.isArray(message.candidates)) return "candidates: array expected"; for (var i = 0; i < message.candidates.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.verify(message.candidates[i]); + var error = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.verify(message.candidates[i], long + 1); if (error) return "candidates." + error; } } if (message.defaultCandidate != null && message.hasOwnProperty("defaultCandidate")) { - var error = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.verify(message.defaultCandidate); + var error = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.verify(message.defaultCandidate, long + 1); if (error) return "defaultCandidate." + error; } @@ -112433,9 +117211,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel} Panel */ - Panel.fromObject = function fromObject(object) { + Panel.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel(); if (object.displayName != null) message.displayName = String(object.displayName); @@ -112446,13 +117228,13 @@ for (var i = 0; i < object.candidates.length; ++i) { if (typeof object.candidates[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel.candidates: object expected"); - message.candidates[i] = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.fromObject(object.candidates[i]); + message.candidates[i] = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.fromObject(object.candidates[i], long + 1); } } if (object.defaultCandidate != null) { if (typeof object.defaultCandidate !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Panel.defaultCandidate: object expected"); - message.defaultCandidate = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.fromObject(object.defaultCandidate); + message.defaultCandidate = $root.google.cloud.retail.v2alpha.Model.PageOptimizationConfig.Candidate.fromObject(object.defaultCandidate, long + 1); } return message; }; @@ -112561,7 +117343,7 @@ this.servingConfigIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -112627,9 +117409,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfigList.decode = function decode(reader, length, error) { + ServingConfigList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Model.ServingConfigList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -112643,7 +117429,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -112674,9 +117460,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfigList.verify = function verify(message) { + ServingConfigList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfigIds != null && message.hasOwnProperty("servingConfigIds")) { if (!Array.isArray(message.servingConfigIds)) return "servingConfigIds: array expected"; @@ -112695,9 +117485,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Model.ServingConfigList} ServingConfigList */ - ServingConfigList.fromObject = function fromObject(object) { + ServingConfigList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Model.ServingConfigList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Model.ServingConfigList(); if (object.servingConfigIds) { if (!Array.isArray(object.servingConfigIds)) @@ -112781,7 +117575,7 @@ function FrequentlyBoughtTogetherFeaturesConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -112846,9 +117640,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FrequentlyBoughtTogetherFeaturesConfig.decode = function decode(reader, length, error) { + FrequentlyBoughtTogetherFeaturesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -112860,7 +117658,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -112891,9 +117689,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FrequentlyBoughtTogetherFeaturesConfig.verify = function verify(message) { + FrequentlyBoughtTogetherFeaturesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.contextProductsType != null && message.hasOwnProperty("contextProductsType")) switch (message.contextProductsType) { default: @@ -112914,9 +117716,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig} FrequentlyBoughtTogetherFeaturesConfig */ - FrequentlyBoughtTogetherFeaturesConfig.fromObject = function fromObject(object) { + FrequentlyBoughtTogetherFeaturesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig(); switch (object.contextProductsType) { default: @@ -113010,7 +117816,7 @@ function ModelFeaturesConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -113089,9 +117895,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ModelFeaturesConfig.decode = function decode(reader, length, error) { + ModelFeaturesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -113099,11 +117909,11 @@ break; switch (tag >>> 3) { case 1: { - message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig.decode(reader, reader.uint32()); + message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -113134,14 +117944,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ModelFeaturesConfig.verify = function verify(message) { + ModelFeaturesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.frequentlyBoughtTogetherConfig != null && message.hasOwnProperty("frequentlyBoughtTogetherConfig")) { properties.typeDedicatedConfig = 1; { - var error = $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig.verify(message.frequentlyBoughtTogetherConfig); + var error = $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig.verify(message.frequentlyBoughtTogetherConfig, long + 1); if (error) return "frequentlyBoughtTogetherConfig." + error; } @@ -113157,14 +117971,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Model.ModelFeaturesConfig} ModelFeaturesConfig */ - ModelFeaturesConfig.fromObject = function fromObject(object) { + ModelFeaturesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Model.ModelFeaturesConfig(); if (object.frequentlyBoughtTogetherConfig != null) { if (typeof object.frequentlyBoughtTogetherConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.Model.ModelFeaturesConfig.frequentlyBoughtTogetherConfig: object expected"); - message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig.fromObject(object.frequentlyBoughtTogetherConfig); + message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2alpha.Model.FrequentlyBoughtTogetherFeaturesConfig.fromObject(object.frequentlyBoughtTogetherConfig, long + 1); } return message; }; @@ -113627,7 +118445,7 @@ function CreateModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -113712,9 +118530,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateModelRequest.decode = function decode(reader, length, error) { + CreateModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CreateModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -113726,7 +118548,7 @@ break; } case 2: { - message.model = $root.google.cloud.retail.v2alpha.Model.decode(reader, reader.uint32()); + message.model = $root.google.cloud.retail.v2alpha.Model.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -113734,7 +118556,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -113765,14 +118587,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateModelRequest.verify = function verify(message) { + CreateModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.model != null && message.hasOwnProperty("model")) { - var error = $root.google.cloud.retail.v2alpha.Model.verify(message.model); + var error = $root.google.cloud.retail.v2alpha.Model.verify(message.model, long + 1); if (error) return "model." + error; } @@ -113790,16 +118616,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CreateModelRequest} CreateModelRequest */ - CreateModelRequest.fromObject = function fromObject(object) { + CreateModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CreateModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CreateModelRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.model != null) { if (typeof object.model !== "object") throw TypeError(".google.cloud.retail.v2alpha.CreateModelRequest.model: object expected"); - message.model = $root.google.cloud.retail.v2alpha.Model.fromObject(object.model); + message.model = $root.google.cloud.retail.v2alpha.Model.fromObject(object.model, long + 1); } if (object.dryRun != null) message.dryRun = Boolean(object.dryRun); @@ -113883,7 +118713,7 @@ function UpdateModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -113958,9 +118788,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateModelRequest.decode = function decode(reader, length, error) { + UpdateModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -113968,15 +118802,15 @@ break; switch (tag >>> 3) { case 1: { - message.model = $root.google.cloud.retail.v2alpha.Model.decode(reader, reader.uint32()); + message.model = $root.google.cloud.retail.v2alpha.Model.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -114007,16 +118841,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateModelRequest.verify = function verify(message) { + UpdateModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) { - var error = $root.google.cloud.retail.v2alpha.Model.verify(message.model); + var error = $root.google.cloud.retail.v2alpha.Model.verify(message.model, long + 1); if (error) return "model." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -114031,19 +118869,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateModelRequest} UpdateModelRequest */ - UpdateModelRequest.fromObject = function fromObject(object) { + UpdateModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateModelRequest(); if (object.model != null) { if (typeof object.model !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateModelRequest.model: object expected"); - message.model = $root.google.cloud.retail.v2alpha.Model.fromObject(object.model); + message.model = $root.google.cloud.retail.v2alpha.Model.fromObject(object.model, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateModelRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -114121,7 +118963,7 @@ function GetModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -114186,9 +119028,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetModelRequest.decode = function decode(reader, length, error) { + GetModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -114200,7 +119046,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -114231,9 +119077,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetModelRequest.verify = function verify(message) { + GetModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -114248,9 +119098,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetModelRequest} GetModelRequest */ - GetModelRequest.fromObject = function fromObject(object) { + GetModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetModelRequest(); if (object.name != null) message.name = String(object.name); @@ -114326,7 +119180,7 @@ function PauseModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -114391,9 +119245,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PauseModelRequest.decode = function decode(reader, length, error) { + PauseModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PauseModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -114405,7 +119263,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -114436,9 +119294,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PauseModelRequest.verify = function verify(message) { + PauseModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -114453,9 +119315,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PauseModelRequest} PauseModelRequest */ - PauseModelRequest.fromObject = function fromObject(object) { + PauseModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PauseModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PauseModelRequest(); if (object.name != null) message.name = String(object.name); @@ -114531,7 +119397,7 @@ function ResumeModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -114596,9 +119462,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResumeModelRequest.decode = function decode(reader, length, error) { + ResumeModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ResumeModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -114610,7 +119480,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -114641,9 +119511,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResumeModelRequest.verify = function verify(message) { + ResumeModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -114658,9 +119532,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ResumeModelRequest} ResumeModelRequest */ - ResumeModelRequest.fromObject = function fromObject(object) { + ResumeModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ResumeModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ResumeModelRequest(); if (object.name != null) message.name = String(object.name); @@ -114738,7 +119616,7 @@ function ListModelsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -114823,9 +119701,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListModelsRequest.decode = function decode(reader, length, error) { + ListModelsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListModelsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -114845,7 +119727,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -114876,9 +119758,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListModelsRequest.verify = function verify(message) { + ListModelsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -114899,9 +119785,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListModelsRequest} ListModelsRequest */ - ListModelsRequest.fromObject = function fromObject(object) { + ListModelsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListModelsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListModelsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -114988,7 +119878,7 @@ function DeleteModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -115053,9 +119943,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteModelRequest.decode = function decode(reader, length, error) { + DeleteModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.DeleteModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -115067,7 +119961,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -115098,9 +119992,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteModelRequest.verify = function verify(message) { + DeleteModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -115115,9 +120013,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.DeleteModelRequest} DeleteModelRequest */ - DeleteModelRequest.fromObject = function fromObject(object) { + DeleteModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.DeleteModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.DeleteModelRequest(); if (object.name != null) message.name = String(object.name); @@ -115195,7 +120097,7 @@ this.models = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -115271,9 +120173,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListModelsResponse.decode = function decode(reader, length, error) { + ListModelsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListModelsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -115283,7 +120189,7 @@ case 1: { if (!(message.models && message.models.length)) message.models = []; - message.models.push($root.google.cloud.retail.v2alpha.Model.decode(reader, reader.uint32())); + message.models.push($root.google.cloud.retail.v2alpha.Model.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -115291,7 +120197,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -115322,14 +120228,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListModelsResponse.verify = function verify(message) { + ListModelsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.models != null && message.hasOwnProperty("models")) { if (!Array.isArray(message.models)) return "models: array expected"; for (var i = 0; i < message.models.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Model.verify(message.models[i]); + var error = $root.google.cloud.retail.v2alpha.Model.verify(message.models[i], long + 1); if (error) return "models." + error; } @@ -115348,9 +120258,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListModelsResponse} ListModelsResponse */ - ListModelsResponse.fromObject = function fromObject(object) { + ListModelsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListModelsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListModelsResponse(); if (object.models) { if (!Array.isArray(object.models)) @@ -115359,7 +120273,7 @@ for (var i = 0; i < object.models.length; ++i) { if (typeof object.models[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListModelsResponse.models: object expected"); - message.models[i] = $root.google.cloud.retail.v2alpha.Model.fromObject(object.models[i]); + message.models[i] = $root.google.cloud.retail.v2alpha.Model.fromObject(object.models[i], long + 1); } } if (object.nextPageToken != null) @@ -115443,7 +120357,7 @@ function TuneModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -115508,9 +120422,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelRequest.decode = function decode(reader, length, error) { + TuneModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.TuneModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -115522,7 +120440,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -115553,9 +120471,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelRequest.verify = function verify(message) { + TuneModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -115570,9 +120492,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.TuneModelRequest} TuneModelRequest */ - TuneModelRequest.fromObject = function fromObject(object) { + TuneModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.TuneModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.TuneModelRequest(); if (object.name != null) message.name = String(object.name); @@ -115648,7 +120574,7 @@ function CreateModelMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -115713,9 +120639,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateModelMetadata.decode = function decode(reader, length, error) { + CreateModelMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CreateModelMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -115727,7 +120657,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -115758,9 +120688,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateModelMetadata.verify = function verify(message) { + CreateModelMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) if (!$util.isString(message.model)) return "model: string expected"; @@ -115775,9 +120709,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CreateModelMetadata} CreateModelMetadata */ - CreateModelMetadata.fromObject = function fromObject(object) { + CreateModelMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CreateModelMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CreateModelMetadata(); if (object.model != null) message.model = String(object.model); @@ -115853,7 +120791,7 @@ function TuneModelMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -115918,9 +120856,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelMetadata.decode = function decode(reader, length, error) { + TuneModelMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.TuneModelMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -115932,7 +120874,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -115963,9 +120905,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelMetadata.verify = function verify(message) { + TuneModelMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) if (!$util.isString(message.model)) return "model: string expected"; @@ -115980,9 +120926,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.TuneModelMetadata} TuneModelMetadata */ - TuneModelMetadata.fromObject = function fromObject(object) { + TuneModelMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.TuneModelMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.TuneModelMetadata(); if (object.model != null) message.model = String(object.model); @@ -116057,7 +121007,7 @@ function TuneModelResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -116112,9 +121062,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelResponse.decode = function decode(reader, length, error) { + TuneModelResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.TuneModelResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -116122,7 +121076,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -116153,9 +121107,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelResponse.verify = function verify(message) { + TuneModelResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -116167,9 +121125,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.TuneModelResponse} TuneModelResponse */ - TuneModelResponse.fromObject = function fromObject(object) { + TuneModelResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.TuneModelResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.TuneModelResponse(); }; @@ -116312,7 +121274,7 @@ this.labels = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -116451,9 +121413,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictRequest.decode = function decode(reader, length, error) { + PredictRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PredictRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -116465,7 +121431,7 @@ break; } case 2: { - message.userEvent = $root.google.cloud.retail.v2alpha.UserEvent.decode(reader, reader.uint32()); + message.userEvent = $root.google.cloud.retail.v2alpha.UserEvent.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -116497,13 +121463,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.params, key); message.params[key] = value; break; } @@ -116523,15 +121491,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -116562,14 +121532,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictRequest.verify = function verify(message) { + PredictRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) return "placement: string expected"; if (message.userEvent != null && message.hasOwnProperty("userEvent")) { - var error = $root.google.cloud.retail.v2alpha.UserEvent.verify(message.userEvent); + var error = $root.google.cloud.retail.v2alpha.UserEvent.verify(message.userEvent, long + 1); if (error) return "userEvent." + error; } @@ -116590,7 +121564,7 @@ return "params: object expected"; var key = Object.keys(message.params); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.params[key[i]]); + var error = $root.google.protobuf.Value.verify(message.params[key[i]], long + 1); if (error) return "params." + error; } @@ -116614,16 +121588,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PredictRequest} PredictRequest */ - PredictRequest.fromObject = function fromObject(object) { + PredictRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PredictRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PredictRequest(); if (object.placement != null) message.placement = String(object.placement); if (object.userEvent != null) { if (typeof object.userEvent !== "object") throw TypeError(".google.cloud.retail.v2alpha.PredictRequest.userEvent: object expected"); - message.userEvent = $root.google.cloud.retail.v2alpha.UserEvent.fromObject(object.userEvent); + message.userEvent = $root.google.cloud.retail.v2alpha.UserEvent.fromObject(object.userEvent, long + 1); } if (object.pageSize != null) message.pageSize = object.pageSize | 0; @@ -116638,17 +121616,22 @@ throw TypeError(".google.cloud.retail.v2alpha.PredictRequest.params: object expected"); message.params = {}; for (var keys = Object.keys(object.params), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.params, keys[i]); if (typeof object.params[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.PredictRequest.params: object expected"); - message.params[keys[i]] = $root.google.protobuf.Value.fromObject(object.params[keys[i]]); + message.params[keys[i]] = $root.google.protobuf.Value.fromObject(object.params[keys[i]], long + 1); } } if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".google.cloud.retail.v2alpha.PredictRequest.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } return message; }; @@ -116693,13 +121676,19 @@ var keys2; if (message.params && (keys2 = Object.keys(message.params)).length) { object.params = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.params, keys2[j]); object.params[keys2[j]] = $root.google.protobuf.Value.toObject(message.params[keys2[j]], options); + } } if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } return object; }; @@ -116758,7 +121747,7 @@ this.missingIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -116855,9 +121844,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictResponse.decode = function decode(reader, length, error) { + PredictResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PredictResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -116867,7 +121860,7 @@ case 1: { if (!(message.results && message.results.length)) message.results = []; - message.results.push($root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult.decode(reader, reader.uint32())); + message.results.push($root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -116885,7 +121878,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -116916,14 +121909,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictResponse.verify = function verify(message) { + PredictResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.results != null && message.hasOwnProperty("results")) { if (!Array.isArray(message.results)) return "results: array expected"; for (var i = 0; i < message.results.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult.verify(message.results[i]); + var error = $root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult.verify(message.results[i], long + 1); if (error) return "results." + error; } @@ -116952,9 +121949,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PredictResponse} PredictResponse */ - PredictResponse.fromObject = function fromObject(object) { + PredictResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PredictResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PredictResponse(); if (object.results) { if (!Array.isArray(object.results)) @@ -116963,7 +121964,7 @@ for (var i = 0; i < object.results.length; ++i) { if (typeof object.results[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.PredictResponse.results: object expected"); - message.results[i] = $root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult.fromObject(object.results[i]); + message.results[i] = $root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult.fromObject(object.results[i], long + 1); } } if (object.attributionToken != null) @@ -117066,7 +122067,7 @@ this.metadata = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -117144,9 +122145,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictionResult.decode = function decode(reader, length, error) { + PredictionResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -117170,18 +122175,20 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.metadata, key); message.metadata[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -117212,9 +122219,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictionResult.verify = function verify(message) { + PredictionResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -117223,7 +122234,7 @@ return "metadata: object expected"; var key = Object.keys(message.metadata); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.metadata[key[i]]); + var error = $root.google.protobuf.Value.verify(message.metadata[key[i]], long + 1); if (error) return "metadata." + error; } @@ -117239,9 +122250,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PredictResponse.PredictionResult} PredictionResult */ - PredictionResult.fromObject = function fromObject(object) { + PredictionResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PredictResponse.PredictionResult(); if (object.id != null) message.id = String(object.id); @@ -117250,9 +122265,11 @@ throw TypeError(".google.cloud.retail.v2alpha.PredictResponse.PredictionResult.metadata: object expected"); message.metadata = {}; for (var keys = Object.keys(object.metadata), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.metadata, keys[i]); if (typeof object.metadata[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2alpha.PredictResponse.PredictionResult.metadata: object expected"); - message.metadata[keys[i]] = $root.google.protobuf.Value.fromObject(object.metadata[keys[i]]); + message.metadata[keys[i]] = $root.google.protobuf.Value.fromObject(object.metadata[keys[i]], long + 1); } } return message; @@ -117280,8 +122297,11 @@ var keys2; if (message.metadata && (keys2 = Object.keys(message.metadata)).length) { object.metadata = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.metadata, keys2[j]); object.metadata[keys2[j]] = $root.google.protobuf.Value.toObject(message.metadata[keys2[j]], options); + } } return object; }; @@ -117804,7 +122824,7 @@ function CreateProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -117889,9 +122909,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateProductRequest.decode = function decode(reader, length, error) { + CreateProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CreateProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -117903,7 +122927,7 @@ break; } case 2: { - message.product = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -117911,7 +122935,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -117942,14 +122966,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateProductRequest.verify = function verify(message) { + CreateProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.product); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.product, long + 1); if (error) return "product." + error; } @@ -117967,16 +122995,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CreateProductRequest} CreateProductRequest */ - CreateProductRequest.fromObject = function fromObject(object) { + CreateProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CreateProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CreateProductRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2alpha.CreateProductRequest.product: object expected"); - message.product = $root.google.cloud.retail.v2alpha.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2alpha.Product.fromObject(object.product, long + 1); } if (object.productId != null) message.productId = String(object.productId); @@ -118059,7 +123091,7 @@ function GetProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -118124,9 +123156,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetProductRequest.decode = function decode(reader, length, error) { + GetProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -118138,7 +123174,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -118169,9 +123205,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetProductRequest.verify = function verify(message) { + GetProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -118186,9 +123226,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetProductRequest} GetProductRequest */ - GetProductRequest.fromObject = function fromObject(object) { + GetProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetProductRequest(); if (object.name != null) message.name = String(object.name); @@ -118266,7 +123310,7 @@ function UpdateProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -118351,9 +123395,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateProductRequest.decode = function decode(reader, length, error) { + UpdateProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -118361,11 +123409,11 @@ break; switch (tag >>> 3) { case 1: { - message.product = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -118373,7 +123421,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -118404,16 +123452,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateProductRequest.verify = function verify(message) { + UpdateProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.product); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.product, long + 1); if (error) return "product." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -118431,19 +123483,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateProductRequest} UpdateProductRequest */ - UpdateProductRequest.fromObject = function fromObject(object) { + UpdateProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateProductRequest(); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateProductRequest.product: object expected"); - message.product = $root.google.cloud.retail.v2alpha.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2alpha.Product.fromObject(object.product, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateProductRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -118527,7 +123583,7 @@ function DeleteProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -118602,9 +123658,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteProductRequest.decode = function decode(reader, length, error) { + DeleteProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.DeleteProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -118620,7 +123680,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -118651,9 +123711,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteProductRequest.verify = function verify(message) { + DeleteProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -118671,9 +123735,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.DeleteProductRequest} DeleteProductRequest */ - DeleteProductRequest.fromObject = function fromObject(object) { + DeleteProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.DeleteProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.DeleteProductRequest(); if (object.name != null) message.name = String(object.name); @@ -118760,7 +123828,7 @@ function ListProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -118875,9 +123943,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListProductsRequest.decode = function decode(reader, length, error) { + ListProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -118901,7 +123973,7 @@ break; } case 5: { - message.readMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.readMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -118909,7 +123981,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -118940,9 +124012,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListProductsRequest.verify = function verify(message) { + ListProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -118956,7 +124032,7 @@ if (!$util.isString(message.filter)) return "filter: string expected"; if (message.readMask != null && message.hasOwnProperty("readMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.readMask); + var error = $root.google.protobuf.FieldMask.verify(message.readMask, long + 1); if (error) return "readMask." + error; } @@ -118974,9 +124050,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListProductsRequest} ListProductsRequest */ - ListProductsRequest.fromObject = function fromObject(object) { + ListProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -118989,7 +124069,7 @@ if (object.readMask != null) { if (typeof object.readMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListProductsRequest.readMask: object expected"); - message.readMask = $root.google.protobuf.FieldMask.fromObject(object.readMask); + message.readMask = $root.google.protobuf.FieldMask.fromObject(object.readMask, long + 1); } if (object.requireTotalSize != null) message.requireTotalSize = Boolean(object.requireTotalSize); @@ -119084,7 +124164,7 @@ this.products = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -119170,9 +124250,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListProductsResponse.decode = function decode(reader, length, error) { + ListProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -119182,7 +124266,7 @@ case 1: { if (!(message.products && message.products.length)) message.products = []; - message.products.push($root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32())); + message.products.push($root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -119194,7 +124278,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -119225,14 +124309,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListProductsResponse.verify = function verify(message) { + ListProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.products != null && message.hasOwnProperty("products")) { if (!Array.isArray(message.products)) return "products: array expected"; for (var i = 0; i < message.products.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.products[i]); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.products[i], long + 1); if (error) return "products." + error; } @@ -119254,9 +124342,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListProductsResponse} ListProductsResponse */ - ListProductsResponse.fromObject = function fromObject(object) { + ListProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListProductsResponse(); if (object.products) { if (!Array.isArray(object.products)) @@ -119265,7 +124357,7 @@ for (var i = 0; i < object.products.length; ++i) { if (typeof object.products[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListProductsResponse.products: object expected"); - message.products[i] = $root.google.cloud.retail.v2alpha.Product.fromObject(object.products[i]); + message.products[i] = $root.google.cloud.retail.v2alpha.Product.fromObject(object.products[i], long + 1); } } if (object.nextPageToken != null) @@ -119358,7 +124450,7 @@ function SetInventoryRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -119453,9 +124545,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryRequest.decode = function decode(reader, length, error) { + SetInventoryRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SetInventoryRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -119463,15 +124559,15 @@ break; switch (tag >>> 3) { case 1: { - message.inventory = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32()); + message.inventory = $root.google.cloud.retail.v2alpha.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.setMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.setMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -119479,7 +124575,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -119510,21 +124606,25 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryRequest.verify = function verify(message) { + SetInventoryRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.inventory != null && message.hasOwnProperty("inventory")) { - var error = $root.google.cloud.retail.v2alpha.Product.verify(message.inventory); + var error = $root.google.cloud.retail.v2alpha.Product.verify(message.inventory, long + 1); if (error) return "inventory." + error; } if (message.setMask != null && message.hasOwnProperty("setMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.setMask); + var error = $root.google.protobuf.FieldMask.verify(message.setMask, long + 1); if (error) return "setMask." + error; } if (message.setTime != null && message.hasOwnProperty("setTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.setTime); + var error = $root.google.protobuf.Timestamp.verify(message.setTime, long + 1); if (error) return "setTime." + error; } @@ -119542,24 +124642,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SetInventoryRequest} SetInventoryRequest */ - SetInventoryRequest.fromObject = function fromObject(object) { + SetInventoryRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SetInventoryRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.SetInventoryRequest(); if (object.inventory != null) { if (typeof object.inventory !== "object") throw TypeError(".google.cloud.retail.v2alpha.SetInventoryRequest.inventory: object expected"); - message.inventory = $root.google.cloud.retail.v2alpha.Product.fromObject(object.inventory); + message.inventory = $root.google.cloud.retail.v2alpha.Product.fromObject(object.inventory, long + 1); } if (object.setMask != null) { if (typeof object.setMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.SetInventoryRequest.setMask: object expected"); - message.setMask = $root.google.protobuf.FieldMask.fromObject(object.setMask); + message.setMask = $root.google.protobuf.FieldMask.fromObject(object.setMask, long + 1); } if (object.setTime != null) { if (typeof object.setTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.SetInventoryRequest.setTime: object expected"); - message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime); + message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -119644,7 +124748,7 @@ function SetInventoryMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -119699,9 +124803,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryMetadata.decode = function decode(reader, length, error) { + SetInventoryMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SetInventoryMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -119709,7 +124817,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -119740,9 +124848,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryMetadata.verify = function verify(message) { + SetInventoryMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -119754,9 +124866,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SetInventoryMetadata} SetInventoryMetadata */ - SetInventoryMetadata.fromObject = function fromObject(object) { + SetInventoryMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SetInventoryMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.SetInventoryMetadata(); }; @@ -119821,7 +124937,7 @@ function SetInventoryResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -119876,9 +124992,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryResponse.decode = function decode(reader, length, error) { + SetInventoryResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.SetInventoryResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -119886,7 +125006,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -119917,9 +125037,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryResponse.verify = function verify(message) { + SetInventoryResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -119931,9 +125055,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.SetInventoryResponse} SetInventoryResponse */ - SetInventoryResponse.fromObject = function fromObject(object) { + SetInventoryResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.SetInventoryResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.SetInventoryResponse(); }; @@ -120004,7 +125132,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -120110,9 +125238,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesRequest.decode = function decode(reader, length, error) { + AddFulfillmentPlacesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -120134,7 +125266,7 @@ break; } case 4: { - message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -120142,7 +125274,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -120173,9 +125305,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesRequest.verify = function verify(message) { + AddFulfillmentPlacesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -120190,7 +125326,7 @@ return "placeIds: string[] expected"; } if (message.addTime != null && message.hasOwnProperty("addTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.addTime); + var error = $root.google.protobuf.Timestamp.verify(message.addTime, long + 1); if (error) return "addTime." + error; } @@ -120208,9 +125344,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AddFulfillmentPlacesRequest} AddFulfillmentPlacesRequest */ - AddFulfillmentPlacesRequest.fromObject = function fromObject(object) { + AddFulfillmentPlacesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesRequest(); if (object.product != null) message.product = String(object.product); @@ -120226,7 +125366,7 @@ if (object.addTime != null) { if (typeof object.addTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.AddFulfillmentPlacesRequest.addTime: object expected"); - message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime); + message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -120318,7 +125458,7 @@ function AddFulfillmentPlacesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -120373,9 +125513,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesMetadata.decode = function decode(reader, length, error) { + AddFulfillmentPlacesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -120383,7 +125527,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -120414,9 +125558,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesMetadata.verify = function verify(message) { + AddFulfillmentPlacesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -120428,9 +125576,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AddFulfillmentPlacesMetadata} AddFulfillmentPlacesMetadata */ - AddFulfillmentPlacesMetadata.fromObject = function fromObject(object) { + AddFulfillmentPlacesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesMetadata(); }; @@ -120495,7 +125647,7 @@ function AddFulfillmentPlacesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -120550,9 +125702,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesResponse.decode = function decode(reader, length, error) { + AddFulfillmentPlacesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -120560,7 +125716,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -120591,9 +125747,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesResponse.verify = function verify(message) { + AddFulfillmentPlacesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -120605,9 +125765,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AddFulfillmentPlacesResponse} AddFulfillmentPlacesResponse */ - AddFulfillmentPlacesResponse.fromObject = function fromObject(object) { + AddFulfillmentPlacesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.AddFulfillmentPlacesResponse(); }; @@ -120678,7 +125842,7 @@ this.localInventories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -120784,9 +125948,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesRequest.decode = function decode(reader, length, error) { + AddLocalInventoriesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AddLocalInventoriesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -120800,15 +125968,15 @@ case 2: { if (!(message.localInventories && message.localInventories.length)) message.localInventories = []; - message.localInventories.push($root.google.cloud.retail.v2alpha.LocalInventory.decode(reader, reader.uint32())); + message.localInventories.push($root.google.cloud.retail.v2alpha.LocalInventory.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.addMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.addMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -120816,7 +125984,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -120847,9 +126015,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesRequest.verify = function verify(message) { + AddLocalInventoriesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -120857,18 +126029,18 @@ if (!Array.isArray(message.localInventories)) return "localInventories: array expected"; for (var i = 0; i < message.localInventories.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.LocalInventory.verify(message.localInventories[i]); + var error = $root.google.cloud.retail.v2alpha.LocalInventory.verify(message.localInventories[i], long + 1); if (error) return "localInventories." + error; } } if (message.addMask != null && message.hasOwnProperty("addMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.addMask); + var error = $root.google.protobuf.FieldMask.verify(message.addMask, long + 1); if (error) return "addMask." + error; } if (message.addTime != null && message.hasOwnProperty("addTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.addTime); + var error = $root.google.protobuf.Timestamp.verify(message.addTime, long + 1); if (error) return "addTime." + error; } @@ -120886,9 +126058,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AddLocalInventoriesRequest} AddLocalInventoriesRequest */ - AddLocalInventoriesRequest.fromObject = function fromObject(object) { + AddLocalInventoriesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AddLocalInventoriesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AddLocalInventoriesRequest(); if (object.product != null) message.product = String(object.product); @@ -120899,18 +126075,18 @@ for (var i = 0; i < object.localInventories.length; ++i) { if (typeof object.localInventories[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.AddLocalInventoriesRequest.localInventories: object expected"); - message.localInventories[i] = $root.google.cloud.retail.v2alpha.LocalInventory.fromObject(object.localInventories[i]); + message.localInventories[i] = $root.google.cloud.retail.v2alpha.LocalInventory.fromObject(object.localInventories[i], long + 1); } } if (object.addMask != null) { if (typeof object.addMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.AddLocalInventoriesRequest.addMask: object expected"); - message.addMask = $root.google.protobuf.FieldMask.fromObject(object.addMask); + message.addMask = $root.google.protobuf.FieldMask.fromObject(object.addMask, long + 1); } if (object.addTime != null) { if (typeof object.addTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.AddLocalInventoriesRequest.addTime: object expected"); - message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime); + message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -121002,7 +126178,7 @@ function AddLocalInventoriesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -121057,9 +126233,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesMetadata.decode = function decode(reader, length, error) { + AddLocalInventoriesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AddLocalInventoriesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -121067,7 +126247,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -121098,9 +126278,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesMetadata.verify = function verify(message) { + AddLocalInventoriesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -121112,9 +126296,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AddLocalInventoriesMetadata} AddLocalInventoriesMetadata */ - AddLocalInventoriesMetadata.fromObject = function fromObject(object) { + AddLocalInventoriesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AddLocalInventoriesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.AddLocalInventoriesMetadata(); }; @@ -121179,7 +126367,7 @@ function AddLocalInventoriesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -121234,9 +126422,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesResponse.decode = function decode(reader, length, error) { + AddLocalInventoriesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AddLocalInventoriesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -121244,7 +126436,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -121275,9 +126467,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesResponse.verify = function verify(message) { + AddLocalInventoriesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -121289,9 +126485,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AddLocalInventoriesResponse} AddLocalInventoriesResponse */ - AddLocalInventoriesResponse.fromObject = function fromObject(object) { + AddLocalInventoriesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AddLocalInventoriesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.AddLocalInventoriesResponse(); }; @@ -121361,7 +126561,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -121457,9 +126657,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesRequest.decode = function decode(reader, length, error) { + RemoveLocalInventoriesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -121477,7 +126681,7 @@ break; } case 5: { - message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -121485,7 +126689,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -121516,9 +126720,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesRequest.verify = function verify(message) { + RemoveLocalInventoriesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -121530,7 +126738,7 @@ return "placeIds: string[] expected"; } if (message.removeTime != null && message.hasOwnProperty("removeTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.removeTime); + var error = $root.google.protobuf.Timestamp.verify(message.removeTime, long + 1); if (error) return "removeTime." + error; } @@ -121548,9 +126756,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RemoveLocalInventoriesRequest} RemoveLocalInventoriesRequest */ - RemoveLocalInventoriesRequest.fromObject = function fromObject(object) { + RemoveLocalInventoriesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesRequest(); if (object.product != null) message.product = String(object.product); @@ -121564,7 +126776,7 @@ if (object.removeTime != null) { if (typeof object.removeTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.RemoveLocalInventoriesRequest.removeTime: object expected"); - message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime); + message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -121653,7 +126865,7 @@ function RemoveLocalInventoriesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -121708,9 +126920,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesMetadata.decode = function decode(reader, length, error) { + RemoveLocalInventoriesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -121718,7 +126934,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -121749,9 +126965,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesMetadata.verify = function verify(message) { + RemoveLocalInventoriesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -121763,9 +126983,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RemoveLocalInventoriesMetadata} RemoveLocalInventoriesMetadata */ - RemoveLocalInventoriesMetadata.fromObject = function fromObject(object) { + RemoveLocalInventoriesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesMetadata(); }; @@ -121830,7 +127054,7 @@ function RemoveLocalInventoriesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -121885,9 +127109,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesResponse.decode = function decode(reader, length, error) { + RemoveLocalInventoriesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -121895,7 +127123,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -121926,9 +127154,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesResponse.verify = function verify(message) { + RemoveLocalInventoriesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -121940,9 +127172,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RemoveLocalInventoriesResponse} RemoveLocalInventoriesResponse */ - RemoveLocalInventoriesResponse.fromObject = function fromObject(object) { + RemoveLocalInventoriesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.RemoveLocalInventoriesResponse(); }; @@ -122013,7 +127249,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -122119,9 +127355,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesRequest.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -122143,7 +127383,7 @@ break; } case 4: { - message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -122151,7 +127391,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -122182,9 +127422,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesRequest.verify = function verify(message) { + RemoveFulfillmentPlacesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -122199,7 +127443,7 @@ return "placeIds: string[] expected"; } if (message.removeTime != null && message.hasOwnProperty("removeTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.removeTime); + var error = $root.google.protobuf.Timestamp.verify(message.removeTime, long + 1); if (error) return "removeTime." + error; } @@ -122217,9 +127461,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RemoveFulfillmentPlacesRequest} RemoveFulfillmentPlacesRequest */ - RemoveFulfillmentPlacesRequest.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesRequest(); if (object.product != null) message.product = String(object.product); @@ -122235,7 +127483,7 @@ if (object.removeTime != null) { if (typeof object.removeTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.RemoveFulfillmentPlacesRequest.removeTime: object expected"); - message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime); + message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -122327,7 +127575,7 @@ function RemoveFulfillmentPlacesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -122382,9 +127630,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesMetadata.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -122392,7 +127644,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -122423,9 +127675,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesMetadata.verify = function verify(message) { + RemoveFulfillmentPlacesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -122437,9 +127693,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RemoveFulfillmentPlacesMetadata} RemoveFulfillmentPlacesMetadata */ - RemoveFulfillmentPlacesMetadata.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesMetadata(); }; @@ -122504,7 +127764,7 @@ function RemoveFulfillmentPlacesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -122559,9 +127819,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesResponse.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -122569,7 +127833,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -122600,9 +127864,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesResponse.verify = function verify(message) { + RemoveFulfillmentPlacesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -122614,9 +127882,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RemoveFulfillmentPlacesResponse} RemoveFulfillmentPlacesResponse */ - RemoveFulfillmentPlacesResponse.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.RemoveFulfillmentPlacesResponse(); }; @@ -122681,7 +127953,7 @@ function PurgeMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -122736,9 +128008,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeMetadata.decode = function decode(reader, length, error) { + PurgeMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PurgeMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -122746,7 +128022,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -122777,9 +128053,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeMetadata.verify = function verify(message) { + PurgeMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -122791,9 +128071,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PurgeMetadata} PurgeMetadata */ - PurgeMetadata.fromObject = function fromObject(object) { + PurgeMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PurgeMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.PurgeMetadata(); }; @@ -122862,7 +128146,7 @@ function PurgeProductsMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -122957,9 +128241,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsMetadata.decode = function decode(reader, length, error) { + PurgeProductsMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PurgeProductsMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -122967,11 +128255,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -122983,7 +128271,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -123014,16 +128302,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsMetadata.verify = function verify(message) { + PurgeProductsMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -123044,19 +128336,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PurgeProductsMetadata} PurgeProductsMetadata */ - PurgeProductsMetadata.fromObject = function fromObject(object) { + PurgeProductsMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PurgeProductsMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PurgeProductsMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.PurgeProductsMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2alpha.PurgeProductsMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.successCount != null) if ($util.Long) @@ -123174,7 +128470,7 @@ function PurgeProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -123259,9 +128555,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsRequest.decode = function decode(reader, length, error) { + PurgeProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PurgeProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -123281,7 +128581,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -123312,9 +128612,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsRequest.verify = function verify(message) { + PurgeProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -123335,9 +128639,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PurgeProductsRequest} PurgeProductsRequest */ - PurgeProductsRequest.fromObject = function fromObject(object) { + PurgeProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PurgeProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PurgeProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -123426,7 +128734,7 @@ this.purgeSample = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -123502,9 +128810,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsResponse.decode = function decode(reader, length, error) { + PurgeProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PurgeProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -123522,7 +128834,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -123553,9 +128865,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsResponse.verify = function verify(message) { + PurgeProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.purgeCount != null && message.hasOwnProperty("purgeCount")) if (!$util.isInteger(message.purgeCount) && !(message.purgeCount && $util.isInteger(message.purgeCount.low) && $util.isInteger(message.purgeCount.high))) return "purgeCount: integer|Long expected"; @@ -123577,9 +128893,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PurgeProductsResponse} PurgeProductsResponse */ - PurgeProductsResponse.fromObject = function fromObject(object) { + PurgeProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PurgeProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PurgeProductsResponse(); if (object.purgeCount != null) if ($util.Long) @@ -123685,7 +129005,7 @@ function PurgeUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -123770,9 +129090,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeUserEventsRequest.decode = function decode(reader, length, error) { + PurgeUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PurgeUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -123792,7 +129116,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -123823,9 +129147,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeUserEventsRequest.verify = function verify(message) { + PurgeUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -123846,9 +129174,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PurgeUserEventsRequest} PurgeUserEventsRequest */ - PurgeUserEventsRequest.fromObject = function fromObject(object) { + PurgeUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PurgeUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PurgeUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -123935,7 +129267,7 @@ function PurgeUserEventsResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -124000,9 +129332,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeUserEventsResponse.decode = function decode(reader, length, error) { + PurgeUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.PurgeUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -124014,7 +129350,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -124045,9 +129381,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeUserEventsResponse.verify = function verify(message) { + PurgeUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.purgedEventsCount != null && message.hasOwnProperty("purgedEventsCount")) if (!$util.isInteger(message.purgedEventsCount) && !(message.purgedEventsCount && $util.isInteger(message.purgedEventsCount.low) && $util.isInteger(message.purgedEventsCount.high))) return "purgedEventsCount: integer|Long expected"; @@ -124062,9 +129402,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.PurgeUserEventsResponse} PurgeUserEventsResponse */ - PurgeUserEventsResponse.fromObject = function fromObject(object) { + PurgeUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.PurgeUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.PurgeUserEventsResponse(); if (object.purgedEventsCount != null) if ($util.Long) @@ -124157,7 +129501,7 @@ this.serviceLogGenerationRules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -124243,9 +129587,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LoggingConfig.decode = function decode(reader, length, error) { + LoggingConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.LoggingConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -124257,17 +129605,17 @@ break; } case 2: { - message.defaultLogGenerationRule = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.decode(reader, reader.uint32()); + message.defaultLogGenerationRule = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.serviceLogGenerationRules && message.serviceLogGenerationRules.length)) message.serviceLogGenerationRules = []; - message.serviceLogGenerationRules.push($root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule.decode(reader, reader.uint32())); + message.serviceLogGenerationRules.push($root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -124298,14 +129646,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LoggingConfig.verify = function verify(message) { + LoggingConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.defaultLogGenerationRule != null && message.hasOwnProperty("defaultLogGenerationRule")) { - var error = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.verify(message.defaultLogGenerationRule); + var error = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.verify(message.defaultLogGenerationRule, long + 1); if (error) return "defaultLogGenerationRule." + error; } @@ -124313,7 +129665,7 @@ if (!Array.isArray(message.serviceLogGenerationRules)) return "serviceLogGenerationRules: array expected"; for (var i = 0; i < message.serviceLogGenerationRules.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule.verify(message.serviceLogGenerationRules[i]); + var error = $root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule.verify(message.serviceLogGenerationRules[i], long + 1); if (error) return "serviceLogGenerationRules." + error; } @@ -124329,16 +129681,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.LoggingConfig} LoggingConfig */ - LoggingConfig.fromObject = function fromObject(object) { + LoggingConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.LoggingConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.LoggingConfig(); if (object.name != null) message.name = String(object.name); if (object.defaultLogGenerationRule != null) { if (typeof object.defaultLogGenerationRule !== "object") throw TypeError(".google.cloud.retail.v2alpha.LoggingConfig.defaultLogGenerationRule: object expected"); - message.defaultLogGenerationRule = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.fromObject(object.defaultLogGenerationRule); + message.defaultLogGenerationRule = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.fromObject(object.defaultLogGenerationRule, long + 1); } if (object.serviceLogGenerationRules) { if (!Array.isArray(object.serviceLogGenerationRules)) @@ -124347,7 +129703,7 @@ for (var i = 0; i < object.serviceLogGenerationRules.length; ++i) { if (typeof object.serviceLogGenerationRules[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.LoggingConfig.serviceLogGenerationRules: object expected"); - message.serviceLogGenerationRules[i] = $root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule.fromObject(object.serviceLogGenerationRules[i]); + message.serviceLogGenerationRules[i] = $root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule.fromObject(object.serviceLogGenerationRules[i], long + 1); } } return message; @@ -124431,7 +129787,7 @@ function LogGenerationRule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -124515,9 +129871,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LogGenerationRule.decode = function decode(reader, length, error) { + LogGenerationRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -124533,7 +129893,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -124564,9 +129924,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LogGenerationRule.verify = function verify(message) { + LogGenerationRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.loggingLevel != null && message.hasOwnProperty("loggingLevel")) switch (message.loggingLevel) { @@ -124595,9 +129959,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule} LogGenerationRule */ - LogGenerationRule.fromObject = function fromObject(object) { + LogGenerationRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule(); switch (object.loggingLevel) { default: @@ -124707,7 +130075,7 @@ function ServiceLogGenerationRule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -124782,9 +130150,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceLogGenerationRule.decode = function decode(reader, length, error) { + ServiceLogGenerationRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -124796,11 +130168,11 @@ break; } case 3: { - message.logGenerationRule = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.decode(reader, reader.uint32()); + message.logGenerationRule = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -124831,14 +130203,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceLogGenerationRule.verify = function verify(message) { + ServiceLogGenerationRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.serviceName != null && message.hasOwnProperty("serviceName")) if (!$util.isString(message.serviceName)) return "serviceName: string expected"; if (message.logGenerationRule != null && message.hasOwnProperty("logGenerationRule")) { - var error = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.verify(message.logGenerationRule); + var error = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.verify(message.logGenerationRule, long + 1); if (error) return "logGenerationRule." + error; } @@ -124853,16 +130229,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule} ServiceLogGenerationRule */ - ServiceLogGenerationRule.fromObject = function fromObject(object) { + ServiceLogGenerationRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule(); if (object.serviceName != null) message.serviceName = String(object.serviceName); if (object.logGenerationRule != null) { if (typeof object.logGenerationRule !== "object") throw TypeError(".google.cloud.retail.v2alpha.LoggingConfig.ServiceLogGenerationRule.logGenerationRule: object expected"); - message.logGenerationRule = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.fromObject(object.logGenerationRule); + message.logGenerationRule = $root.google.cloud.retail.v2alpha.LoggingConfig.LogGenerationRule.fromObject(object.logGenerationRule, long + 1); } return message; }; @@ -124965,7 +130345,7 @@ this.enrolledSolutions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -125044,9 +130424,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Project.decode = function decode(reader, length, error) { + Project.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.Project(); while (reader.pos < end) { var tag = reader.uint32(); @@ -125069,7 +130453,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -125100,9 +130484,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Project.verify = function verify(message) { + Project.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -125130,9 +130518,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.Project} Project */ - Project.fromObject = function fromObject(object) { + Project.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.Project) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.Project(); if (object.name != null) message.name = String(object.name); @@ -125242,7 +130634,7 @@ this.alertPolicies = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -125318,9 +130710,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AlertConfig.decode = function decode(reader, length, error) { + AlertConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AlertConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -125334,11 +130730,11 @@ case 2: { if (!(message.alertPolicies && message.alertPolicies.length)) message.alertPolicies = []; - message.alertPolicies.push($root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.decode(reader, reader.uint32())); + message.alertPolicies.push($root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -125369,9 +130765,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AlertConfig.verify = function verify(message) { + AlertConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -125379,7 +130779,7 @@ if (!Array.isArray(message.alertPolicies)) return "alertPolicies: array expected"; for (var i = 0; i < message.alertPolicies.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.verify(message.alertPolicies[i]); + var error = $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.verify(message.alertPolicies[i], long + 1); if (error) return "alertPolicies." + error; } @@ -125395,9 +130795,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AlertConfig} AlertConfig */ - AlertConfig.fromObject = function fromObject(object) { + AlertConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AlertConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AlertConfig(); if (object.name != null) message.name = String(object.name); @@ -125408,7 +130812,7 @@ for (var i = 0; i < object.alertPolicies.length; ++i) { if (typeof object.alertPolicies[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.AlertConfig.alertPolicies: object expected"); - message.alertPolicies[i] = $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.fromObject(object.alertPolicies[i]); + message.alertPolicies[i] = $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.fromObject(object.alertPolicies[i], long + 1); } } return message; @@ -125490,7 +130894,7 @@ this.recipients = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -125576,9 +130980,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AlertPolicy.decode = function decode(reader, length, error) { + AlertPolicy.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy(); while (reader.pos < end) { var tag = reader.uint32(); @@ -125596,11 +131004,11 @@ case 3: { if (!(message.recipients && message.recipients.length)) message.recipients = []; - message.recipients.push($root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient.decode(reader, reader.uint32())); + message.recipients.push($root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -125631,9 +131039,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AlertPolicy.verify = function verify(message) { + AlertPolicy.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.alertGroup != null && message.hasOwnProperty("alertGroup")) if (!$util.isString(message.alertGroup)) return "alertGroup: string expected"; @@ -125650,7 +131062,7 @@ if (!Array.isArray(message.recipients)) return "recipients: array expected"; for (var i = 0; i < message.recipients.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient.verify(message.recipients[i]); + var error = $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient.verify(message.recipients[i], long + 1); if (error) return "recipients." + error; } @@ -125666,9 +131078,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AlertConfig.AlertPolicy} AlertPolicy */ - AlertPolicy.fromObject = function fromObject(object) { + AlertPolicy.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy(); if (object.alertGroup != null) message.alertGroup = String(object.alertGroup); @@ -125699,7 +131115,7 @@ for (var i = 0; i < object.recipients.length; ++i) { if (typeof object.recipients[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.recipients: object expected"); - message.recipients[i] = $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient.fromObject(object.recipients[i]); + message.recipients[i] = $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient.fromObject(object.recipients[i], long + 1); } } return message; @@ -125782,7 +131198,7 @@ function Recipient(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -125847,9 +131263,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Recipient.decode = function decode(reader, length, error) { + Recipient.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient(); while (reader.pos < end) { var tag = reader.uint32(); @@ -125861,7 +131281,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -125892,9 +131312,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Recipient.verify = function verify(message) { + Recipient.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.emailAddress != null && message.hasOwnProperty("emailAddress")) if (!$util.isString(message.emailAddress)) return "emailAddress: string expected"; @@ -125909,9 +131333,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient} Recipient */ - Recipient.fromObject = function fromObject(object) { + Recipient.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AlertConfig.AlertPolicy.Recipient(); if (object.emailAddress != null) message.emailAddress = String(object.emailAddress); @@ -126308,7 +131736,7 @@ function GetProjectRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -126373,9 +131801,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetProjectRequest.decode = function decode(reader, length, error) { + GetProjectRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetProjectRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -126387,7 +131819,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -126418,9 +131850,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetProjectRequest.verify = function verify(message) { + GetProjectRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -126435,9 +131871,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetProjectRequest} GetProjectRequest */ - GetProjectRequest.fromObject = function fromObject(object) { + GetProjectRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetProjectRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetProjectRequest(); if (object.name != null) message.name = String(object.name); @@ -126513,7 +131953,7 @@ function AcceptTermsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -126578,9 +132018,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AcceptTermsRequest.decode = function decode(reader, length, error) { + AcceptTermsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AcceptTermsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -126592,7 +132036,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -126623,9 +132067,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AcceptTermsRequest.verify = function verify(message) { + AcceptTermsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.project != null && message.hasOwnProperty("project")) if (!$util.isString(message.project)) return "project: string expected"; @@ -126640,9 +132088,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AcceptTermsRequest} AcceptTermsRequest */ - AcceptTermsRequest.fromObject = function fromObject(object) { + AcceptTermsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AcceptTermsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AcceptTermsRequest(); if (object.project != null) message.project = String(object.project); @@ -126719,7 +132171,7 @@ function EnrollSolutionRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -126794,9 +132246,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnrollSolutionRequest.decode = function decode(reader, length, error) { + EnrollSolutionRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.EnrollSolutionRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -126812,7 +132268,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -126843,9 +132299,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnrollSolutionRequest.verify = function verify(message) { + EnrollSolutionRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.project != null && message.hasOwnProperty("project")) if (!$util.isString(message.project)) return "project: string expected"; @@ -126869,9 +132329,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.EnrollSolutionRequest} EnrollSolutionRequest */ - EnrollSolutionRequest.fromObject = function fromObject(object) { + EnrollSolutionRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.EnrollSolutionRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.EnrollSolutionRequest(); if (object.project != null) message.project = String(object.project); @@ -126971,7 +132435,7 @@ function EnrollSolutionResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -127036,9 +132500,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnrollSolutionResponse.decode = function decode(reader, length, error) { + EnrollSolutionResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.EnrollSolutionResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -127050,7 +132518,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -127081,9 +132549,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnrollSolutionResponse.verify = function verify(message) { + EnrollSolutionResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.enrolledSolution != null && message.hasOwnProperty("enrolledSolution")) switch (message.enrolledSolution) { default: @@ -127104,9 +132576,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.EnrollSolutionResponse} EnrollSolutionResponse */ - EnrollSolutionResponse.fromObject = function fromObject(object) { + EnrollSolutionResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.EnrollSolutionResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.EnrollSolutionResponse(); switch (object.enrolledSolution) { default: @@ -127199,7 +132675,7 @@ function EnrollSolutionMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -127254,9 +132730,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnrollSolutionMetadata.decode = function decode(reader, length, error) { + EnrollSolutionMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.EnrollSolutionMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -127264,7 +132744,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -127295,9 +132775,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnrollSolutionMetadata.verify = function verify(message) { + EnrollSolutionMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -127309,9 +132793,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.EnrollSolutionMetadata} EnrollSolutionMetadata */ - EnrollSolutionMetadata.fromObject = function fromObject(object) { + EnrollSolutionMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.EnrollSolutionMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.EnrollSolutionMetadata(); }; @@ -127377,7 +132865,7 @@ function ListEnrolledSolutionsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -127442,9 +132930,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListEnrolledSolutionsRequest.decode = function decode(reader, length, error) { + ListEnrolledSolutionsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListEnrolledSolutionsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -127456,7 +132948,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -127487,9 +132979,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListEnrolledSolutionsRequest.verify = function verify(message) { + ListEnrolledSolutionsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -127504,9 +133000,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListEnrolledSolutionsRequest} ListEnrolledSolutionsRequest */ - ListEnrolledSolutionsRequest.fromObject = function fromObject(object) { + ListEnrolledSolutionsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListEnrolledSolutionsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListEnrolledSolutionsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -127583,7 +133083,7 @@ this.enrolledSolutions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -127652,9 +133152,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListEnrolledSolutionsResponse.decode = function decode(reader, length, error) { + ListEnrolledSolutionsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListEnrolledSolutionsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -127673,7 +133177,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -127704,9 +133208,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListEnrolledSolutionsResponse.verify = function verify(message) { + ListEnrolledSolutionsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.enrolledSolutions != null && message.hasOwnProperty("enrolledSolutions")) { if (!Array.isArray(message.enrolledSolutions)) return "enrolledSolutions: array expected"; @@ -127731,9 +133239,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListEnrolledSolutionsResponse} ListEnrolledSolutionsResponse */ - ListEnrolledSolutionsResponse.fromObject = function fromObject(object) { + ListEnrolledSolutionsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListEnrolledSolutionsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListEnrolledSolutionsResponse(); if (object.enrolledSolutions) { if (!Array.isArray(object.enrolledSolutions)) @@ -127835,7 +133347,7 @@ function GetLoggingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -127900,9 +133412,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetLoggingConfigRequest.decode = function decode(reader, length, error) { + GetLoggingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetLoggingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -127914,7 +133430,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -127945,9 +133461,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetLoggingConfigRequest.verify = function verify(message) { + GetLoggingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -127962,9 +133482,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetLoggingConfigRequest} GetLoggingConfigRequest */ - GetLoggingConfigRequest.fromObject = function fromObject(object) { + GetLoggingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetLoggingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetLoggingConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -128041,7 +133565,7 @@ function UpdateLoggingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -128116,9 +133640,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateLoggingConfigRequest.decode = function decode(reader, length, error) { + UpdateLoggingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateLoggingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -128126,15 +133654,15 @@ break; switch (tag >>> 3) { case 1: { - message.loggingConfig = $root.google.cloud.retail.v2alpha.LoggingConfig.decode(reader, reader.uint32()); + message.loggingConfig = $root.google.cloud.retail.v2alpha.LoggingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -128165,16 +133693,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateLoggingConfigRequest.verify = function verify(message) { + UpdateLoggingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.loggingConfig != null && message.hasOwnProperty("loggingConfig")) { - var error = $root.google.cloud.retail.v2alpha.LoggingConfig.verify(message.loggingConfig); + var error = $root.google.cloud.retail.v2alpha.LoggingConfig.verify(message.loggingConfig, long + 1); if (error) return "loggingConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -128189,19 +133721,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateLoggingConfigRequest} UpdateLoggingConfigRequest */ - UpdateLoggingConfigRequest.fromObject = function fromObject(object) { + UpdateLoggingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateLoggingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateLoggingConfigRequest(); if (object.loggingConfig != null) { if (typeof object.loggingConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateLoggingConfigRequest.loggingConfig: object expected"); - message.loggingConfig = $root.google.cloud.retail.v2alpha.LoggingConfig.fromObject(object.loggingConfig); + message.loggingConfig = $root.google.cloud.retail.v2alpha.LoggingConfig.fromObject(object.loggingConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateLoggingConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -128279,7 +133815,7 @@ function GetAlertConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -128344,9 +133880,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetAlertConfigRequest.decode = function decode(reader, length, error) { + GetAlertConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetAlertConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -128358,7 +133898,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -128389,9 +133929,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetAlertConfigRequest.verify = function verify(message) { + GetAlertConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -128406,9 +133950,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetAlertConfigRequest} GetAlertConfigRequest */ - GetAlertConfigRequest.fromObject = function fromObject(object) { + GetAlertConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetAlertConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetAlertConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -128485,7 +134033,7 @@ function UpdateAlertConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -128560,9 +134108,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateAlertConfigRequest.decode = function decode(reader, length, error) { + UpdateAlertConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateAlertConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -128570,15 +134122,15 @@ break; switch (tag >>> 3) { case 1: { - message.alertConfig = $root.google.cloud.retail.v2alpha.AlertConfig.decode(reader, reader.uint32()); + message.alertConfig = $root.google.cloud.retail.v2alpha.AlertConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -128609,16 +134161,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateAlertConfigRequest.verify = function verify(message) { + UpdateAlertConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.alertConfig != null && message.hasOwnProperty("alertConfig")) { - var error = $root.google.cloud.retail.v2alpha.AlertConfig.verify(message.alertConfig); + var error = $root.google.cloud.retail.v2alpha.AlertConfig.verify(message.alertConfig, long + 1); if (error) return "alertConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -128633,19 +134189,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateAlertConfigRequest} UpdateAlertConfigRequest */ - UpdateAlertConfigRequest.fromObject = function fromObject(object) { + UpdateAlertConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateAlertConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateAlertConfigRequest(); if (object.alertConfig != null) { if (typeof object.alertConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateAlertConfigRequest.alertConfig: object expected"); - message.alertConfig = $root.google.cloud.retail.v2alpha.AlertConfig.fromObject(object.alertConfig); + message.alertConfig = $root.google.cloud.retail.v2alpha.AlertConfig.fromObject(object.alertConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateAlertConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -128752,7 +134312,7 @@ this.solutionTypes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -129020,9 +134580,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfig.decode = function decode(reader, length, error) { + ServingConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ServingConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -129052,7 +134616,7 @@ break; } case 6: { - message.dynamicFacetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32()); + message.dynamicFacetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -129120,7 +134684,7 @@ break; } case 21: { - message.personalizationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32()); + message.personalizationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -129135,7 +134699,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -129166,9 +134730,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfig.verify = function verify(message) { + ServingConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -129189,7 +134757,7 @@ return "facetControlIds: string[] expected"; } if (message.dynamicFacetSpec != null && message.hasOwnProperty("dynamicFacetSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec, long + 1); if (error) return "dynamicFacetSpec." + error; } @@ -129268,7 +134836,7 @@ if (typeof message.ignoreRecsDenylist !== "boolean") return "ignoreRecsDenylist: boolean expected"; if (message.personalizationSpec != null && message.hasOwnProperty("personalizationSpec")) { - var error = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec); + var error = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec, long + 1); if (error) return "personalizationSpec." + error; } @@ -129296,9 +134864,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ServingConfig} ServingConfig */ - ServingConfig.fromObject = function fromObject(object) { + ServingConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ServingConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ServingConfig(); if (object.name != null) message.name = String(object.name); @@ -129318,7 +134890,7 @@ if (object.dynamicFacetSpec != null) { if (typeof object.dynamicFacetSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.ServingConfig.dynamicFacetSpec: object expected"); - message.dynamicFacetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec); + message.dynamicFacetSpec = $root.google.cloud.retail.v2alpha.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec, long + 1); } if (object.boostControlIds) { if (!Array.isArray(object.boostControlIds)) @@ -129405,7 +134977,7 @@ if (object.personalizationSpec != null) { if (typeof object.personalizationSpec !== "object") throw TypeError(".google.cloud.retail.v2alpha.ServingConfig.personalizationSpec: object expected"); - message.personalizationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec); + message.personalizationSpec = $root.google.cloud.retail.v2alpha.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec, long + 1); } if (object.solutionTypes) { if (!Array.isArray(object.solutionTypes)) @@ -129878,7 +135450,7 @@ function CreateServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -129963,9 +135535,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateServingConfigRequest.decode = function decode(reader, length, error) { + CreateServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CreateServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -129977,7 +135553,7 @@ break; } case 2: { - message.servingConfig = $root.google.cloud.retail.v2alpha.ServingConfig.decode(reader, reader.uint32()); + message.servingConfig = $root.google.cloud.retail.v2alpha.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -129985,7 +135561,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -130016,14 +135592,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateServingConfigRequest.verify = function verify(message) { + CreateServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) { - var error = $root.google.cloud.retail.v2alpha.ServingConfig.verify(message.servingConfig); + var error = $root.google.cloud.retail.v2alpha.ServingConfig.verify(message.servingConfig, long + 1); if (error) return "servingConfig." + error; } @@ -130041,16 +135621,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CreateServingConfigRequest} CreateServingConfigRequest */ - CreateServingConfigRequest.fromObject = function fromObject(object) { + CreateServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CreateServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CreateServingConfigRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.servingConfig != null) { if (typeof object.servingConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.CreateServingConfigRequest.servingConfig: object expected"); - message.servingConfig = $root.google.cloud.retail.v2alpha.ServingConfig.fromObject(object.servingConfig); + message.servingConfig = $root.google.cloud.retail.v2alpha.ServingConfig.fromObject(object.servingConfig, long + 1); } if (object.servingConfigId != null) message.servingConfigId = String(object.servingConfigId); @@ -130134,7 +135718,7 @@ function UpdateServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -130209,9 +135793,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateServingConfigRequest.decode = function decode(reader, length, error) { + UpdateServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.UpdateServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -130219,15 +135807,15 @@ break; switch (tag >>> 3) { case 1: { - message.servingConfig = $root.google.cloud.retail.v2alpha.ServingConfig.decode(reader, reader.uint32()); + message.servingConfig = $root.google.cloud.retail.v2alpha.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -130258,16 +135846,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateServingConfigRequest.verify = function verify(message) { + UpdateServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) { - var error = $root.google.cloud.retail.v2alpha.ServingConfig.verify(message.servingConfig); + var error = $root.google.cloud.retail.v2alpha.ServingConfig.verify(message.servingConfig, long + 1); if (error) return "servingConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -130282,19 +135874,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.UpdateServingConfigRequest} UpdateServingConfigRequest */ - UpdateServingConfigRequest.fromObject = function fromObject(object) { + UpdateServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.UpdateServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.UpdateServingConfigRequest(); if (object.servingConfig != null) { if (typeof object.servingConfig !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateServingConfigRequest.servingConfig: object expected"); - message.servingConfig = $root.google.cloud.retail.v2alpha.ServingConfig.fromObject(object.servingConfig); + message.servingConfig = $root.google.cloud.retail.v2alpha.ServingConfig.fromObject(object.servingConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2alpha.UpdateServingConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -130372,7 +135968,7 @@ function DeleteServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -130437,9 +136033,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteServingConfigRequest.decode = function decode(reader, length, error) { + DeleteServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.DeleteServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -130451,7 +136051,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -130482,9 +136082,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteServingConfigRequest.verify = function verify(message) { + DeleteServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -130499,9 +136103,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.DeleteServingConfigRequest} DeleteServingConfigRequest */ - DeleteServingConfigRequest.fromObject = function fromObject(object) { + DeleteServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.DeleteServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.DeleteServingConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -130577,7 +136185,7 @@ function GetServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -130642,9 +136250,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetServingConfigRequest.decode = function decode(reader, length, error) { + GetServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.GetServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -130656,7 +136268,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -130687,9 +136299,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetServingConfigRequest.verify = function verify(message) { + GetServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -130704,9 +136320,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.GetServingConfigRequest} GetServingConfigRequest */ - GetServingConfigRequest.fromObject = function fromObject(object) { + GetServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.GetServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.GetServingConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -130784,7 +136404,7 @@ function ListServingConfigsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -130869,9 +136489,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListServingConfigsRequest.decode = function decode(reader, length, error) { + ListServingConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListServingConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -130891,7 +136515,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -130922,9 +136546,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListServingConfigsRequest.verify = function verify(message) { + ListServingConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -130945,9 +136573,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListServingConfigsRequest} ListServingConfigsRequest */ - ListServingConfigsRequest.fromObject = function fromObject(object) { + ListServingConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListServingConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListServingConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -131036,7 +136668,7 @@ this.servingConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -131112,9 +136744,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListServingConfigsResponse.decode = function decode(reader, length, error) { + ListServingConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.ListServingConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -131124,7 +136760,7 @@ case 1: { if (!(message.servingConfigs && message.servingConfigs.length)) message.servingConfigs = []; - message.servingConfigs.push($root.google.cloud.retail.v2alpha.ServingConfig.decode(reader, reader.uint32())); + message.servingConfigs.push($root.google.cloud.retail.v2alpha.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -131132,7 +136768,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -131163,14 +136799,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListServingConfigsResponse.verify = function verify(message) { + ListServingConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfigs != null && message.hasOwnProperty("servingConfigs")) { if (!Array.isArray(message.servingConfigs)) return "servingConfigs: array expected"; for (var i = 0; i < message.servingConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2alpha.ServingConfig.verify(message.servingConfigs[i]); + var error = $root.google.cloud.retail.v2alpha.ServingConfig.verify(message.servingConfigs[i], long + 1); if (error) return "servingConfigs." + error; } @@ -131189,9 +136829,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.ListServingConfigsResponse} ListServingConfigsResponse */ - ListServingConfigsResponse.fromObject = function fromObject(object) { + ListServingConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.ListServingConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.ListServingConfigsResponse(); if (object.servingConfigs) { if (!Array.isArray(object.servingConfigs)) @@ -131200,7 +136844,7 @@ for (var i = 0; i < object.servingConfigs.length; ++i) { if (typeof object.servingConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2alpha.ListServingConfigsResponse.servingConfigs: object expected"); - message.servingConfigs[i] = $root.google.cloud.retail.v2alpha.ServingConfig.fromObject(object.servingConfigs[i]); + message.servingConfigs[i] = $root.google.cloud.retail.v2alpha.ServingConfig.fromObject(object.servingConfigs[i], long + 1); } } if (object.nextPageToken != null) @@ -131285,7 +136929,7 @@ function AddControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -131360,9 +137004,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddControlRequest.decode = function decode(reader, length, error) { + AddControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.AddControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -131378,7 +137026,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -131409,9 +137057,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddControlRequest.verify = function verify(message) { + AddControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) if (!$util.isString(message.servingConfig)) return "servingConfig: string expected"; @@ -131429,9 +137081,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.AddControlRequest} AddControlRequest */ - AddControlRequest.fromObject = function fromObject(object) { + AddControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.AddControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.AddControlRequest(); if (object.servingConfig != null) message.servingConfig = String(object.servingConfig); @@ -131514,7 +137170,7 @@ function RemoveControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -131589,9 +137245,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveControlRequest.decode = function decode(reader, length, error) { + RemoveControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RemoveControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -131607,7 +137267,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -131638,9 +137298,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveControlRequest.verify = function verify(message) { + RemoveControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) if (!$util.isString(message.servingConfig)) return "servingConfig: string expected"; @@ -131658,9 +137322,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RemoveControlRequest} RemoveControlRequest */ - RemoveControlRequest.fromObject = function fromObject(object) { + RemoveControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RemoveControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.RemoveControlRequest(); if (object.servingConfig != null) message.servingConfig = String(object.servingConfig); @@ -131977,7 +137645,7 @@ function WriteUserEventRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -132062,9 +137730,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WriteUserEventRequest.decode = function decode(reader, length, error) { + WriteUserEventRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.WriteUserEventRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -132076,7 +137748,7 @@ break; } case 2: { - message.userEvent = $root.google.cloud.retail.v2alpha.UserEvent.decode(reader, reader.uint32()); + message.userEvent = $root.google.cloud.retail.v2alpha.UserEvent.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -132084,7 +137756,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -132115,14 +137787,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WriteUserEventRequest.verify = function verify(message) { + WriteUserEventRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.userEvent != null && message.hasOwnProperty("userEvent")) { - var error = $root.google.cloud.retail.v2alpha.UserEvent.verify(message.userEvent); + var error = $root.google.cloud.retail.v2alpha.UserEvent.verify(message.userEvent, long + 1); if (error) return "userEvent." + error; } @@ -132140,16 +137816,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.WriteUserEventRequest} WriteUserEventRequest */ - WriteUserEventRequest.fromObject = function fromObject(object) { + WriteUserEventRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.WriteUserEventRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.WriteUserEventRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.userEvent != null) { if (typeof object.userEvent !== "object") throw TypeError(".google.cloud.retail.v2alpha.WriteUserEventRequest.userEvent: object expected"); - message.userEvent = $root.google.cloud.retail.v2alpha.UserEvent.fromObject(object.userEvent); + message.userEvent = $root.google.cloud.retail.v2alpha.UserEvent.fromObject(object.userEvent, long + 1); } if (object.writeAsync != null) message.writeAsync = Boolean(object.writeAsync); @@ -132237,7 +137917,7 @@ function CollectUserEventRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -132366,9 +138046,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CollectUserEventRequest.decode = function decode(reader, length, error) { + CollectUserEventRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.CollectUserEventRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -132400,7 +138084,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -132431,9 +138115,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CollectUserEventRequest.verify = function verify(message) { + CollectUserEventRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.prebuiltRule != null && message.hasOwnProperty("prebuiltRule")) { properties.conversionRule = 1; @@ -132466,9 +138154,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.CollectUserEventRequest} CollectUserEventRequest */ - CollectUserEventRequest.fromObject = function fromObject(object) { + CollectUserEventRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.CollectUserEventRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.CollectUserEventRequest(); if (object.prebuiltRule != null) message.prebuiltRule = String(object.prebuiltRule); @@ -132587,7 +138279,7 @@ function RejoinUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -132662,9 +138354,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsRequest.decode = function decode(reader, length, error) { + RejoinUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RejoinUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -132680,7 +138376,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -132711,9 +138407,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsRequest.verify = function verify(message) { + RejoinUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -132737,9 +138437,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RejoinUserEventsRequest} RejoinUserEventsRequest */ - RejoinUserEventsRequest.fromObject = function fromObject(object) { + RejoinUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RejoinUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.RejoinUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -132855,7 +138559,7 @@ function RejoinUserEventsResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -132920,9 +138624,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsResponse.decode = function decode(reader, length, error) { + RejoinUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RejoinUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -132934,7 +138642,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -132965,9 +138673,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsResponse.verify = function verify(message) { + RejoinUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rejoinedUserEventsCount != null && message.hasOwnProperty("rejoinedUserEventsCount")) if (!$util.isInteger(message.rejoinedUserEventsCount) && !(message.rejoinedUserEventsCount && $util.isInteger(message.rejoinedUserEventsCount.low) && $util.isInteger(message.rejoinedUserEventsCount.high))) return "rejoinedUserEventsCount: integer|Long expected"; @@ -132982,9 +138694,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RejoinUserEventsResponse} RejoinUserEventsResponse */ - RejoinUserEventsResponse.fromObject = function fromObject(object) { + RejoinUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RejoinUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2alpha.RejoinUserEventsResponse(); if (object.rejoinedUserEventsCount != null) if ($util.Long) @@ -133073,7 +138789,7 @@ function RejoinUserEventsMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -133128,9 +138844,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsMetadata.decode = function decode(reader, length, error) { + RejoinUserEventsMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2alpha.RejoinUserEventsMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -133138,7 +138858,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -133169,9 +138889,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsMetadata.verify = function verify(message) { + RejoinUserEventsMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -133183,9 +138907,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2alpha.RejoinUserEventsMetadata} RejoinUserEventsMetadata */ - RejoinUserEventsMetadata.fromObject = function fromObject(object) { + RejoinUserEventsMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2alpha.RejoinUserEventsMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2alpha.RejoinUserEventsMetadata(); }; @@ -133332,7 +139060,7 @@ function OutputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -133421,9 +139149,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OutputConfig.decode = function decode(reader, length, error) { + OutputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.OutputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -133431,15 +139163,15 @@ break; switch (tag >>> 3) { case 1: { - message.gcsDestination = $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination.decode(reader, reader.uint32()); + message.gcsDestination = $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.bigqueryDestination = $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination.decode(reader, reader.uint32()); + message.bigqueryDestination = $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -133470,14 +139202,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OutputConfig.verify = function verify(message) { + OutputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsDestination != null && message.hasOwnProperty("gcsDestination")) { properties.destination = 1; { - var error = $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination.verify(message.gcsDestination); + var error = $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination.verify(message.gcsDestination, long + 1); if (error) return "gcsDestination." + error; } @@ -133487,7 +139223,7 @@ return "destination: multiple values"; properties.destination = 1; { - var error = $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination.verify(message.bigqueryDestination); + var error = $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination.verify(message.bigqueryDestination, long + 1); if (error) return "bigqueryDestination." + error; } @@ -133503,19 +139239,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.OutputConfig} OutputConfig */ - OutputConfig.fromObject = function fromObject(object) { + OutputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.OutputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.OutputConfig(); if (object.gcsDestination != null) { if (typeof object.gcsDestination !== "object") throw TypeError(".google.cloud.retail.v2beta.OutputConfig.gcsDestination: object expected"); - message.gcsDestination = $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination.fromObject(object.gcsDestination); + message.gcsDestination = $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination.fromObject(object.gcsDestination, long + 1); } if (object.bigqueryDestination != null) { if (typeof object.bigqueryDestination !== "object") throw TypeError(".google.cloud.retail.v2beta.OutputConfig.bigqueryDestination: object expected"); - message.bigqueryDestination = $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination.fromObject(object.bigqueryDestination); + message.bigqueryDestination = $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination.fromObject(object.bigqueryDestination, long + 1); } return message; }; @@ -133592,7 +139332,7 @@ function GcsDestination(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -133657,9 +139397,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsDestination.decode = function decode(reader, length, error) { + GcsDestination.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination(); while (reader.pos < end) { var tag = reader.uint32(); @@ -133671,7 +139415,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -133702,9 +139446,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsDestination.verify = function verify(message) { + GcsDestination.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.outputUriPrefix != null && message.hasOwnProperty("outputUriPrefix")) if (!$util.isString(message.outputUriPrefix)) return "outputUriPrefix: string expected"; @@ -133719,9 +139467,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.OutputConfig.GcsDestination} GcsDestination */ - GcsDestination.fromObject = function fromObject(object) { + GcsDestination.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.OutputConfig.GcsDestination(); if (object.outputUriPrefix != null) message.outputUriPrefix = String(object.outputUriPrefix); @@ -133799,7 +139551,7 @@ function BigQueryDestination(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -133884,9 +139636,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQueryDestination.decode = function decode(reader, length, error) { + BigQueryDestination.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination(); while (reader.pos < end) { var tag = reader.uint32(); @@ -133906,7 +139662,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -133937,9 +139693,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQueryDestination.verify = function verify(message) { + BigQueryDestination.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.datasetId != null && message.hasOwnProperty("datasetId")) if (!$util.isString(message.datasetId)) return "datasetId: string expected"; @@ -133960,9 +139720,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.OutputConfig.BigQueryDestination} BigQueryDestination */ - BigQueryDestination.fromObject = function fromObject(object) { + BigQueryDestination.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.OutputConfig.BigQueryDestination(); if (object.datasetId != null) message.datasetId = String(object.datasetId); @@ -134052,7 +139816,7 @@ function ExportErrorsConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -134131,9 +139895,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportErrorsConfig.decode = function decode(reader, length, error) { + ExportErrorsConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExportErrorsConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -134145,7 +139913,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -134176,9 +139944,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportErrorsConfig.verify = function verify(message) { + ExportErrorsConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsPrefix != null && message.hasOwnProperty("gcsPrefix")) { properties.destination = 1; @@ -134196,9 +139968,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExportErrorsConfig} ExportErrorsConfig */ - ExportErrorsConfig.fromObject = function fromObject(object) { + ExportErrorsConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExportErrorsConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExportErrorsConfig(); if (object.gcsPrefix != null) message.gcsPrefix = String(object.gcsPrefix); @@ -134277,7 +140053,7 @@ function ExportProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -134362,9 +140138,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportProductsRequest.decode = function decode(reader, length, error) { + ExportProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExportProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -134376,7 +140156,7 @@ break; } case 2: { - message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -134384,7 +140164,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -134415,14 +140195,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportProductsRequest.verify = function verify(message) { + ExportProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.retail.v2beta.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.retail.v2beta.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -134440,16 +140224,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExportProductsRequest} ExportProductsRequest */ - ExportProductsRequest.fromObject = function fromObject(object) { + ExportProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExportProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExportProductsRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportProductsRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.fromObject(object.outputConfig, long + 1); } if (object.filter != null) message.filter = String(object.filter); @@ -134534,7 +140322,7 @@ function ExportUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -134619,9 +140407,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportUserEventsRequest.decode = function decode(reader, length, error) { + ExportUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExportUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -134633,7 +140425,7 @@ break; } case 2: { - message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -134641,7 +140433,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -134672,14 +140464,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportUserEventsRequest.verify = function verify(message) { + ExportUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.retail.v2beta.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.retail.v2beta.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -134697,16 +140493,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExportUserEventsRequest} ExportUserEventsRequest */ - ExportUserEventsRequest.fromObject = function fromObject(object) { + ExportUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExportUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExportUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportUserEventsRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.fromObject(object.outputConfig, long + 1); } if (object.filter != null) message.filter = String(object.filter); @@ -134791,7 +140591,7 @@ function ExportAnalyticsMetricsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -134876,9 +140676,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportAnalyticsMetricsRequest.decode = function decode(reader, length, error) { + ExportAnalyticsMetricsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExportAnalyticsMetricsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -134890,7 +140694,7 @@ break; } case 2: { - message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.decode(reader, reader.uint32()); + message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -134898,7 +140702,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -134929,14 +140733,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportAnalyticsMetricsRequest.verify = function verify(message) { + ExportAnalyticsMetricsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; if (message.outputConfig != null && message.hasOwnProperty("outputConfig")) { - var error = $root.google.cloud.retail.v2beta.OutputConfig.verify(message.outputConfig); + var error = $root.google.cloud.retail.v2beta.OutputConfig.verify(message.outputConfig, long + 1); if (error) return "outputConfig." + error; } @@ -134954,16 +140762,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExportAnalyticsMetricsRequest} ExportAnalyticsMetricsRequest */ - ExportAnalyticsMetricsRequest.fromObject = function fromObject(object) { + ExportAnalyticsMetricsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExportAnalyticsMetricsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExportAnalyticsMetricsRequest(); if (object.catalog != null) message.catalog = String(object.catalog); if (object.outputConfig != null) { if (typeof object.outputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportAnalyticsMetricsRequest.outputConfig: object expected"); - message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.fromObject(object.outputConfig); + message.outputConfig = $root.google.cloud.retail.v2beta.OutputConfig.fromObject(object.outputConfig, long + 1); } if (object.filter != null) message.filter = String(object.filter); @@ -135047,7 +140859,7 @@ function ExportMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -135122,9 +140934,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportMetadata.decode = function decode(reader, length, error) { + ExportMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExportMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -135132,15 +140948,15 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -135171,16 +140987,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportMetadata.verify = function verify(message) { + ExportMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -135195,19 +141015,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExportMetadata} ExportMetadata */ - ExportMetadata.fromObject = function fromObject(object) { + ExportMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExportMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExportMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } return message; }; @@ -135288,7 +141112,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -135374,9 +141198,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportProductsResponse.decode = function decode(reader, length, error) { + ExportProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExportProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -135386,19 +141214,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.decode(reader, reader.uint32()); + message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -135429,25 +141257,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportProductsResponse.verify = function verify(message) { + ExportProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2beta.ExportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2beta.ExportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.outputResult != null && message.hasOwnProperty("outputResult")) { - var error = $root.google.cloud.retail.v2beta.OutputResult.verify(message.outputResult); + var error = $root.google.cloud.retail.v2beta.OutputResult.verify(message.outputResult, long + 1); if (error) return "outputResult." + error; } @@ -135462,9 +141294,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExportProductsResponse} ExportProductsResponse */ - ExportProductsResponse.fromObject = function fromObject(object) { + ExportProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExportProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExportProductsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -135473,18 +141309,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportProductsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportProductsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.outputResult != null) { if (typeof object.outputResult !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportProductsResponse.outputResult: object expected"); - message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.fromObject(object.outputResult); + message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.fromObject(object.outputResult, long + 1); } return message; }; @@ -135572,7 +141408,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -135658,9 +141494,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportUserEventsResponse.decode = function decode(reader, length, error) { + ExportUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExportUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -135670,19 +141510,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.decode(reader, reader.uint32()); + message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -135713,25 +141553,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportUserEventsResponse.verify = function verify(message) { + ExportUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2beta.ExportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2beta.ExportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.outputResult != null && message.hasOwnProperty("outputResult")) { - var error = $root.google.cloud.retail.v2beta.OutputResult.verify(message.outputResult); + var error = $root.google.cloud.retail.v2beta.OutputResult.verify(message.outputResult, long + 1); if (error) return "outputResult." + error; } @@ -135746,9 +141590,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExportUserEventsResponse} ExportUserEventsResponse */ - ExportUserEventsResponse.fromObject = function fromObject(object) { + ExportUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExportUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExportUserEventsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -135757,18 +141605,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportUserEventsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportUserEventsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.outputResult != null) { if (typeof object.outputResult !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportUserEventsResponse.outputResult: object expected"); - message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.fromObject(object.outputResult); + message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.fromObject(object.outputResult, long + 1); } return message; }; @@ -135856,7 +141704,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -135942,9 +141790,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExportAnalyticsMetricsResponse.decode = function decode(reader, length, error) { + ExportAnalyticsMetricsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExportAnalyticsMetricsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -135954,19 +141806,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.decode(reader, reader.uint32()); + message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -135997,25 +141849,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExportAnalyticsMetricsResponse.verify = function verify(message) { + ExportAnalyticsMetricsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2beta.ExportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2beta.ExportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.outputResult != null && message.hasOwnProperty("outputResult")) { - var error = $root.google.cloud.retail.v2beta.OutputResult.verify(message.outputResult); + var error = $root.google.cloud.retail.v2beta.OutputResult.verify(message.outputResult, long + 1); if (error) return "outputResult." + error; } @@ -136030,9 +141886,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExportAnalyticsMetricsResponse} ExportAnalyticsMetricsResponse */ - ExportAnalyticsMetricsResponse.fromObject = function fromObject(object) { + ExportAnalyticsMetricsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExportAnalyticsMetricsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExportAnalyticsMetricsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -136041,18 +141901,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportAnalyticsMetricsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportAnalyticsMetricsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2beta.ExportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.outputResult != null) { if (typeof object.outputResult !== "object") throw TypeError(".google.cloud.retail.v2beta.ExportAnalyticsMetricsResponse.outputResult: object expected"); - message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.fromObject(object.outputResult); + message.outputResult = $root.google.cloud.retail.v2beta.OutputResult.fromObject(object.outputResult, long + 1); } return message; }; @@ -136140,7 +142000,7 @@ this.gcsResult = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -136217,9 +142077,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OutputResult.decode = function decode(reader, length, error) { + OutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.OutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -136229,17 +142093,17 @@ case 1: { if (!(message.bigqueryResult && message.bigqueryResult.length)) message.bigqueryResult = []; - message.bigqueryResult.push($root.google.cloud.retail.v2beta.BigQueryOutputResult.decode(reader, reader.uint32())); + message.bigqueryResult.push($root.google.cloud.retail.v2beta.BigQueryOutputResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.gcsResult && message.gcsResult.length)) message.gcsResult = []; - message.gcsResult.push($root.google.cloud.retail.v2beta.GcsOutputResult.decode(reader, reader.uint32())); + message.gcsResult.push($root.google.cloud.retail.v2beta.GcsOutputResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -136270,14 +142134,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OutputResult.verify = function verify(message) { + OutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.bigqueryResult != null && message.hasOwnProperty("bigqueryResult")) { if (!Array.isArray(message.bigqueryResult)) return "bigqueryResult: array expected"; for (var i = 0; i < message.bigqueryResult.length; ++i) { - var error = $root.google.cloud.retail.v2beta.BigQueryOutputResult.verify(message.bigqueryResult[i]); + var error = $root.google.cloud.retail.v2beta.BigQueryOutputResult.verify(message.bigqueryResult[i], long + 1); if (error) return "bigqueryResult." + error; } @@ -136286,7 +142154,7 @@ if (!Array.isArray(message.gcsResult)) return "gcsResult: array expected"; for (var i = 0; i < message.gcsResult.length; ++i) { - var error = $root.google.cloud.retail.v2beta.GcsOutputResult.verify(message.gcsResult[i]); + var error = $root.google.cloud.retail.v2beta.GcsOutputResult.verify(message.gcsResult[i], long + 1); if (error) return "gcsResult." + error; } @@ -136302,9 +142170,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.OutputResult} OutputResult */ - OutputResult.fromObject = function fromObject(object) { + OutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.OutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.OutputResult(); if (object.bigqueryResult) { if (!Array.isArray(object.bigqueryResult)) @@ -136313,7 +142185,7 @@ for (var i = 0; i < object.bigqueryResult.length; ++i) { if (typeof object.bigqueryResult[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.OutputResult.bigqueryResult: object expected"); - message.bigqueryResult[i] = $root.google.cloud.retail.v2beta.BigQueryOutputResult.fromObject(object.bigqueryResult[i]); + message.bigqueryResult[i] = $root.google.cloud.retail.v2beta.BigQueryOutputResult.fromObject(object.bigqueryResult[i], long + 1); } } if (object.gcsResult) { @@ -136323,7 +142195,7 @@ for (var i = 0; i < object.gcsResult.length; ++i) { if (typeof object.gcsResult[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.OutputResult.gcsResult: object expected"); - message.gcsResult[i] = $root.google.cloud.retail.v2beta.GcsOutputResult.fromObject(object.gcsResult[i]); + message.gcsResult[i] = $root.google.cloud.retail.v2beta.GcsOutputResult.fromObject(object.gcsResult[i], long + 1); } } return message; @@ -136409,7 +142281,7 @@ function BigQueryOutputResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -136484,9 +142356,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQueryOutputResult.decode = function decode(reader, length, error) { + BigQueryOutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.BigQueryOutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -136502,7 +142378,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -136533,9 +142409,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQueryOutputResult.verify = function verify(message) { + BigQueryOutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.datasetId != null && message.hasOwnProperty("datasetId")) if (!$util.isString(message.datasetId)) return "datasetId: string expected"; @@ -136553,9 +142433,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.BigQueryOutputResult} BigQueryOutputResult */ - BigQueryOutputResult.fromObject = function fromObject(object) { + BigQueryOutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.BigQueryOutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.BigQueryOutputResult(); if (object.datasetId != null) message.datasetId = String(object.datasetId); @@ -136637,7 +142521,7 @@ function GcsOutputResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -136702,9 +142586,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsOutputResult.decode = function decode(reader, length, error) { + GcsOutputResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GcsOutputResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -136716,7 +142604,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -136747,9 +142635,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsOutputResult.verify = function verify(message) { + GcsOutputResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.outputUri != null && message.hasOwnProperty("outputUri")) if (!$util.isString(message.outputUri)) return "outputUri: string expected"; @@ -136764,9 +142656,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GcsOutputResult} GcsOutputResult */ - GcsOutputResult.fromObject = function fromObject(object) { + GcsOutputResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GcsOutputResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GcsOutputResult(); if (object.outputUri != null) message.outputUri = String(object.outputUri); @@ -136843,7 +142739,7 @@ function ProductLevelConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -136918,9 +142814,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductLevelConfig.decode = function decode(reader, length, error) { + ProductLevelConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ProductLevelConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -136936,7 +142836,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -136967,9 +142867,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductLevelConfig.verify = function verify(message) { + ProductLevelConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ingestionProductType != null && message.hasOwnProperty("ingestionProductType")) if (!$util.isString(message.ingestionProductType)) return "ingestionProductType: string expected"; @@ -136987,9 +142891,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ProductLevelConfig} ProductLevelConfig */ - ProductLevelConfig.fromObject = function fromObject(object) { + ProductLevelConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ProductLevelConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ProductLevelConfig(); if (object.ingestionProductType != null) message.ingestionProductType = String(object.ingestionProductType); @@ -137080,7 +142988,7 @@ function CatalogAttribute(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -137235,9 +143143,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CatalogAttribute.decode = function decode(reader, length, error) { + CatalogAttribute.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CatalogAttribute(); while (reader.pos < end) { var tag = reader.uint32(); @@ -137281,11 +143193,11 @@ break; } case 13: { - message.facetConfig = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.decode(reader, reader.uint32()); + message.facetConfig = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -137316,9 +143228,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CatalogAttribute.verify = function verify(message) { + CatalogAttribute.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -137389,7 +143305,7 @@ break; } if (message.facetConfig != null && message.hasOwnProperty("facetConfig")) { - var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.verify(message.facetConfig); + var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.verify(message.facetConfig, long + 1); if (error) return "facetConfig." + error; } @@ -137404,9 +143320,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CatalogAttribute} CatalogAttribute */ - CatalogAttribute.fromObject = function fromObject(object) { + CatalogAttribute.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CatalogAttribute) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CatalogAttribute(); if (object.key != null) message.key = String(object.key); @@ -137555,7 +143475,7 @@ if (object.facetConfig != null) { if (typeof object.facetConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.CatalogAttribute.facetConfig: object expected"); - message.facetConfig = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.fromObject(object.facetConfig); + message.facetConfig = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.fromObject(object.facetConfig, long + 1); } return message; }; @@ -137661,7 +143581,7 @@ this.mergedFacetValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -137769,9 +143689,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetConfig.decode = function decode(reader, length, error) { + FacetConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -137781,31 +143705,31 @@ case 1: { if (!(message.facetIntervals && message.facetIntervals.length)) message.facetIntervals = []; - message.facetIntervals.push($root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32())); + message.facetIntervals.push($root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.ignoredFacetValues && message.ignoredFacetValues.length)) message.ignoredFacetValues = []; - message.ignoredFacetValues.push($root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues.decode(reader, reader.uint32())); + message.ignoredFacetValues.push($root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.mergedFacetValues && message.mergedFacetValues.length)) message.mergedFacetValues = []; - message.mergedFacetValues.push($root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue.decode(reader, reader.uint32())); + message.mergedFacetValues.push($root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.mergedFacet = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet.decode(reader, reader.uint32()); + message.mergedFacet = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.rerankConfig = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig.decode(reader, reader.uint32()); + message.rerankConfig = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -137836,14 +143760,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetConfig.verify = function verify(message) { + FacetConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetIntervals != null && message.hasOwnProperty("facetIntervals")) { if (!Array.isArray(message.facetIntervals)) return "facetIntervals: array expected"; for (var i = 0; i < message.facetIntervals.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Interval.verify(message.facetIntervals[i]); + var error = $root.google.cloud.retail.v2beta.Interval.verify(message.facetIntervals[i], long + 1); if (error) return "facetIntervals." + error; } @@ -137852,7 +143780,7 @@ if (!Array.isArray(message.ignoredFacetValues)) return "ignoredFacetValues: array expected"; for (var i = 0; i < message.ignoredFacetValues.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues.verify(message.ignoredFacetValues[i]); + var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues.verify(message.ignoredFacetValues[i], long + 1); if (error) return "ignoredFacetValues." + error; } @@ -137861,18 +143789,18 @@ if (!Array.isArray(message.mergedFacetValues)) return "mergedFacetValues: array expected"; for (var i = 0; i < message.mergedFacetValues.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue.verify(message.mergedFacetValues[i]); + var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue.verify(message.mergedFacetValues[i], long + 1); if (error) return "mergedFacetValues." + error; } } if (message.mergedFacet != null && message.hasOwnProperty("mergedFacet")) { - var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet.verify(message.mergedFacet); + var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet.verify(message.mergedFacet, long + 1); if (error) return "mergedFacet." + error; } if (message.rerankConfig != null && message.hasOwnProperty("rerankConfig")) { - var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig.verify(message.rerankConfig); + var error = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig.verify(message.rerankConfig, long + 1); if (error) return "rerankConfig." + error; } @@ -137887,9 +143815,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CatalogAttribute.FacetConfig} FacetConfig */ - FacetConfig.fromObject = function fromObject(object) { + FacetConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig(); if (object.facetIntervals) { if (!Array.isArray(object.facetIntervals)) @@ -137898,7 +143830,7 @@ for (var i = 0; i < object.facetIntervals.length; ++i) { if (typeof object.facetIntervals[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.facetIntervals: object expected"); - message.facetIntervals[i] = $root.google.cloud.retail.v2beta.Interval.fromObject(object.facetIntervals[i]); + message.facetIntervals[i] = $root.google.cloud.retail.v2beta.Interval.fromObject(object.facetIntervals[i], long + 1); } } if (object.ignoredFacetValues) { @@ -137908,7 +143840,7 @@ for (var i = 0; i < object.ignoredFacetValues.length; ++i) { if (typeof object.ignoredFacetValues[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.ignoredFacetValues: object expected"); - message.ignoredFacetValues[i] = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues.fromObject(object.ignoredFacetValues[i]); + message.ignoredFacetValues[i] = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues.fromObject(object.ignoredFacetValues[i], long + 1); } } if (object.mergedFacetValues) { @@ -137918,18 +143850,18 @@ for (var i = 0; i < object.mergedFacetValues.length; ++i) { if (typeof object.mergedFacetValues[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.mergedFacetValues: object expected"); - message.mergedFacetValues[i] = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue.fromObject(object.mergedFacetValues[i]); + message.mergedFacetValues[i] = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue.fromObject(object.mergedFacetValues[i], long + 1); } } if (object.mergedFacet != null) { if (typeof object.mergedFacet !== "object") throw TypeError(".google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.mergedFacet: object expected"); - message.mergedFacet = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet.fromObject(object.mergedFacet); + message.mergedFacet = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet.fromObject(object.mergedFacet, long + 1); } if (object.rerankConfig != null) { if (typeof object.rerankConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.rerankConfig: object expected"); - message.rerankConfig = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig.fromObject(object.rerankConfig); + message.rerankConfig = $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig.fromObject(object.rerankConfig, long + 1); } return message; }; @@ -138027,7 +143959,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -138113,9 +144045,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - IgnoredFacetValues.decode = function decode(reader, length, error) { + IgnoredFacetValues.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues(); while (reader.pos < end) { var tag = reader.uint32(); @@ -138129,15 +144065,15 @@ break; } case 2: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -138168,9 +144104,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - IgnoredFacetValues.verify = function verify(message) { + IgnoredFacetValues.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -138179,12 +144119,12 @@ return "values: string[] expected"; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -138199,9 +144139,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues} IgnoredFacetValues */ - IgnoredFacetValues.fromObject = function fromObject(object) { + IgnoredFacetValues.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues(); if (object.values) { if (!Array.isArray(object.values)) @@ -138213,12 +144157,12 @@ if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.IgnoredFacetValues.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } return message; }; @@ -138305,7 +144249,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -138381,9 +144325,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MergedFacetValue.decode = function decode(reader, length, error) { + MergedFacetValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -138401,7 +144349,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -138432,9 +144380,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MergedFacetValue.verify = function verify(message) { + MergedFacetValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -138456,9 +144408,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue} MergedFacetValue */ - MergedFacetValue.fromObject = function fromObject(object) { + MergedFacetValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacetValue(); if (object.values) { if (!Array.isArray(object.values)) @@ -138548,7 +144504,7 @@ function MergedFacet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -138613,9 +144569,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MergedFacet.decode = function decode(reader, length, error) { + MergedFacet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -138627,7 +144587,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -138658,9 +144618,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MergedFacet.verify = function verify(message) { + MergedFacet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mergedFacetKey != null && message.hasOwnProperty("mergedFacetKey")) if (!$util.isString(message.mergedFacetKey)) return "mergedFacetKey: string expected"; @@ -138675,9 +144639,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet} MergedFacet */ - MergedFacet.fromObject = function fromObject(object) { + MergedFacet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.MergedFacet(); if (object.mergedFacetKey != null) message.mergedFacetKey = String(object.mergedFacetKey); @@ -138755,7 +144723,7 @@ this.facetValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -138831,9 +144799,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RerankConfig.decode = function decode(reader, length, error) { + RerankConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -138851,7 +144823,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -138882,9 +144854,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RerankConfig.verify = function verify(message) { + RerankConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rerankFacet != null && message.hasOwnProperty("rerankFacet")) if (typeof message.rerankFacet !== "boolean") return "rerankFacet: boolean expected"; @@ -138906,9 +144882,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig} RerankConfig */ - RerankConfig.fromObject = function fromObject(object) { + RerankConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CatalogAttribute.FacetConfig.RerankConfig(); if (object.rerankFacet != null) message.rerankFacet = Boolean(object.rerankFacet); @@ -139103,7 +145083,7 @@ this.catalogAttributes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -139191,9 +145171,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AttributesConfig.decode = function decode(reader, length, error) { + AttributesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AttributesConfig(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -139217,13 +145201,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2beta.CatalogAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.catalogAttributes, key); message.catalogAttributes[key] = value; break; } @@ -139232,7 +145218,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -139263,9 +145249,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AttributesConfig.verify = function verify(message) { + AttributesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -139274,7 +145264,7 @@ return "catalogAttributes: object expected"; var key = Object.keys(message.catalogAttributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CatalogAttribute.verify(message.catalogAttributes[key[i]]); + var error = $root.google.cloud.retail.v2beta.CatalogAttribute.verify(message.catalogAttributes[key[i]], long + 1); if (error) return "catalogAttributes." + error; } @@ -139299,9 +145289,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AttributesConfig} AttributesConfig */ - AttributesConfig.fromObject = function fromObject(object) { + AttributesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AttributesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.AttributesConfig(); if (object.name != null) message.name = String(object.name); @@ -139310,9 +145304,11 @@ throw TypeError(".google.cloud.retail.v2beta.AttributesConfig.catalogAttributes: object expected"); message.catalogAttributes = {}; for (var keys = Object.keys(object.catalogAttributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.catalogAttributes, keys[i]); if (typeof object.catalogAttributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.AttributesConfig.catalogAttributes: object expected"); - message.catalogAttributes[keys[i]] = $root.google.cloud.retail.v2beta.CatalogAttribute.fromObject(object.catalogAttributes[keys[i]]); + message.catalogAttributes[keys[i]] = $root.google.cloud.retail.v2beta.CatalogAttribute.fromObject(object.catalogAttributes[keys[i]], long + 1); } } switch (object.attributeConfigLevel) { @@ -139362,8 +145358,11 @@ var keys2; if (message.catalogAttributes && (keys2 = Object.keys(message.catalogAttributes)).length) { object.catalogAttributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.catalogAttributes, keys2[j]); object.catalogAttributes[keys2[j]] = $root.google.cloud.retail.v2beta.CatalogAttribute.toObject(message.catalogAttributes[keys2[j]], options); + } } if (message.attributeConfigLevel != null && message.hasOwnProperty("attributeConfigLevel")) object.attributeConfigLevel = options.enums === String ? $root.google.cloud.retail.v2beta.AttributeConfigLevel[message.attributeConfigLevel] === undefined ? message.attributeConfigLevel : $root.google.cloud.retail.v2beta.AttributeConfigLevel[message.attributeConfigLevel] : message.attributeConfigLevel; @@ -139429,7 +145428,7 @@ function CompletionConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -139594,9 +145593,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionConfig.decode = function decode(reader, length, error) { + CompletionConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CompletionConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -139624,7 +145627,7 @@ break; } case 5: { - message.suggestionsInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.suggestionsInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -139632,7 +145635,7 @@ break; } case 7: { - message.denylistInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.denylistInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { @@ -139640,7 +145643,7 @@ break; } case 9: { - message.allowlistInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.allowlistInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -139648,7 +145651,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -139679,9 +145682,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionConfig.verify = function verify(message) { + CompletionConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -139698,7 +145705,7 @@ if (typeof message.autoLearning !== "boolean") return "autoLearning: boolean expected"; if (message.suggestionsInputConfig != null && message.hasOwnProperty("suggestionsInputConfig")) { - var error = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.verify(message.suggestionsInputConfig); + var error = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.verify(message.suggestionsInputConfig, long + 1); if (error) return "suggestionsInputConfig." + error; } @@ -139706,7 +145713,7 @@ if (!$util.isString(message.lastSuggestionsImportOperation)) return "lastSuggestionsImportOperation: string expected"; if (message.denylistInputConfig != null && message.hasOwnProperty("denylistInputConfig")) { - var error = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.verify(message.denylistInputConfig); + var error = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.verify(message.denylistInputConfig, long + 1); if (error) return "denylistInputConfig." + error; } @@ -139714,7 +145721,7 @@ if (!$util.isString(message.lastDenylistImportOperation)) return "lastDenylistImportOperation: string expected"; if (message.allowlistInputConfig != null && message.hasOwnProperty("allowlistInputConfig")) { - var error = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.verify(message.allowlistInputConfig); + var error = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.verify(message.allowlistInputConfig, long + 1); if (error) return "allowlistInputConfig." + error; } @@ -139732,9 +145739,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CompletionConfig} CompletionConfig */ - CompletionConfig.fromObject = function fromObject(object) { + CompletionConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CompletionConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CompletionConfig(); if (object.name != null) message.name = String(object.name); @@ -139749,21 +145760,21 @@ if (object.suggestionsInputConfig != null) { if (typeof object.suggestionsInputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.CompletionConfig.suggestionsInputConfig: object expected"); - message.suggestionsInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.fromObject(object.suggestionsInputConfig); + message.suggestionsInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.fromObject(object.suggestionsInputConfig, long + 1); } if (object.lastSuggestionsImportOperation != null) message.lastSuggestionsImportOperation = String(object.lastSuggestionsImportOperation); if (object.denylistInputConfig != null) { if (typeof object.denylistInputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.CompletionConfig.denylistInputConfig: object expected"); - message.denylistInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.fromObject(object.denylistInputConfig); + message.denylistInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.fromObject(object.denylistInputConfig, long + 1); } if (object.lastDenylistImportOperation != null) message.lastDenylistImportOperation = String(object.lastDenylistImportOperation); if (object.allowlistInputConfig != null) { if (typeof object.allowlistInputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.CompletionConfig.allowlistInputConfig: object expected"); - message.allowlistInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.fromObject(object.allowlistInputConfig); + message.allowlistInputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.fromObject(object.allowlistInputConfig, long + 1); } if (object.lastAllowlistImportOperation != null) message.lastAllowlistImportOperation = String(object.lastAllowlistImportOperation); @@ -139877,7 +145888,7 @@ this.feeds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -139994,9 +146005,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MerchantCenterLink.decode = function decode(reader, length, error) { + MerchantCenterLink.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.MerchantCenterLink(); while (reader.pos < end) { var tag = reader.uint32(); @@ -140028,11 +146043,11 @@ case 6: { if (!(message.feeds && message.feeds.length)) message.feeds = []; - message.feeds.push($root.google.cloud.retail.v2beta.MerchantCenterFeedFilter.decode(reader, reader.uint32())); + message.feeds.push($root.google.cloud.retail.v2beta.MerchantCenterFeedFilter.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -140063,9 +146078,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MerchantCenterLink.verify = function verify(message) { + MerchantCenterLink.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.merchantCenterAccountId != null && message.hasOwnProperty("merchantCenterAccountId")) if (!$util.isInteger(message.merchantCenterAccountId) && !(message.merchantCenterAccountId && $util.isInteger(message.merchantCenterAccountId.low) && $util.isInteger(message.merchantCenterAccountId.high))) return "merchantCenterAccountId: integer|Long expected"; @@ -140089,7 +146108,7 @@ if (!Array.isArray(message.feeds)) return "feeds: array expected"; for (var i = 0; i < message.feeds.length; ++i) { - var error = $root.google.cloud.retail.v2beta.MerchantCenterFeedFilter.verify(message.feeds[i]); + var error = $root.google.cloud.retail.v2beta.MerchantCenterFeedFilter.verify(message.feeds[i], long + 1); if (error) return "feeds." + error; } @@ -140105,9 +146124,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.MerchantCenterLink} MerchantCenterLink */ - MerchantCenterLink.fromObject = function fromObject(object) { + MerchantCenterLink.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.MerchantCenterLink) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.MerchantCenterLink(); if (object.merchantCenterAccountId != null) if ($util.Long) @@ -140138,7 +146161,7 @@ for (var i = 0; i < object.feeds.length; ++i) { if (typeof object.feeds[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.MerchantCenterLink.feeds: object expected"); - message.feeds[i] = $root.google.cloud.retail.v2beta.MerchantCenterFeedFilter.fromObject(object.feeds[i]); + message.feeds[i] = $root.google.cloud.retail.v2beta.MerchantCenterFeedFilter.fromObject(object.feeds[i], long + 1); } } return message; @@ -140245,7 +146268,7 @@ function MerchantCenterFeedFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -140320,9 +146343,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MerchantCenterFeedFilter.decode = function decode(reader, length, error) { + MerchantCenterFeedFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.MerchantCenterFeedFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -140338,7 +146365,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -140369,9 +146396,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MerchantCenterFeedFilter.verify = function verify(message) { + MerchantCenterFeedFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.primaryFeedId != null && message.hasOwnProperty("primaryFeedId")) if (!$util.isInteger(message.primaryFeedId) && !(message.primaryFeedId && $util.isInteger(message.primaryFeedId.low) && $util.isInteger(message.primaryFeedId.high))) return "primaryFeedId: integer|Long expected"; @@ -140389,9 +146420,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.MerchantCenterFeedFilter} MerchantCenterFeedFilter */ - MerchantCenterFeedFilter.fromObject = function fromObject(object) { + MerchantCenterFeedFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.MerchantCenterFeedFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.MerchantCenterFeedFilter(); if (object.primaryFeedId != null) if ($util.Long) @@ -140488,7 +146523,7 @@ this.links = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -140554,9 +146589,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MerchantCenterLinkingConfig.decode = function decode(reader, length, error) { + MerchantCenterLinkingConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -140566,11 +146605,11 @@ case 1: { if (!(message.links && message.links.length)) message.links = []; - message.links.push($root.google.cloud.retail.v2beta.MerchantCenterLink.decode(reader, reader.uint32())); + message.links.push($root.google.cloud.retail.v2beta.MerchantCenterLink.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -140601,14 +146640,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MerchantCenterLinkingConfig.verify = function verify(message) { + MerchantCenterLinkingConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.links != null && message.hasOwnProperty("links")) { if (!Array.isArray(message.links)) return "links: array expected"; for (var i = 0; i < message.links.length; ++i) { - var error = $root.google.cloud.retail.v2beta.MerchantCenterLink.verify(message.links[i]); + var error = $root.google.cloud.retail.v2beta.MerchantCenterLink.verify(message.links[i], long + 1); if (error) return "links." + error; } @@ -140624,9 +146667,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.MerchantCenterLinkingConfig} MerchantCenterLinkingConfig */ - MerchantCenterLinkingConfig.fromObject = function fromObject(object) { + MerchantCenterLinkingConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig(); if (object.links) { if (!Array.isArray(object.links)) @@ -140635,7 +146682,7 @@ for (var i = 0; i < object.links.length; ++i) { if (typeof object.links[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.MerchantCenterLinkingConfig.links: object expected"); - message.links[i] = $root.google.cloud.retail.v2beta.MerchantCenterLink.fromObject(object.links[i]); + message.links[i] = $root.google.cloud.retail.v2beta.MerchantCenterLink.fromObject(object.links[i], long + 1); } } return message; @@ -140716,7 +146763,7 @@ function Catalog(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -140811,9 +146858,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Catalog.decode = function decode(reader, length, error) { + Catalog.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Catalog(); while (reader.pos < end) { var tag = reader.uint32(); @@ -140829,15 +146880,15 @@ break; } case 4: { - message.productLevelConfig = $root.google.cloud.retail.v2beta.ProductLevelConfig.decode(reader, reader.uint32()); + message.productLevelConfig = $root.google.cloud.retail.v2beta.ProductLevelConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.merchantCenterLinkingConfig = $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig.decode(reader, reader.uint32()); + message.merchantCenterLinkingConfig = $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -140868,9 +146919,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Catalog.verify = function verify(message) { + Catalog.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -140878,12 +146933,12 @@ if (!$util.isString(message.displayName)) return "displayName: string expected"; if (message.productLevelConfig != null && message.hasOwnProperty("productLevelConfig")) { - var error = $root.google.cloud.retail.v2beta.ProductLevelConfig.verify(message.productLevelConfig); + var error = $root.google.cloud.retail.v2beta.ProductLevelConfig.verify(message.productLevelConfig, long + 1); if (error) return "productLevelConfig." + error; } if (message.merchantCenterLinkingConfig != null && message.hasOwnProperty("merchantCenterLinkingConfig")) { - var error = $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig.verify(message.merchantCenterLinkingConfig); + var error = $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig.verify(message.merchantCenterLinkingConfig, long + 1); if (error) return "merchantCenterLinkingConfig." + error; } @@ -140898,9 +146953,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Catalog} Catalog */ - Catalog.fromObject = function fromObject(object) { + Catalog.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Catalog) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Catalog(); if (object.name != null) message.name = String(object.name); @@ -140909,12 +146968,12 @@ if (object.productLevelConfig != null) { if (typeof object.productLevelConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.Catalog.productLevelConfig: object expected"); - message.productLevelConfig = $root.google.cloud.retail.v2beta.ProductLevelConfig.fromObject(object.productLevelConfig); + message.productLevelConfig = $root.google.cloud.retail.v2beta.ProductLevelConfig.fromObject(object.productLevelConfig, long + 1); } if (object.merchantCenterLinkingConfig != null) { if (typeof object.merchantCenterLinkingConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.Catalog.merchantCenterLinkingConfig: object expected"); - message.merchantCenterLinkingConfig = $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig.fromObject(object.merchantCenterLinkingConfig); + message.merchantCenterLinkingConfig = $root.google.cloud.retail.v2beta.MerchantCenterLinkingConfig.fromObject(object.merchantCenterLinkingConfig, long + 1); } return message; }; @@ -141067,7 +147126,7 @@ this.pageCategories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -141155,9 +147214,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Condition.decode = function decode(reader, length, error) { + Condition.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Condition(); while (reader.pos < end) { var tag = reader.uint32(); @@ -141167,13 +147230,13 @@ case 1: { if (!(message.queryTerms && message.queryTerms.length)) message.queryTerms = []; - message.queryTerms.push($root.google.cloud.retail.v2beta.Condition.QueryTerm.decode(reader, reader.uint32())); + message.queryTerms.push($root.google.cloud.retail.v2beta.Condition.QueryTerm.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.activeTimeRange && message.activeTimeRange.length)) message.activeTimeRange = []; - message.activeTimeRange.push($root.google.cloud.retail.v2beta.Condition.TimeRange.decode(reader, reader.uint32())); + message.activeTimeRange.push($root.google.cloud.retail.v2beta.Condition.TimeRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -141183,7 +147246,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -141214,14 +147277,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Condition.verify = function verify(message) { + Condition.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; for (var i = 0; i < message.queryTerms.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Condition.QueryTerm.verify(message.queryTerms[i]); + var error = $root.google.cloud.retail.v2beta.Condition.QueryTerm.verify(message.queryTerms[i], long + 1); if (error) return "queryTerms." + error; } @@ -141230,7 +147297,7 @@ if (!Array.isArray(message.activeTimeRange)) return "activeTimeRange: array expected"; for (var i = 0; i < message.activeTimeRange.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Condition.TimeRange.verify(message.activeTimeRange[i]); + var error = $root.google.cloud.retail.v2beta.Condition.TimeRange.verify(message.activeTimeRange[i], long + 1); if (error) return "activeTimeRange." + error; } @@ -141253,9 +147320,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Condition} Condition */ - Condition.fromObject = function fromObject(object) { + Condition.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Condition) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Condition(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -141264,7 +147335,7 @@ for (var i = 0; i < object.queryTerms.length; ++i) { if (typeof object.queryTerms[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Condition.queryTerms: object expected"); - message.queryTerms[i] = $root.google.cloud.retail.v2beta.Condition.QueryTerm.fromObject(object.queryTerms[i]); + message.queryTerms[i] = $root.google.cloud.retail.v2beta.Condition.QueryTerm.fromObject(object.queryTerms[i], long + 1); } } if (object.activeTimeRange) { @@ -141274,7 +147345,7 @@ for (var i = 0; i < object.activeTimeRange.length; ++i) { if (typeof object.activeTimeRange[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Condition.activeTimeRange: object expected"); - message.activeTimeRange[i] = $root.google.cloud.retail.v2beta.Condition.TimeRange.fromObject(object.activeTimeRange[i]); + message.activeTimeRange[i] = $root.google.cloud.retail.v2beta.Condition.TimeRange.fromObject(object.activeTimeRange[i], long + 1); } } if (object.pageCategories) { @@ -141370,7 +147441,7 @@ function QueryTerm(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -141445,9 +147516,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryTerm.decode = function decode(reader, length, error) { + QueryTerm.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Condition.QueryTerm(); while (reader.pos < end) { var tag = reader.uint32(); @@ -141463,7 +147538,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -141494,9 +147569,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryTerm.verify = function verify(message) { + QueryTerm.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!$util.isString(message.value)) return "value: string expected"; @@ -141514,9 +147593,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Condition.QueryTerm} QueryTerm */ - QueryTerm.fromObject = function fromObject(object) { + QueryTerm.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Condition.QueryTerm) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Condition.QueryTerm(); if (object.value != null) message.value = String(object.value); @@ -141599,7 +147682,7 @@ function TimeRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -141674,9 +147757,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TimeRange.decode = function decode(reader, length, error) { + TimeRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Condition.TimeRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -141684,15 +147771,15 @@ break; switch (tag >>> 3) { case 1: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -141723,16 +147810,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TimeRange.verify = function verify(message) { + TimeRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.endTime != null && message.hasOwnProperty("endTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.endTime); + var error = $root.google.protobuf.Timestamp.verify(message.endTime, long + 1); if (error) return "endTime." + error; } @@ -141747,19 +147838,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Condition.TimeRange} TimeRange */ - TimeRange.fromObject = function fromObject(object) { + TimeRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Condition.TimeRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Condition.TimeRange(); if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.retail.v2beta.Condition.TimeRange.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.endTime != null) { if (typeof object.endTime !== "object") throw TypeError(".google.cloud.retail.v2beta.Condition.TimeRange.endTime: object expected"); - message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime); + message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime, long + 1); } return message; }; @@ -141851,7 +147946,7 @@ function Rule(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -142040,9 +148135,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Rule.decode = function decode(reader, length, error) { + Rule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -142050,55 +148149,55 @@ break; switch (tag >>> 3) { case 2: { - message.boostAction = $root.google.cloud.retail.v2beta.Rule.BoostAction.decode(reader, reader.uint32()); + message.boostAction = $root.google.cloud.retail.v2beta.Rule.BoostAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.redirectAction = $root.google.cloud.retail.v2beta.Rule.RedirectAction.decode(reader, reader.uint32()); + message.redirectAction = $root.google.cloud.retail.v2beta.Rule.RedirectAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.onewaySynonymsAction = $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction.decode(reader, reader.uint32()); + message.onewaySynonymsAction = $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.doNotAssociateAction = $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction.decode(reader, reader.uint32()); + message.doNotAssociateAction = $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.replacementAction = $root.google.cloud.retail.v2beta.Rule.ReplacementAction.decode(reader, reader.uint32()); + message.replacementAction = $root.google.cloud.retail.v2beta.Rule.ReplacementAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.ignoreAction = $root.google.cloud.retail.v2beta.Rule.IgnoreAction.decode(reader, reader.uint32()); + message.ignoreAction = $root.google.cloud.retail.v2beta.Rule.IgnoreAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.filterAction = $root.google.cloud.retail.v2beta.Rule.FilterAction.decode(reader, reader.uint32()); + message.filterAction = $root.google.cloud.retail.v2beta.Rule.FilterAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.twowaySynonymsAction = $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction.decode(reader, reader.uint32()); + message.twowaySynonymsAction = $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { - message.forceReturnFacetAction = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.decode(reader, reader.uint32()); + message.forceReturnFacetAction = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.removeFacetAction = $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction.decode(reader, reader.uint32()); + message.removeFacetAction = $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.pinAction = $root.google.cloud.retail.v2beta.Rule.PinAction.decode(reader, reader.uint32()); + message.pinAction = $root.google.cloud.retail.v2beta.Rule.PinAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { - message.condition = $root.google.cloud.retail.v2beta.Condition.decode(reader, reader.uint32()); + message.condition = $root.google.cloud.retail.v2beta.Condition.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -142129,14 +148228,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Rule.verify = function verify(message) { + Rule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.boostAction != null && message.hasOwnProperty("boostAction")) { properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.BoostAction.verify(message.boostAction); + var error = $root.google.cloud.retail.v2beta.Rule.BoostAction.verify(message.boostAction, long + 1); if (error) return "boostAction." + error; } @@ -142146,7 +148249,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.RedirectAction.verify(message.redirectAction); + var error = $root.google.cloud.retail.v2beta.Rule.RedirectAction.verify(message.redirectAction, long + 1); if (error) return "redirectAction." + error; } @@ -142156,7 +148259,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction.verify(message.onewaySynonymsAction); + var error = $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction.verify(message.onewaySynonymsAction, long + 1); if (error) return "onewaySynonymsAction." + error; } @@ -142166,7 +148269,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction.verify(message.doNotAssociateAction); + var error = $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction.verify(message.doNotAssociateAction, long + 1); if (error) return "doNotAssociateAction." + error; } @@ -142176,7 +148279,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.ReplacementAction.verify(message.replacementAction); + var error = $root.google.cloud.retail.v2beta.Rule.ReplacementAction.verify(message.replacementAction, long + 1); if (error) return "replacementAction." + error; } @@ -142186,7 +148289,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.IgnoreAction.verify(message.ignoreAction); + var error = $root.google.cloud.retail.v2beta.Rule.IgnoreAction.verify(message.ignoreAction, long + 1); if (error) return "ignoreAction." + error; } @@ -142196,7 +148299,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.FilterAction.verify(message.filterAction); + var error = $root.google.cloud.retail.v2beta.Rule.FilterAction.verify(message.filterAction, long + 1); if (error) return "filterAction." + error; } @@ -142206,7 +148309,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction.verify(message.twowaySynonymsAction); + var error = $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction.verify(message.twowaySynonymsAction, long + 1); if (error) return "twowaySynonymsAction." + error; } @@ -142216,7 +148319,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.verify(message.forceReturnFacetAction); + var error = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.verify(message.forceReturnFacetAction, long + 1); if (error) return "forceReturnFacetAction." + error; } @@ -142226,7 +148329,7 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction.verify(message.removeFacetAction); + var error = $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction.verify(message.removeFacetAction, long + 1); if (error) return "removeFacetAction." + error; } @@ -142236,13 +148339,13 @@ return "action: multiple values"; properties.action = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.PinAction.verify(message.pinAction); + var error = $root.google.cloud.retail.v2beta.Rule.PinAction.verify(message.pinAction, long + 1); if (error) return "pinAction." + error; } } if (message.condition != null && message.hasOwnProperty("condition")) { - var error = $root.google.cloud.retail.v2beta.Condition.verify(message.condition); + var error = $root.google.cloud.retail.v2beta.Condition.verify(message.condition, long + 1); if (error) return "condition." + error; } @@ -142257,69 +148360,73 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule} Rule */ - Rule.fromObject = function fromObject(object) { + Rule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule(); if (object.boostAction != null) { if (typeof object.boostAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.boostAction: object expected"); - message.boostAction = $root.google.cloud.retail.v2beta.Rule.BoostAction.fromObject(object.boostAction); + message.boostAction = $root.google.cloud.retail.v2beta.Rule.BoostAction.fromObject(object.boostAction, long + 1); } if (object.redirectAction != null) { if (typeof object.redirectAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.redirectAction: object expected"); - message.redirectAction = $root.google.cloud.retail.v2beta.Rule.RedirectAction.fromObject(object.redirectAction); + message.redirectAction = $root.google.cloud.retail.v2beta.Rule.RedirectAction.fromObject(object.redirectAction, long + 1); } if (object.onewaySynonymsAction != null) { if (typeof object.onewaySynonymsAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.onewaySynonymsAction: object expected"); - message.onewaySynonymsAction = $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction.fromObject(object.onewaySynonymsAction); + message.onewaySynonymsAction = $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction.fromObject(object.onewaySynonymsAction, long + 1); } if (object.doNotAssociateAction != null) { if (typeof object.doNotAssociateAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.doNotAssociateAction: object expected"); - message.doNotAssociateAction = $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction.fromObject(object.doNotAssociateAction); + message.doNotAssociateAction = $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction.fromObject(object.doNotAssociateAction, long + 1); } if (object.replacementAction != null) { if (typeof object.replacementAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.replacementAction: object expected"); - message.replacementAction = $root.google.cloud.retail.v2beta.Rule.ReplacementAction.fromObject(object.replacementAction); + message.replacementAction = $root.google.cloud.retail.v2beta.Rule.ReplacementAction.fromObject(object.replacementAction, long + 1); } if (object.ignoreAction != null) { if (typeof object.ignoreAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.ignoreAction: object expected"); - message.ignoreAction = $root.google.cloud.retail.v2beta.Rule.IgnoreAction.fromObject(object.ignoreAction); + message.ignoreAction = $root.google.cloud.retail.v2beta.Rule.IgnoreAction.fromObject(object.ignoreAction, long + 1); } if (object.filterAction != null) { if (typeof object.filterAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.filterAction: object expected"); - message.filterAction = $root.google.cloud.retail.v2beta.Rule.FilterAction.fromObject(object.filterAction); + message.filterAction = $root.google.cloud.retail.v2beta.Rule.FilterAction.fromObject(object.filterAction, long + 1); } if (object.twowaySynonymsAction != null) { if (typeof object.twowaySynonymsAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.twowaySynonymsAction: object expected"); - message.twowaySynonymsAction = $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction.fromObject(object.twowaySynonymsAction); + message.twowaySynonymsAction = $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction.fromObject(object.twowaySynonymsAction, long + 1); } if (object.forceReturnFacetAction != null) { if (typeof object.forceReturnFacetAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.forceReturnFacetAction: object expected"); - message.forceReturnFacetAction = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.fromObject(object.forceReturnFacetAction); + message.forceReturnFacetAction = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.fromObject(object.forceReturnFacetAction, long + 1); } if (object.removeFacetAction != null) { if (typeof object.removeFacetAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.removeFacetAction: object expected"); - message.removeFacetAction = $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction.fromObject(object.removeFacetAction); + message.removeFacetAction = $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction.fromObject(object.removeFacetAction, long + 1); } if (object.pinAction != null) { if (typeof object.pinAction !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.pinAction: object expected"); - message.pinAction = $root.google.cloud.retail.v2beta.Rule.PinAction.fromObject(object.pinAction); + message.pinAction = $root.google.cloud.retail.v2beta.Rule.PinAction.fromObject(object.pinAction, long + 1); } if (object.condition != null) { if (typeof object.condition !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.condition: object expected"); - message.condition = $root.google.cloud.retail.v2beta.Condition.fromObject(object.condition); + message.condition = $root.google.cloud.retail.v2beta.Condition.fromObject(object.condition, long + 1); } return message; }; @@ -142446,7 +148553,7 @@ function BoostAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -142521,9 +148628,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BoostAction.decode = function decode(reader, length, error) { + BoostAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.BoostAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -142539,7 +148650,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -142570,9 +148681,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BoostAction.verify = function verify(message) { + BoostAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.boost != null && message.hasOwnProperty("boost")) if (typeof message.boost !== "number") return "boost: number expected"; @@ -142590,9 +148705,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.BoostAction} BoostAction */ - BoostAction.fromObject = function fromObject(object) { + BoostAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.BoostAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.BoostAction(); if (object.boost != null) message.boost = Number(object.boost); @@ -142674,7 +148793,7 @@ function FilterAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -142739,9 +148858,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FilterAction.decode = function decode(reader, length, error) { + FilterAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.FilterAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -142753,7 +148876,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -142784,9 +148907,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FilterAction.verify = function verify(message) { + FilterAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.filter != null && message.hasOwnProperty("filter")) if (!$util.isString(message.filter)) return "filter: string expected"; @@ -142801,9 +148928,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.FilterAction} FilterAction */ - FilterAction.fromObject = function fromObject(object) { + FilterAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.FilterAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.FilterAction(); if (object.filter != null) message.filter = String(object.filter); @@ -142879,7 +149010,7 @@ function RedirectAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -142944,9 +149075,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RedirectAction.decode = function decode(reader, length, error) { + RedirectAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.RedirectAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -142958,7 +149093,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -142989,9 +149124,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RedirectAction.verify = function verify(message) { + RedirectAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.redirectUri != null && message.hasOwnProperty("redirectUri")) if (!$util.isString(message.redirectUri)) return "redirectUri: string expected"; @@ -143006,9 +149145,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.RedirectAction} RedirectAction */ - RedirectAction.fromObject = function fromObject(object) { + RedirectAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.RedirectAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.RedirectAction(); if (object.redirectUri != null) message.redirectUri = String(object.redirectUri); @@ -143085,7 +149228,7 @@ this.synonyms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -143151,9 +149294,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TwowaySynonymsAction.decode = function decode(reader, length, error) { + TwowaySynonymsAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -143167,7 +149314,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -143198,9 +149345,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TwowaySynonymsAction.verify = function verify(message) { + TwowaySynonymsAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.synonyms != null && message.hasOwnProperty("synonyms")) { if (!Array.isArray(message.synonyms)) return "synonyms: array expected"; @@ -143219,9 +149370,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.TwowaySynonymsAction} TwowaySynonymsAction */ - TwowaySynonymsAction.fromObject = function fromObject(object) { + TwowaySynonymsAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.TwowaySynonymsAction(); if (object.synonyms) { if (!Array.isArray(object.synonyms)) @@ -143310,7 +149465,7 @@ this.onewayTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -143398,9 +149553,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OnewaySynonymsAction.decode = function decode(reader, length, error) { + OnewaySynonymsAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -143426,7 +149585,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -143457,9 +149616,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OnewaySynonymsAction.verify = function verify(message) { + OnewaySynonymsAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -143492,9 +149655,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.OnewaySynonymsAction} OnewaySynonymsAction */ - OnewaySynonymsAction.fromObject = function fromObject(object) { + OnewaySynonymsAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.OnewaySynonymsAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -143610,7 +149777,7 @@ this.terms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -143698,9 +149865,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DoNotAssociateAction.decode = function decode(reader, length, error) { + DoNotAssociateAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -143726,7 +149897,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -143757,9 +149928,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DoNotAssociateAction.verify = function verify(message) { + DoNotAssociateAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -143792,9 +149967,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.DoNotAssociateAction} DoNotAssociateAction */ - DoNotAssociateAction.fromObject = function fromObject(object) { + DoNotAssociateAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.DoNotAssociateAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -143908,7 +150087,7 @@ this.queryTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -143994,9 +150173,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReplacementAction.decode = function decode(reader, length, error) { + ReplacementAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.ReplacementAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -144018,7 +150201,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -144049,9 +150232,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReplacementAction.verify = function verify(message) { + ReplacementAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.queryTerms != null && message.hasOwnProperty("queryTerms")) { if (!Array.isArray(message.queryTerms)) return "queryTerms: array expected"; @@ -144076,9 +150263,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.ReplacementAction} ReplacementAction */ - ReplacementAction.fromObject = function fromObject(object) { + ReplacementAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.ReplacementAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.ReplacementAction(); if (object.queryTerms) { if (!Array.isArray(object.queryTerms)) @@ -144175,7 +150366,7 @@ this.ignoreTerms = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -144241,9 +150432,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - IgnoreAction.decode = function decode(reader, length, error) { + IgnoreAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.IgnoreAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -144257,7 +150452,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -144288,9 +150483,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - IgnoreAction.verify = function verify(message) { + IgnoreAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ignoreTerms != null && message.hasOwnProperty("ignoreTerms")) { if (!Array.isArray(message.ignoreTerms)) return "ignoreTerms: array expected"; @@ -144309,9 +150508,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.IgnoreAction} IgnoreAction */ - IgnoreAction.fromObject = function fromObject(object) { + IgnoreAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.IgnoreAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.IgnoreAction(); if (object.ignoreTerms) { if (!Array.isArray(object.ignoreTerms)) @@ -144396,7 +150599,7 @@ this.facetPositionAdjustments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -144462,9 +150665,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ForceReturnFacetAction.decode = function decode(reader, length, error) { + ForceReturnFacetAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -144474,11 +150681,11 @@ case 1: { if (!(message.facetPositionAdjustments && message.facetPositionAdjustments.length)) message.facetPositionAdjustments = []; - message.facetPositionAdjustments.push($root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment.decode(reader, reader.uint32())); + message.facetPositionAdjustments.push($root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -144509,14 +150716,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ForceReturnFacetAction.verify = function verify(message) { + ForceReturnFacetAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetPositionAdjustments != null && message.hasOwnProperty("facetPositionAdjustments")) { if (!Array.isArray(message.facetPositionAdjustments)) return "facetPositionAdjustments: array expected"; for (var i = 0; i < message.facetPositionAdjustments.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment.verify(message.facetPositionAdjustments[i]); + var error = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment.verify(message.facetPositionAdjustments[i], long + 1); if (error) return "facetPositionAdjustments." + error; } @@ -144532,9 +150743,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.ForceReturnFacetAction} ForceReturnFacetAction */ - ForceReturnFacetAction.fromObject = function fromObject(object) { + ForceReturnFacetAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction(); if (object.facetPositionAdjustments) { if (!Array.isArray(object.facetPositionAdjustments)) @@ -144543,7 +150758,7 @@ for (var i = 0; i < object.facetPositionAdjustments.length; ++i) { if (typeof object.facetPositionAdjustments[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.facetPositionAdjustments: object expected"); - message.facetPositionAdjustments[i] = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment.fromObject(object.facetPositionAdjustments[i]); + message.facetPositionAdjustments[i] = $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment.fromObject(object.facetPositionAdjustments[i], long + 1); } } return message; @@ -144619,7 +150834,7 @@ function FacetPositionAdjustment(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -144694,9 +150909,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetPositionAdjustment.decode = function decode(reader, length, error) { + FacetPositionAdjustment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -144712,7 +150931,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -144743,9 +150962,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetPositionAdjustment.verify = function verify(message) { + FacetPositionAdjustment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributeName != null && message.hasOwnProperty("attributeName")) if (!$util.isString(message.attributeName)) return "attributeName: string expected"; @@ -144763,9 +150986,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment} FacetPositionAdjustment */ - FacetPositionAdjustment.fromObject = function fromObject(object) { + FacetPositionAdjustment.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.ForceReturnFacetAction.FacetPositionAdjustment(); if (object.attributeName != null) message.attributeName = String(object.attributeName); @@ -144851,7 +151078,7 @@ this.attributeNames = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -144917,9 +151144,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFacetAction.decode = function decode(reader, length, error) { + RemoveFacetAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -144933,7 +151164,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -144964,9 +151195,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFacetAction.verify = function verify(message) { + RemoveFacetAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributeNames != null && message.hasOwnProperty("attributeNames")) { if (!Array.isArray(message.attributeNames)) return "attributeNames: array expected"; @@ -144985,9 +151220,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.RemoveFacetAction} RemoveFacetAction */ - RemoveFacetAction.fromObject = function fromObject(object) { + RemoveFacetAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.RemoveFacetAction(); if (object.attributeNames) { if (!Array.isArray(object.attributeNames)) @@ -145072,7 +151311,7 @@ this.pinMap = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -145138,9 +151377,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PinAction.decode = function decode(reader, length, error) { + PinAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rule.PinAction(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -145163,7 +151406,7 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -145171,7 +151414,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -145202,9 +151445,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PinAction.verify = function verify(message) { + PinAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.pinMap != null && message.hasOwnProperty("pinMap")) { if (!$util.isObject(message.pinMap)) return "pinMap: object expected"; @@ -145227,16 +151474,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rule.PinAction} PinAction */ - PinAction.fromObject = function fromObject(object) { + PinAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rule.PinAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rule.PinAction(); if (object.pinMap) { if (typeof object.pinMap !== "object") throw TypeError(".google.cloud.retail.v2beta.Rule.PinAction.pinMap: object expected"); message.pinMap = {}; - for (var keys = Object.keys(object.pinMap), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.pinMap), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.pinMap, keys[i]); message.pinMap[keys[i]] = String(object.pinMap[keys[i]]); + } } return message; }; @@ -145259,8 +151513,11 @@ var keys2; if (message.pinMap && (keys2 = Object.keys(message.pinMap)).length) { object.pinMap = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.pinMap, keys2[j]); object.pinMap[keys2[j]] = message.pinMap[keys2[j]]; + } } return object; }; @@ -145320,7 +151577,7 @@ this.ageGroups = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -145397,9 +151654,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Audience.decode = function decode(reader, length, error) { + Audience.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Audience(); while (reader.pos < end) { var tag = reader.uint32(); @@ -145419,7 +151680,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -145450,9 +151711,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Audience.verify = function verify(message) { + Audience.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.genders != null && message.hasOwnProperty("genders")) { if (!Array.isArray(message.genders)) return "genders: array expected"; @@ -145478,9 +151743,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Audience} Audience */ - Audience.fromObject = function fromObject(object) { + Audience.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Audience) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Audience(); if (object.genders) { if (!Array.isArray(object.genders)) @@ -145581,7 +151850,7 @@ this.colors = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -145658,9 +151927,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ColorInfo.decode = function decode(reader, length, error) { + ColorInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ColorInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -145680,7 +151953,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -145711,9 +151984,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ColorInfo.verify = function verify(message) { + ColorInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.colorFamilies != null && message.hasOwnProperty("colorFamilies")) { if (!Array.isArray(message.colorFamilies)) return "colorFamilies: array expected"; @@ -145739,9 +152016,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ColorInfo} ColorInfo */ - ColorInfo.fromObject = function fromObject(object) { + ColorInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ColorInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ColorInfo(); if (object.colorFamilies) { if (!Array.isArray(object.colorFamilies)) @@ -145844,7 +152125,7 @@ this.numbers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -145959,9 +152240,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomAttribute.decode = function decode(reader, length, error) { + CustomAttribute.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CustomAttribute(); while (reader.pos < end) { var tag = reader.uint32(); @@ -145994,7 +152279,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -146025,9 +152310,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomAttribute.verify = function verify(message) { + CustomAttribute.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.text != null && message.hasOwnProperty("text")) { if (!Array.isArray(message.text)) @@ -146064,9 +152353,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CustomAttribute} CustomAttribute */ - CustomAttribute.fromObject = function fromObject(object) { + CustomAttribute.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CustomAttribute) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CustomAttribute(); if (object.text) { if (!Array.isArray(object.text)) @@ -146180,7 +152473,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -146256,9 +152549,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FulfillmentInfo.decode = function decode(reader, length, error) { + FulfillmentInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.FulfillmentInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -146276,7 +152573,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -146307,9 +152604,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FulfillmentInfo.verify = function verify(message) { + FulfillmentInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -146331,9 +152632,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.FulfillmentInfo} FulfillmentInfo */ - FulfillmentInfo.fromObject = function fromObject(object) { + FulfillmentInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.FulfillmentInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.FulfillmentInfo(); if (object.type != null) message.type = String(object.type); @@ -146425,7 +152730,7 @@ function Image(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -146510,9 +152815,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Image.decode = function decode(reader, length, error) { + Image.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Image(); while (reader.pos < end) { var tag = reader.uint32(); @@ -146532,7 +152841,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -146563,9 +152872,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Image.verify = function verify(message) { + Image.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uri != null && message.hasOwnProperty("uri")) if (!$util.isString(message.uri)) return "uri: string expected"; @@ -146586,9 +152899,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Image} Image */ - Image.fromObject = function fromObject(object) { + Image.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Image) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Image(); if (object.uri != null) message.uri = String(object.uri); @@ -146678,7 +152995,7 @@ function Interval(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -146798,9 +153115,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Interval.decode = function decode(reader, length, error) { + Interval.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Interval(); while (reader.pos < end) { var tag = reader.uint32(); @@ -146824,7 +153145,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -146855,9 +153176,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Interval.verify = function verify(message) { + Interval.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.minimum != null && message.hasOwnProperty("minimum")) { properties.min = 1; @@ -146894,9 +153219,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Interval} Interval */ - Interval.fromObject = function fromObject(object) { + Interval.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Interval) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Interval(); if (object.minimum != null) message.minimum = Number(object.minimum); @@ -147000,7 +153329,7 @@ function PriceInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -147125,9 +153454,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PriceInfo.decode = function decode(reader, length, error) { + PriceInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PriceInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -147151,19 +153484,19 @@ break; } case 5: { - message.priceEffectiveTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.priceEffectiveTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.priceExpireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.priceExpireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.priceRange = $root.google.cloud.retail.v2beta.PriceInfo.PriceRange.decode(reader, reader.uint32()); + message.priceRange = $root.google.cloud.retail.v2beta.PriceInfo.PriceRange.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -147194,9 +153527,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PriceInfo.verify = function verify(message) { + PriceInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.currencyCode != null && message.hasOwnProperty("currencyCode")) if (!$util.isString(message.currencyCode)) return "currencyCode: string expected"; @@ -147210,17 +153547,17 @@ if (typeof message.cost !== "number") return "cost: number expected"; if (message.priceEffectiveTime != null && message.hasOwnProperty("priceEffectiveTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.priceEffectiveTime); + var error = $root.google.protobuf.Timestamp.verify(message.priceEffectiveTime, long + 1); if (error) return "priceEffectiveTime." + error; } if (message.priceExpireTime != null && message.hasOwnProperty("priceExpireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.priceExpireTime); + var error = $root.google.protobuf.Timestamp.verify(message.priceExpireTime, long + 1); if (error) return "priceExpireTime." + error; } if (message.priceRange != null && message.hasOwnProperty("priceRange")) { - var error = $root.google.cloud.retail.v2beta.PriceInfo.PriceRange.verify(message.priceRange); + var error = $root.google.cloud.retail.v2beta.PriceInfo.PriceRange.verify(message.priceRange, long + 1); if (error) return "priceRange." + error; } @@ -147235,9 +153572,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PriceInfo} PriceInfo */ - PriceInfo.fromObject = function fromObject(object) { + PriceInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PriceInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PriceInfo(); if (object.currencyCode != null) message.currencyCode = String(object.currencyCode); @@ -147250,17 +153591,17 @@ if (object.priceEffectiveTime != null) { if (typeof object.priceEffectiveTime !== "object") throw TypeError(".google.cloud.retail.v2beta.PriceInfo.priceEffectiveTime: object expected"); - message.priceEffectiveTime = $root.google.protobuf.Timestamp.fromObject(object.priceEffectiveTime); + message.priceEffectiveTime = $root.google.protobuf.Timestamp.fromObject(object.priceEffectiveTime, long + 1); } if (object.priceExpireTime != null) { if (typeof object.priceExpireTime !== "object") throw TypeError(".google.cloud.retail.v2beta.PriceInfo.priceExpireTime: object expected"); - message.priceExpireTime = $root.google.protobuf.Timestamp.fromObject(object.priceExpireTime); + message.priceExpireTime = $root.google.protobuf.Timestamp.fromObject(object.priceExpireTime, long + 1); } if (object.priceRange != null) { if (typeof object.priceRange !== "object") throw TypeError(".google.cloud.retail.v2beta.PriceInfo.priceRange: object expected"); - message.priceRange = $root.google.cloud.retail.v2beta.PriceInfo.PriceRange.fromObject(object.priceRange); + message.priceRange = $root.google.cloud.retail.v2beta.PriceInfo.PriceRange.fromObject(object.priceRange, long + 1); } return message; }; @@ -147351,7 +153692,7 @@ function PriceRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -147426,9 +153767,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PriceRange.decode = function decode(reader, length, error) { + PriceRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PriceInfo.PriceRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -147436,15 +153781,15 @@ break; switch (tag >>> 3) { case 1: { - message.price = $root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32()); + message.price = $root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.originalPrice = $root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32()); + message.originalPrice = $root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -147475,16 +153820,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PriceRange.verify = function verify(message) { + PriceRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.price != null && message.hasOwnProperty("price")) { - var error = $root.google.cloud.retail.v2beta.Interval.verify(message.price); + var error = $root.google.cloud.retail.v2beta.Interval.verify(message.price, long + 1); if (error) return "price." + error; } if (message.originalPrice != null && message.hasOwnProperty("originalPrice")) { - var error = $root.google.cloud.retail.v2beta.Interval.verify(message.originalPrice); + var error = $root.google.cloud.retail.v2beta.Interval.verify(message.originalPrice, long + 1); if (error) return "originalPrice." + error; } @@ -147499,19 +153848,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PriceInfo.PriceRange} PriceRange */ - PriceRange.fromObject = function fromObject(object) { + PriceRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PriceInfo.PriceRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PriceInfo.PriceRange(); if (object.price != null) { if (typeof object.price !== "object") throw TypeError(".google.cloud.retail.v2beta.PriceInfo.PriceRange.price: object expected"); - message.price = $root.google.cloud.retail.v2beta.Interval.fromObject(object.price); + message.price = $root.google.cloud.retail.v2beta.Interval.fromObject(object.price, long + 1); } if (object.originalPrice != null) { if (typeof object.originalPrice !== "object") throw TypeError(".google.cloud.retail.v2beta.PriceInfo.PriceRange.originalPrice: object expected"); - message.originalPrice = $root.google.cloud.retail.v2beta.Interval.fromObject(object.originalPrice); + message.originalPrice = $root.google.cloud.retail.v2beta.Interval.fromObject(object.originalPrice, long + 1); } return message; }; @@ -147595,7 +153948,7 @@ this.ratingHistogram = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -147684,9 +154037,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Rating.decode = function decode(reader, length, error) { + Rating.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Rating(); while (reader.pos < end) { var tag = reader.uint32(); @@ -147713,7 +154070,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -147744,9 +154101,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Rating.verify = function verify(message) { + Rating.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ratingCount != null && message.hasOwnProperty("ratingCount")) if (!$util.isInteger(message.ratingCount)) return "ratingCount: integer expected"; @@ -147771,9 +154132,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Rating} Rating */ - Rating.fromObject = function fromObject(object) { + Rating.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Rating) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Rating(); if (object.ratingCount != null) message.ratingCount = object.ratingCount | 0; @@ -147872,7 +154237,7 @@ function UserInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -147967,9 +154332,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserInfo.decode = function decode(reader, length, error) { + UserInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UserInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -147993,7 +154362,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -148024,9 +154393,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserInfo.verify = function verify(message) { + UserInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userId != null && message.hasOwnProperty("userId")) if (!$util.isString(message.userId)) return "userId: string expected"; @@ -148050,9 +154423,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UserInfo} UserInfo */ - UserInfo.fromObject = function fromObject(object) { + UserInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UserInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UserInfo(); if (object.userId != null) message.userId = String(object.userId); @@ -148149,7 +154526,7 @@ this.fulfillmentTypes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -148248,9 +154625,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LocalInventory.decode = function decode(reader, length, error) { + LocalInventory.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.LocalInventory(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -148262,7 +154643,7 @@ break; } case 2: { - message.priceInfo = $root.google.cloud.retail.v2beta.PriceInfo.decode(reader, reader.uint32()); + message.priceInfo = $root.google.cloud.retail.v2beta.PriceInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -148278,13 +154659,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2beta.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -148295,7 +154678,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -148326,14 +154709,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LocalInventory.verify = function verify(message) { + LocalInventory.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placeId != null && message.hasOwnProperty("placeId")) if (!$util.isString(message.placeId)) return "placeId: string expected"; if (message.priceInfo != null && message.hasOwnProperty("priceInfo")) { - var error = $root.google.cloud.retail.v2beta.PriceInfo.verify(message.priceInfo); + var error = $root.google.cloud.retail.v2beta.PriceInfo.verify(message.priceInfo, long + 1); if (error) return "priceInfo." + error; } @@ -148342,7 +154729,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2beta.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -148365,25 +154752,31 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.LocalInventory} LocalInventory */ - LocalInventory.fromObject = function fromObject(object) { + LocalInventory.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.LocalInventory) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.LocalInventory(); if (object.placeId != null) message.placeId = String(object.placeId); if (object.priceInfo != null) { if (typeof object.priceInfo !== "object") throw TypeError(".google.cloud.retail.v2beta.LocalInventory.priceInfo: object expected"); - message.priceInfo = $root.google.cloud.retail.v2beta.PriceInfo.fromObject(object.priceInfo); + message.priceInfo = $root.google.cloud.retail.v2beta.PriceInfo.fromObject(object.priceInfo, long + 1); } if (object.attributes) { if (typeof object.attributes !== "object") throw TypeError(".google.cloud.retail.v2beta.LocalInventory.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.LocalInventory.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2beta.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2beta.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.fulfillmentTypes) { @@ -148424,8 +154817,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2beta.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.fulfillmentTypes && message.fulfillmentTypes.length) { object.fulfillmentTypes = []; @@ -148487,7 +154883,7 @@ this.droppedPins = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -148568,9 +154964,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PinControlMetadata.decode = function decode(reader, length, error) { + PinControlMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PinControlMetadata(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -148590,10 +154990,10 @@ key = reader.int64(); break; case 2: - value = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -148613,10 +155013,10 @@ key = reader.int64(); break; case 2: - value = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } @@ -148624,7 +155024,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -148655,9 +155055,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PinControlMetadata.verify = function verify(message) { + PinControlMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allMatchedPins != null && message.hasOwnProperty("allMatchedPins")) { if (!$util.isObject(message.allMatchedPins)) return "allMatchedPins: object expected"; @@ -148666,7 +155070,7 @@ if (!$util.key64Re.test(key[i])) return "allMatchedPins: integer|Long key{k:int64} expected"; { - var error = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.verify(message.allMatchedPins[key[i]]); + var error = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.verify(message.allMatchedPins[key[i]], long + 1); if (error) return "allMatchedPins." + error; } @@ -148680,7 +155084,7 @@ if (!$util.key64Re.test(key[i])) return "droppedPins: integer|Long key{k:int64} expected"; { - var error = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.verify(message.droppedPins[key[i]]); + var error = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.verify(message.droppedPins[key[i]], long + 1); if (error) return "droppedPins." + error; } @@ -148697,18 +155101,24 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PinControlMetadata} PinControlMetadata */ - PinControlMetadata.fromObject = function fromObject(object) { + PinControlMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PinControlMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PinControlMetadata(); if (object.allMatchedPins) { if (typeof object.allMatchedPins !== "object") throw TypeError(".google.cloud.retail.v2beta.PinControlMetadata.allMatchedPins: object expected"); message.allMatchedPins = {}; for (var keys = Object.keys(object.allMatchedPins), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.allMatchedPins, keys[i]); if (typeof object.allMatchedPins[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.PinControlMetadata.allMatchedPins: object expected"); - message.allMatchedPins[keys[i]] = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.fromObject(object.allMatchedPins[keys[i]]); + message.allMatchedPins[keys[i]] = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.fromObject(object.allMatchedPins[keys[i]], long + 1); } } if (object.droppedPins) { @@ -148716,9 +155126,11 @@ throw TypeError(".google.cloud.retail.v2beta.PinControlMetadata.droppedPins: object expected"); message.droppedPins = {}; for (var keys = Object.keys(object.droppedPins), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.droppedPins, keys[i]); if (typeof object.droppedPins[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.PinControlMetadata.droppedPins: object expected"); - message.droppedPins[keys[i]] = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.fromObject(object.droppedPins[keys[i]]); + message.droppedPins[keys[i]] = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.fromObject(object.droppedPins[keys[i]], long + 1); } } return message; @@ -148744,13 +155156,19 @@ var keys2; if (message.allMatchedPins && (keys2 = Object.keys(message.allMatchedPins)).length) { object.allMatchedPins = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.allMatchedPins, keys2[j]); object.allMatchedPins[keys2[j]] = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.toObject(message.allMatchedPins[keys2[j]], options); + } } if (message.droppedPins && (keys2 = Object.keys(message.droppedPins)).length) { object.droppedPins = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.droppedPins, keys2[j]); object.droppedPins[keys2[j]] = $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins.toObject(message.droppedPins[keys2[j]], options); + } } return object; }; @@ -148802,7 +155220,7 @@ this.productId = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -148868,9 +155286,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductPins.decode = function decode(reader, length, error) { + ProductPins.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins(); while (reader.pos < end) { var tag = reader.uint32(); @@ -148884,7 +155306,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -148915,9 +155337,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductPins.verify = function verify(message) { + ProductPins.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productId != null && message.hasOwnProperty("productId")) { if (!Array.isArray(message.productId)) return "productId: array expected"; @@ -148936,9 +155362,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PinControlMetadata.ProductPins} ProductPins */ - ProductPins.fromObject = function fromObject(object) { + ProductPins.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PinControlMetadata.ProductPins(); if (object.productId) { if (!Array.isArray(object.productId)) @@ -149026,7 +155456,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -149092,9 +155522,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StringList.decode = function decode(reader, length, error) { + StringList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.StringList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -149108,7 +155542,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -149139,9 +155573,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StringList.verify = function verify(message) { + StringList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -149160,9 +155598,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.StringList} StringList */ - StringList.fromObject = function fromObject(object) { + StringList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.StringList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.StringList(); if (object.values) { if (!Array.isArray(object.values)) @@ -149247,7 +155689,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -149316,9 +155758,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DoubleList.decode = function decode(reader, length, error) { + DoubleList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.DoubleList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -149337,7 +155783,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -149368,9 +155814,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DoubleList.verify = function verify(message) { + DoubleList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; @@ -149389,9 +155839,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.DoubleList} DoubleList */ - DoubleList.fromObject = function fromObject(object) { + DoubleList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.DoubleList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.DoubleList(); if (object.values) { if (!Array.isArray(object.values)) @@ -149477,7 +155931,7 @@ this.inputUris = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -149553,9 +156007,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GcsSource.decode = function decode(reader, length, error) { + GcsSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GcsSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -149573,7 +156031,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -149604,9 +156062,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GcsSource.verify = function verify(message) { + GcsSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.inputUris != null && message.hasOwnProperty("inputUris")) { if (!Array.isArray(message.inputUris)) return "inputUris: array expected"; @@ -149628,9 +156090,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GcsSource} GcsSource */ - GcsSource.fromObject = function fromObject(object) { + GcsSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GcsSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GcsSource(); if (object.inputUris) { if (!Array.isArray(object.inputUris)) @@ -149725,7 +156191,7 @@ function BigQuerySource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -149854,9 +156320,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BigQuerySource.decode = function decode(reader, length, error) { + BigQuerySource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.BigQuerySource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -149864,7 +156334,7 @@ break; switch (tag >>> 3) { case 6: { - message.partitionDate = $root.google.type.Date.decode(reader, reader.uint32()); + message.partitionDate = $root.google.type.Date.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -149888,7 +156358,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -149919,14 +156389,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BigQuerySource.verify = function verify(message) { + BigQuerySource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.partitionDate != null && message.hasOwnProperty("partitionDate")) { properties.partition = 1; { - var error = $root.google.type.Date.verify(message.partitionDate); + var error = $root.google.type.Date.verify(message.partitionDate, long + 1); if (error) return "partitionDate." + error; } @@ -149957,14 +156431,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.BigQuerySource} BigQuerySource */ - BigQuerySource.fromObject = function fromObject(object) { + BigQuerySource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.BigQuerySource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.BigQuerySource(); if (object.partitionDate != null) { if (typeof object.partitionDate !== "object") throw TypeError(".google.cloud.retail.v2beta.BigQuerySource.partitionDate: object expected"); - message.partitionDate = $root.google.type.Date.fromObject(object.partitionDate); + message.partitionDate = $root.google.type.Date.fromObject(object.partitionDate, long + 1); } if (object.projectId != null) message.projectId = String(object.projectId); @@ -150067,7 +156545,7 @@ this.products = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -150133,9 +156611,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductInlineSource.decode = function decode(reader, length, error) { + ProductInlineSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ProductInlineSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -150145,11 +156627,11 @@ case 1: { if (!(message.products && message.products.length)) message.products = []; - message.products.push($root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32())); + message.products.push($root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -150180,14 +156662,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductInlineSource.verify = function verify(message) { + ProductInlineSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.products != null && message.hasOwnProperty("products")) { if (!Array.isArray(message.products)) return "products: array expected"; for (var i = 0; i < message.products.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Product.verify(message.products[i]); + var error = $root.google.cloud.retail.v2beta.Product.verify(message.products[i], long + 1); if (error) return "products." + error; } @@ -150203,9 +156689,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ProductInlineSource} ProductInlineSource */ - ProductInlineSource.fromObject = function fromObject(object) { + ProductInlineSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ProductInlineSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ProductInlineSource(); if (object.products) { if (!Array.isArray(object.products)) @@ -150214,7 +156704,7 @@ for (var i = 0; i < object.products.length; ++i) { if (typeof object.products[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ProductInlineSource.products: object expected"); - message.products[i] = $root.google.cloud.retail.v2beta.Product.fromObject(object.products[i]); + message.products[i] = $root.google.cloud.retail.v2beta.Product.fromObject(object.products[i], long + 1); } } return message; @@ -150293,7 +156783,7 @@ this.userEvents = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -150359,9 +156849,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventInlineSource.decode = function decode(reader, length, error) { + UserEventInlineSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UserEventInlineSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -150371,11 +156865,11 @@ case 1: { if (!(message.userEvents && message.userEvents.length)) message.userEvents = []; - message.userEvents.push($root.google.cloud.retail.v2beta.UserEvent.decode(reader, reader.uint32())); + message.userEvents.push($root.google.cloud.retail.v2beta.UserEvent.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -150406,14 +156900,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventInlineSource.verify = function verify(message) { + UserEventInlineSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userEvents != null && message.hasOwnProperty("userEvents")) { if (!Array.isArray(message.userEvents)) return "userEvents: array expected"; for (var i = 0; i < message.userEvents.length; ++i) { - var error = $root.google.cloud.retail.v2beta.UserEvent.verify(message.userEvents[i]); + var error = $root.google.cloud.retail.v2beta.UserEvent.verify(message.userEvents[i], long + 1); if (error) return "userEvents." + error; } @@ -150429,9 +156927,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UserEventInlineSource} UserEventInlineSource */ - UserEventInlineSource.fromObject = function fromObject(object) { + UserEventInlineSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UserEventInlineSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UserEventInlineSource(); if (object.userEvents) { if (!Array.isArray(object.userEvents)) @@ -150440,7 +156942,7 @@ for (var i = 0; i < object.userEvents.length; ++i) { if (typeof object.userEvents[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEventInlineSource.userEvents: object expected"); - message.userEvents[i] = $root.google.cloud.retail.v2beta.UserEvent.fromObject(object.userEvents[i]); + message.userEvents[i] = $root.google.cloud.retail.v2beta.UserEvent.fromObject(object.userEvents[i], long + 1); } } return message; @@ -150518,7 +157020,7 @@ function ImportErrorsConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -150597,9 +157099,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportErrorsConfig.decode = function decode(reader, length, error) { + ImportErrorsConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ImportErrorsConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -150611,7 +157117,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -150642,9 +157148,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportErrorsConfig.verify = function verify(message) { + ImportErrorsConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.gcsPrefix != null && message.hasOwnProperty("gcsPrefix")) { properties.destination = 1; @@ -150662,9 +157172,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ImportErrorsConfig} ImportErrorsConfig */ - ImportErrorsConfig.fromObject = function fromObject(object) { + ImportErrorsConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ImportErrorsConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ImportErrorsConfig(); if (object.gcsPrefix != null) message.gcsPrefix = String(object.gcsPrefix); @@ -150747,7 +157261,7 @@ function ImportProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -150872,9 +157386,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportProductsRequest.decode = function decode(reader, length, error) { + ImportProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ImportProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -150890,15 +157408,15 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2beta.ProductInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2beta.ProductInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -150910,7 +157428,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -150941,9 +157459,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportProductsRequest.verify = function verify(message) { + ImportProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -150951,17 +157473,17 @@ if (!$util.isString(message.requestId)) return "requestId: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2beta.ProductInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2beta.ProductInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2beta.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2beta.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -150988,9 +157510,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ImportProductsRequest} ImportProductsRequest */ - ImportProductsRequest.fromObject = function fromObject(object) { + ImportProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ImportProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ImportProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -150999,17 +157525,17 @@ if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportProductsRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2beta.ProductInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2beta.ProductInputConfig.fromObject(object.inputConfig, long + 1); } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportProductsRequest.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportProductsRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } switch (object.reconciliationMode) { default: @@ -151142,7 +157668,7 @@ function ImportUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -151227,9 +157753,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportUserEventsRequest.decode = function decode(reader, length, error) { + ImportUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ImportUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -151241,15 +157771,15 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2beta.UserEventInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2beta.UserEventInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -151280,19 +157810,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportUserEventsRequest.verify = function verify(message) { + ImportUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2beta.UserEventInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2beta.UserEventInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2beta.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2beta.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } @@ -151307,21 +157841,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ImportUserEventsRequest} ImportUserEventsRequest */ - ImportUserEventsRequest.fromObject = function fromObject(object) { + ImportUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ImportUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ImportUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportUserEventsRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2beta.UserEventInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2beta.UserEventInputConfig.fromObject(object.inputConfig, long + 1); } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportUserEventsRequest.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } return message; }; @@ -151404,7 +157942,7 @@ function ImportCompletionDataRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -151489,9 +158027,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportCompletionDataRequest.decode = function decode(reader, length, error) { + ImportCompletionDataRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ImportCompletionDataRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -151503,7 +158045,7 @@ break; } case 2: { - message.inputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.decode(reader, reader.uint32()); + message.inputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -151511,7 +158053,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -151542,14 +158084,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportCompletionDataRequest.verify = function verify(message) { + ImportCompletionDataRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.inputConfig != null && message.hasOwnProperty("inputConfig")) { - var error = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.verify(message.inputConfig); + var error = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.verify(message.inputConfig, long + 1); if (error) return "inputConfig." + error; } @@ -151567,16 +158113,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ImportCompletionDataRequest} ImportCompletionDataRequest */ - ImportCompletionDataRequest.fromObject = function fromObject(object) { + ImportCompletionDataRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ImportCompletionDataRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ImportCompletionDataRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.inputConfig != null) { if (typeof object.inputConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportCompletionDataRequest.inputConfig: object expected"); - message.inputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.fromObject(object.inputConfig); + message.inputConfig = $root.google.cloud.retail.v2beta.CompletionDataInputConfig.fromObject(object.inputConfig, long + 1); } if (object.notificationPubsubTopic != null) message.notificationPubsubTopic = String(object.notificationPubsubTopic); @@ -151661,7 +158211,7 @@ function ProductInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -151760,9 +158310,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductInputConfig.decode = function decode(reader, length, error) { + ProductInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ProductInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -151770,19 +158324,19 @@ break; switch (tag >>> 3) { case 1: { - message.productInlineSource = $root.google.cloud.retail.v2beta.ProductInlineSource.decode(reader, reader.uint32()); + message.productInlineSource = $root.google.cloud.retail.v2beta.ProductInlineSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.gcsSource = $root.google.cloud.retail.v2beta.GcsSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.retail.v2beta.GcsSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -151813,14 +158367,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductInputConfig.verify = function verify(message) { + ProductInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.productInlineSource != null && message.hasOwnProperty("productInlineSource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2beta.ProductInlineSource.verify(message.productInlineSource); + var error = $root.google.cloud.retail.v2beta.ProductInlineSource.verify(message.productInlineSource, long + 1); if (error) return "productInlineSource." + error; } @@ -151830,7 +158388,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2beta.GcsSource.verify(message.gcsSource); + var error = $root.google.cloud.retail.v2beta.GcsSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -151840,7 +158398,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2beta.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2beta.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -151856,24 +158414,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ProductInputConfig} ProductInputConfig */ - ProductInputConfig.fromObject = function fromObject(object) { + ProductInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ProductInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ProductInputConfig(); if (object.productInlineSource != null) { if (typeof object.productInlineSource !== "object") throw TypeError(".google.cloud.retail.v2beta.ProductInputConfig.productInlineSource: object expected"); - message.productInlineSource = $root.google.cloud.retail.v2beta.ProductInlineSource.fromObject(object.productInlineSource); + message.productInlineSource = $root.google.cloud.retail.v2beta.ProductInlineSource.fromObject(object.productInlineSource, long + 1); } if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.retail.v2beta.ProductInputConfig.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.retail.v2beta.GcsSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.retail.v2beta.GcsSource.fromObject(object.gcsSource, long + 1); } if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2beta.ProductInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -151960,7 +158522,7 @@ function UserEventInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -152059,9 +158621,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventInputConfig.decode = function decode(reader, length, error) { + UserEventInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UserEventInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -152069,19 +158635,19 @@ break; switch (tag >>> 3) { case 1: { - message.userEventInlineSource = $root.google.cloud.retail.v2beta.UserEventInlineSource.decode(reader, reader.uint32()); + message.userEventInlineSource = $root.google.cloud.retail.v2beta.UserEventInlineSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.gcsSource = $root.google.cloud.retail.v2beta.GcsSource.decode(reader, reader.uint32()); + message.gcsSource = $root.google.cloud.retail.v2beta.GcsSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -152112,14 +158678,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventInputConfig.verify = function verify(message) { + UserEventInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.userEventInlineSource != null && message.hasOwnProperty("userEventInlineSource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2beta.UserEventInlineSource.verify(message.userEventInlineSource); + var error = $root.google.cloud.retail.v2beta.UserEventInlineSource.verify(message.userEventInlineSource, long + 1); if (error) return "userEventInlineSource." + error; } @@ -152129,7 +158699,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2beta.GcsSource.verify(message.gcsSource); + var error = $root.google.cloud.retail.v2beta.GcsSource.verify(message.gcsSource, long + 1); if (error) return "gcsSource." + error; } @@ -152139,7 +158709,7 @@ return "source: multiple values"; properties.source = 1; { - var error = $root.google.cloud.retail.v2beta.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2beta.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -152155,24 +158725,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UserEventInputConfig} UserEventInputConfig */ - UserEventInputConfig.fromObject = function fromObject(object) { + UserEventInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UserEventInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UserEventInputConfig(); if (object.userEventInlineSource != null) { if (typeof object.userEventInlineSource !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEventInputConfig.userEventInlineSource: object expected"); - message.userEventInlineSource = $root.google.cloud.retail.v2beta.UserEventInlineSource.fromObject(object.userEventInlineSource); + message.userEventInlineSource = $root.google.cloud.retail.v2beta.UserEventInlineSource.fromObject(object.userEventInlineSource, long + 1); } if (object.gcsSource != null) { if (typeof object.gcsSource !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEventInputConfig.gcsSource: object expected"); - message.gcsSource = $root.google.cloud.retail.v2beta.GcsSource.fromObject(object.gcsSource); + message.gcsSource = $root.google.cloud.retail.v2beta.GcsSource.fromObject(object.gcsSource, long + 1); } if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEventInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -152257,7 +158831,7 @@ function CompletionDataInputConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -152336,9 +158910,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionDataInputConfig.decode = function decode(reader, length, error) { + CompletionDataInputConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CompletionDataInputConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -152346,11 +158924,11 @@ break; switch (tag >>> 3) { case 1: { - message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.decode(reader, reader.uint32()); + message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -152381,14 +158959,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionDataInputConfig.verify = function verify(message) { + CompletionDataInputConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.bigQuerySource != null && message.hasOwnProperty("bigQuerySource")) { properties.source = 1; { - var error = $root.google.cloud.retail.v2beta.BigQuerySource.verify(message.bigQuerySource); + var error = $root.google.cloud.retail.v2beta.BigQuerySource.verify(message.bigQuerySource, long + 1); if (error) return "bigQuerySource." + error; } @@ -152404,14 +158986,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CompletionDataInputConfig} CompletionDataInputConfig */ - CompletionDataInputConfig.fromObject = function fromObject(object) { + CompletionDataInputConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CompletionDataInputConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CompletionDataInputConfig(); if (object.bigQuerySource != null) { if (typeof object.bigQuerySource !== "object") throw TypeError(".google.cloud.retail.v2beta.CompletionDataInputConfig.bigQuerySource: object expected"); - message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.fromObject(object.bigQuerySource); + message.bigQuerySource = $root.google.cloud.retail.v2beta.BigQuerySource.fromObject(object.bigQuerySource, long + 1); } return message; }; @@ -152491,7 +159077,7 @@ function ImportMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -152606,9 +159192,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportMetadata.decode = function decode(reader, length, error) { + ImportMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ImportMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -152616,11 +159206,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -152640,7 +159230,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -152671,16 +159261,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportMetadata.verify = function verify(message) { + ImportMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -152707,19 +159301,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ImportMetadata} ImportMetadata */ - ImportMetadata.fromObject = function fromObject(object) { + ImportMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ImportMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ImportMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.successCount != null) if ($util.Long) @@ -152847,7 +159445,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -152923,9 +159521,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportProductsResponse.decode = function decode(reader, length, error) { + ImportProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ImportProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -152935,15 +159537,15 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -152974,20 +159576,24 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportProductsResponse.verify = function verify(message) { + ImportProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2beta.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2beta.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } @@ -153002,9 +159608,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ImportProductsResponse} ImportProductsResponse */ - ImportProductsResponse.fromObject = function fromObject(object) { + ImportProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ImportProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ImportProductsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -153013,13 +159623,13 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportProductsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportProductsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } return message; }; @@ -153103,7 +159713,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -153189,9 +159799,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportUserEventsResponse.decode = function decode(reader, length, error) { + ImportUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ImportUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -153201,19 +159815,19 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.decode(reader, reader.uint32()); + message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.importSummary = $root.google.cloud.retail.v2beta.UserEventImportSummary.decode(reader, reader.uint32()); + message.importSummary = $root.google.cloud.retail.v2beta.UserEventImportSummary.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -153244,25 +159858,29 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportUserEventsResponse.verify = function verify(message) { + ImportUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } } if (message.errorsConfig != null && message.hasOwnProperty("errorsConfig")) { - var error = $root.google.cloud.retail.v2beta.ImportErrorsConfig.verify(message.errorsConfig); + var error = $root.google.cloud.retail.v2beta.ImportErrorsConfig.verify(message.errorsConfig, long + 1); if (error) return "errorsConfig." + error; } if (message.importSummary != null && message.hasOwnProperty("importSummary")) { - var error = $root.google.cloud.retail.v2beta.UserEventImportSummary.verify(message.importSummary); + var error = $root.google.cloud.retail.v2beta.UserEventImportSummary.verify(message.importSummary, long + 1); if (error) return "importSummary." + error; } @@ -153277,9 +159895,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ImportUserEventsResponse} ImportUserEventsResponse */ - ImportUserEventsResponse.fromObject = function fromObject(object) { + ImportUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ImportUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ImportUserEventsResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -153288,18 +159910,18 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportUserEventsResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } if (object.errorsConfig != null) { if (typeof object.errorsConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportUserEventsResponse.errorsConfig: object expected"); - message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.fromObject(object.errorsConfig); + message.errorsConfig = $root.google.cloud.retail.v2beta.ImportErrorsConfig.fromObject(object.errorsConfig, long + 1); } if (object.importSummary != null) { if (typeof object.importSummary !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportUserEventsResponse.importSummary: object expected"); - message.importSummary = $root.google.cloud.retail.v2beta.UserEventImportSummary.fromObject(object.importSummary); + message.importSummary = $root.google.cloud.retail.v2beta.UserEventImportSummary.fromObject(object.importSummary, long + 1); } return message; }; @@ -153385,7 +160007,7 @@ function UserEventImportSummary(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -153460,9 +160082,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEventImportSummary.decode = function decode(reader, length, error) { + UserEventImportSummary.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UserEventImportSummary(); while (reader.pos < end) { var tag = reader.uint32(); @@ -153478,7 +160104,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -153509,9 +160135,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEventImportSummary.verify = function verify(message) { + UserEventImportSummary.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.joinedEventsCount != null && message.hasOwnProperty("joinedEventsCount")) if (!$util.isInteger(message.joinedEventsCount) && !(message.joinedEventsCount && $util.isInteger(message.joinedEventsCount.low) && $util.isInteger(message.joinedEventsCount.high))) return "joinedEventsCount: integer|Long expected"; @@ -153529,9 +160159,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UserEventImportSummary} UserEventImportSummary */ - UserEventImportSummary.fromObject = function fromObject(object) { + UserEventImportSummary.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UserEventImportSummary) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UserEventImportSummary(); if (object.joinedEventsCount != null) if ($util.Long) @@ -153642,7 +160276,7 @@ this.errorSamples = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -153708,9 +160342,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ImportCompletionDataResponse.decode = function decode(reader, length, error) { + ImportCompletionDataResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ImportCompletionDataResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -153720,11 +160358,11 @@ case 1: { if (!(message.errorSamples && message.errorSamples.length)) message.errorSamples = []; - message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32())); + message.errorSamples.push($root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -153755,14 +160393,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ImportCompletionDataResponse.verify = function verify(message) { + ImportCompletionDataResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.errorSamples != null && message.hasOwnProperty("errorSamples")) { if (!Array.isArray(message.errorSamples)) return "errorSamples: array expected"; for (var i = 0; i < message.errorSamples.length; ++i) { - var error = $root.google.rpc.Status.verify(message.errorSamples[i]); + var error = $root.google.rpc.Status.verify(message.errorSamples[i], long + 1); if (error) return "errorSamples." + error; } @@ -153778,9 +160420,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ImportCompletionDataResponse} ImportCompletionDataResponse */ - ImportCompletionDataResponse.fromObject = function fromObject(object) { + ImportCompletionDataResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ImportCompletionDataResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ImportCompletionDataResponse(); if (object.errorSamples) { if (!Array.isArray(object.errorSamples)) @@ -153789,7 +160435,7 @@ for (var i = 0; i < object.errorSamples.length; ++i) { if (typeof object.errorSamples[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ImportCompletionDataResponse.errorSamples: object expected"); - message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i]); + message.errorSamples[i] = $root.google.rpc.Status.fromObject(object.errorSamples[i], long + 1); } } return message; @@ -153914,7 +160560,7 @@ this.localInventories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -154339,9 +160985,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Product.decode = function decode(reader, length, error) { + Product.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Product(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -154349,11 +160999,11 @@ break; switch (tag >>> 3) { case 16: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { - message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.ttl = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -154419,13 +161069,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2beta.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -154436,15 +161088,15 @@ break; } case 14: { - message.priceInfo = $root.google.cloud.retail.v2beta.PriceInfo.decode(reader, reader.uint32()); + message.priceInfo = $root.google.cloud.retail.v2beta.PriceInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { - message.rating = $root.google.cloud.retail.v2beta.Rating.decode(reader, reader.uint32()); + message.rating = $root.google.cloud.retail.v2beta.Rating.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { - message.availableTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.availableTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -154452,13 +161104,13 @@ break; } case 20: { - message.availableQuantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32()); + message.availableQuantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32(), undefined, long + 1); break; } case 21: { if (!(message.fulfillmentInfo && message.fulfillmentInfo.length)) message.fulfillmentInfo = []; - message.fulfillmentInfo.push($root.google.cloud.retail.v2beta.FulfillmentInfo.decode(reader, reader.uint32())); + message.fulfillmentInfo.push($root.google.cloud.retail.v2beta.FulfillmentInfo.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { @@ -154468,15 +161120,15 @@ case 23: { if (!(message.images && message.images.length)) message.images = []; - message.images.push($root.google.cloud.retail.v2beta.Image.decode(reader, reader.uint32())); + message.images.push($root.google.cloud.retail.v2beta.Image.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 24: { - message.audience = $root.google.cloud.retail.v2beta.Audience.decode(reader, reader.uint32()); + message.audience = $root.google.cloud.retail.v2beta.Audience.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.colorInfo = $root.google.cloud.retail.v2beta.ColorInfo.decode(reader, reader.uint32()); + message.colorInfo = $root.google.cloud.retail.v2beta.ColorInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { @@ -154506,31 +161158,31 @@ case 34: { if (!(message.promotions && message.promotions.length)) message.promotions = []; - message.promotions.push($root.google.cloud.retail.v2beta.Promotion.decode(reader, reader.uint32())); + message.promotions.push($root.google.cloud.retail.v2beta.Promotion.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 33: { - message.publishTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.publishTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 30: { - message.retrievableFields = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.retrievableFields = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 31: { if (!(message.variants && message.variants.length)) message.variants = []; - message.variants.push($root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32())); + message.variants.push($root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 35: { if (!(message.localInventories && message.localInventories.length)) message.localInventories = []; - message.localInventories.push($root.google.cloud.retail.v2beta.LocalInventory.decode(reader, reader.uint32())); + message.localInventories.push($root.google.cloud.retail.v2beta.LocalInventory.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -154561,14 +161213,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Product.verify = function verify(message) { + Product.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.expireTime != null && message.hasOwnProperty("expireTime")) { properties.expiration = 1; { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -154578,7 +161234,7 @@ return "expiration: multiple values"; properties.expiration = 1; { - var error = $root.google.protobuf.Duration.verify(message.ttl); + var error = $root.google.protobuf.Duration.verify(message.ttl, long + 1); if (error) return "ttl." + error; } @@ -154640,7 +161296,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2beta.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -154653,17 +161309,17 @@ return "tags: string[] expected"; } if (message.priceInfo != null && message.hasOwnProperty("priceInfo")) { - var error = $root.google.cloud.retail.v2beta.PriceInfo.verify(message.priceInfo); + var error = $root.google.cloud.retail.v2beta.PriceInfo.verify(message.priceInfo, long + 1); if (error) return "priceInfo." + error; } if (message.rating != null && message.hasOwnProperty("rating")) { - var error = $root.google.cloud.retail.v2beta.Rating.verify(message.rating); + var error = $root.google.cloud.retail.v2beta.Rating.verify(message.rating, long + 1); if (error) return "rating." + error; } if (message.availableTime != null && message.hasOwnProperty("availableTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.availableTime); + var error = $root.google.protobuf.Timestamp.verify(message.availableTime, long + 1); if (error) return "availableTime." + error; } @@ -154679,7 +161335,7 @@ break; } if (message.availableQuantity != null && message.hasOwnProperty("availableQuantity")) { - var error = $root.google.protobuf.Int32Value.verify(message.availableQuantity); + var error = $root.google.protobuf.Int32Value.verify(message.availableQuantity, long + 1); if (error) return "availableQuantity." + error; } @@ -154687,7 +161343,7 @@ if (!Array.isArray(message.fulfillmentInfo)) return "fulfillmentInfo: array expected"; for (var i = 0; i < message.fulfillmentInfo.length; ++i) { - var error = $root.google.cloud.retail.v2beta.FulfillmentInfo.verify(message.fulfillmentInfo[i]); + var error = $root.google.cloud.retail.v2beta.FulfillmentInfo.verify(message.fulfillmentInfo[i], long + 1); if (error) return "fulfillmentInfo." + error; } @@ -154699,18 +161355,18 @@ if (!Array.isArray(message.images)) return "images: array expected"; for (var i = 0; i < message.images.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Image.verify(message.images[i]); + var error = $root.google.cloud.retail.v2beta.Image.verify(message.images[i], long + 1); if (error) return "images." + error; } } if (message.audience != null && message.hasOwnProperty("audience")) { - var error = $root.google.cloud.retail.v2beta.Audience.verify(message.audience); + var error = $root.google.cloud.retail.v2beta.Audience.verify(message.audience, long + 1); if (error) return "audience." + error; } if (message.colorInfo != null && message.hasOwnProperty("colorInfo")) { - var error = $root.google.cloud.retail.v2beta.ColorInfo.verify(message.colorInfo); + var error = $root.google.cloud.retail.v2beta.ColorInfo.verify(message.colorInfo, long + 1); if (error) return "colorInfo." + error; } @@ -154746,18 +161402,18 @@ if (!Array.isArray(message.promotions)) return "promotions: array expected"; for (var i = 0; i < message.promotions.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Promotion.verify(message.promotions[i]); + var error = $root.google.cloud.retail.v2beta.Promotion.verify(message.promotions[i], long + 1); if (error) return "promotions." + error; } } if (message.publishTime != null && message.hasOwnProperty("publishTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.publishTime); + var error = $root.google.protobuf.Timestamp.verify(message.publishTime, long + 1); if (error) return "publishTime." + error; } if (message.retrievableFields != null && message.hasOwnProperty("retrievableFields")) { - var error = $root.google.protobuf.FieldMask.verify(message.retrievableFields); + var error = $root.google.protobuf.FieldMask.verify(message.retrievableFields, long + 1); if (error) return "retrievableFields." + error; } @@ -154765,7 +161421,7 @@ if (!Array.isArray(message.variants)) return "variants: array expected"; for (var i = 0; i < message.variants.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Product.verify(message.variants[i]); + var error = $root.google.cloud.retail.v2beta.Product.verify(message.variants[i], long + 1); if (error) return "variants." + error; } @@ -154774,7 +161430,7 @@ if (!Array.isArray(message.localInventories)) return "localInventories: array expected"; for (var i = 0; i < message.localInventories.length; ++i) { - var error = $root.google.cloud.retail.v2beta.LocalInventory.verify(message.localInventories[i]); + var error = $root.google.cloud.retail.v2beta.LocalInventory.verify(message.localInventories[i], long + 1); if (error) return "localInventories." + error; } @@ -154790,19 +161446,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Product} Product */ - Product.fromObject = function fromObject(object) { + Product.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Product) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Product(); if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.ttl != null) { if (typeof object.ttl !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.ttl: object expected"); - message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl); + message.ttl = $root.google.protobuf.Duration.fromObject(object.ttl, long + 1); } if (object.name != null) message.name = String(object.name); @@ -154868,9 +161528,11 @@ throw TypeError(".google.cloud.retail.v2beta.Product.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2beta.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2beta.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.tags) { @@ -154883,17 +161545,17 @@ if (object.priceInfo != null) { if (typeof object.priceInfo !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.priceInfo: object expected"); - message.priceInfo = $root.google.cloud.retail.v2beta.PriceInfo.fromObject(object.priceInfo); + message.priceInfo = $root.google.cloud.retail.v2beta.PriceInfo.fromObject(object.priceInfo, long + 1); } if (object.rating != null) { if (typeof object.rating !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.rating: object expected"); - message.rating = $root.google.cloud.retail.v2beta.Rating.fromObject(object.rating); + message.rating = $root.google.cloud.retail.v2beta.Rating.fromObject(object.rating, long + 1); } if (object.availableTime != null) { if (typeof object.availableTime !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.availableTime: object expected"); - message.availableTime = $root.google.protobuf.Timestamp.fromObject(object.availableTime); + message.availableTime = $root.google.protobuf.Timestamp.fromObject(object.availableTime, long + 1); } switch (object.availability) { default: @@ -154926,7 +161588,7 @@ if (object.availableQuantity != null) { if (typeof object.availableQuantity !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.availableQuantity: object expected"); - message.availableQuantity = $root.google.protobuf.Int32Value.fromObject(object.availableQuantity); + message.availableQuantity = $root.google.protobuf.Int32Value.fromObject(object.availableQuantity, long + 1); } if (object.fulfillmentInfo) { if (!Array.isArray(object.fulfillmentInfo)) @@ -154935,7 +161597,7 @@ for (var i = 0; i < object.fulfillmentInfo.length; ++i) { if (typeof object.fulfillmentInfo[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.fulfillmentInfo: object expected"); - message.fulfillmentInfo[i] = $root.google.cloud.retail.v2beta.FulfillmentInfo.fromObject(object.fulfillmentInfo[i]); + message.fulfillmentInfo[i] = $root.google.cloud.retail.v2beta.FulfillmentInfo.fromObject(object.fulfillmentInfo[i], long + 1); } } if (object.uri != null) @@ -154947,18 +161609,18 @@ for (var i = 0; i < object.images.length; ++i) { if (typeof object.images[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.images: object expected"); - message.images[i] = $root.google.cloud.retail.v2beta.Image.fromObject(object.images[i]); + message.images[i] = $root.google.cloud.retail.v2beta.Image.fromObject(object.images[i], long + 1); } } if (object.audience != null) { if (typeof object.audience !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.audience: object expected"); - message.audience = $root.google.cloud.retail.v2beta.Audience.fromObject(object.audience); + message.audience = $root.google.cloud.retail.v2beta.Audience.fromObject(object.audience, long + 1); } if (object.colorInfo != null) { if (typeof object.colorInfo !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.colorInfo: object expected"); - message.colorInfo = $root.google.cloud.retail.v2beta.ColorInfo.fromObject(object.colorInfo); + message.colorInfo = $root.google.cloud.retail.v2beta.ColorInfo.fromObject(object.colorInfo, long + 1); } if (object.sizes) { if (!Array.isArray(object.sizes)) @@ -154995,18 +161657,18 @@ for (var i = 0; i < object.promotions.length; ++i) { if (typeof object.promotions[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.promotions: object expected"); - message.promotions[i] = $root.google.cloud.retail.v2beta.Promotion.fromObject(object.promotions[i]); + message.promotions[i] = $root.google.cloud.retail.v2beta.Promotion.fromObject(object.promotions[i], long + 1); } } if (object.publishTime != null) { if (typeof object.publishTime !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.publishTime: object expected"); - message.publishTime = $root.google.protobuf.Timestamp.fromObject(object.publishTime); + message.publishTime = $root.google.protobuf.Timestamp.fromObject(object.publishTime, long + 1); } if (object.retrievableFields != null) { if (typeof object.retrievableFields !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.retrievableFields: object expected"); - message.retrievableFields = $root.google.protobuf.FieldMask.fromObject(object.retrievableFields); + message.retrievableFields = $root.google.protobuf.FieldMask.fromObject(object.retrievableFields, long + 1); } if (object.variants) { if (!Array.isArray(object.variants)) @@ -155015,7 +161677,7 @@ for (var i = 0; i < object.variants.length; ++i) { if (typeof object.variants[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.variants: object expected"); - message.variants[i] = $root.google.cloud.retail.v2beta.Product.fromObject(object.variants[i]); + message.variants[i] = $root.google.cloud.retail.v2beta.Product.fromObject(object.variants[i], long + 1); } } if (object.localInventories) { @@ -155025,7 +161687,7 @@ for (var i = 0; i < object.localInventories.length; ++i) { if (typeof object.localInventories[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Product.localInventories: object expected"); - message.localInventories[i] = $root.google.cloud.retail.v2beta.LocalInventory.fromObject(object.localInventories[i]); + message.localInventories[i] = $root.google.cloud.retail.v2beta.LocalInventory.fromObject(object.localInventories[i], long + 1); } } return message; @@ -155115,8 +161777,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2beta.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.tags && message.tags.length) { object.tags = []; @@ -155288,7 +161953,7 @@ function Promotion(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -155353,9 +162018,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Promotion.decode = function decode(reader, length, error) { + Promotion.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Promotion(); while (reader.pos < end) { var tag = reader.uint32(); @@ -155367,7 +162036,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -155398,9 +162067,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Promotion.verify = function verify(message) { + Promotion.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.promotionId != null && message.hasOwnProperty("promotionId")) if (!$util.isString(message.promotionId)) return "promotionId: string expected"; @@ -155415,9 +162088,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Promotion} Promotion */ - Promotion.fromObject = function fromObject(object) { + Promotion.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Promotion) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Promotion(); if (object.promotionId != null) message.promotionId = String(object.promotionId); @@ -155517,7 +162194,7 @@ this.pageCategories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -155788,9 +162465,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserEvent.decode = function decode(reader, length, error) { + UserEvent.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UserEvent(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -155810,7 +162491,7 @@ break; } case 3: { - message.eventTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.eventTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -155826,11 +162507,11 @@ case 6: { if (!(message.productDetails && message.productDetails.length)) message.productDetails = []; - message.productDetails.push($root.google.cloud.retail.v2beta.ProductDetail.decode(reader, reader.uint32())); + message.productDetails.push($root.google.cloud.retail.v2beta.ProductDetail.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { - message.completionDetail = $root.google.cloud.retail.v2beta.CompletionDetail.decode(reader, reader.uint32()); + message.completionDetail = $root.google.cloud.retail.v2beta.CompletionDetail.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -155846,13 +162527,15 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2beta.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } @@ -155861,7 +162544,7 @@ break; } case 9: { - message.purchaseTransaction = $root.google.cloud.retail.v2beta.PurchaseTransaction.decode(reader, reader.uint32()); + message.purchaseTransaction = $root.google.cloud.retail.v2beta.PurchaseTransaction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -155887,7 +162570,7 @@ break; } case 12: { - message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { @@ -155907,7 +162590,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -155938,9 +162621,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserEvent.verify = function verify(message) { + UserEvent.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.eventType != null && message.hasOwnProperty("eventType")) if (!$util.isString(message.eventType)) return "eventType: string expected"; @@ -155951,7 +162638,7 @@ if (!$util.isString(message.sessionId)) return "sessionId: string expected"; if (message.eventTime != null && message.hasOwnProperty("eventTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.eventTime); + var error = $root.google.protobuf.Timestamp.verify(message.eventTime, long + 1); if (error) return "eventTime." + error; } @@ -155969,13 +162656,13 @@ if (!Array.isArray(message.productDetails)) return "productDetails: array expected"; for (var i = 0; i < message.productDetails.length; ++i) { - var error = $root.google.cloud.retail.v2beta.ProductDetail.verify(message.productDetails[i]); + var error = $root.google.cloud.retail.v2beta.ProductDetail.verify(message.productDetails[i], long + 1); if (error) return "productDetails." + error; } } if (message.completionDetail != null && message.hasOwnProperty("completionDetail")) { - var error = $root.google.cloud.retail.v2beta.CompletionDetail.verify(message.completionDetail); + var error = $root.google.cloud.retail.v2beta.CompletionDetail.verify(message.completionDetail, long + 1); if (error) return "completionDetail." + error; } @@ -155984,7 +162671,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2beta.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -155993,7 +162680,7 @@ if (!$util.isString(message.cartId)) return "cartId: string expected"; if (message.purchaseTransaction != null && message.hasOwnProperty("purchaseTransaction")) { - var error = $root.google.cloud.retail.v2beta.PurchaseTransaction.verify(message.purchaseTransaction); + var error = $root.google.cloud.retail.v2beta.PurchaseTransaction.verify(message.purchaseTransaction, long + 1); if (error) return "purchaseTransaction." + error; } @@ -156017,7 +162704,7 @@ return "pageCategories: string[] expected"; } if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2beta.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2beta.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } @@ -156044,9 +162731,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UserEvent} UserEvent */ - UserEvent.fromObject = function fromObject(object) { + UserEvent.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UserEvent) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UserEvent(); if (object.eventType != null) message.eventType = String(object.eventType); @@ -156057,7 +162748,7 @@ if (object.eventTime != null) { if (typeof object.eventTime !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEvent.eventTime: object expected"); - message.eventTime = $root.google.protobuf.Timestamp.fromObject(object.eventTime); + message.eventTime = $root.google.protobuf.Timestamp.fromObject(object.eventTime, long + 1); } if (object.experimentIds) { if (!Array.isArray(object.experimentIds)) @@ -156075,22 +162766,24 @@ for (var i = 0; i < object.productDetails.length; ++i) { if (typeof object.productDetails[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEvent.productDetails: object expected"); - message.productDetails[i] = $root.google.cloud.retail.v2beta.ProductDetail.fromObject(object.productDetails[i]); + message.productDetails[i] = $root.google.cloud.retail.v2beta.ProductDetail.fromObject(object.productDetails[i], long + 1); } } if (object.completionDetail != null) { if (typeof object.completionDetail !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEvent.completionDetail: object expected"); - message.completionDetail = $root.google.cloud.retail.v2beta.CompletionDetail.fromObject(object.completionDetail); + message.completionDetail = $root.google.cloud.retail.v2beta.CompletionDetail.fromObject(object.completionDetail, long + 1); } if (object.attributes) { if (typeof object.attributes !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEvent.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEvent.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2beta.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2beta.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } if (object.cartId != null) @@ -156098,7 +162791,7 @@ if (object.purchaseTransaction != null) { if (typeof object.purchaseTransaction !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEvent.purchaseTransaction: object expected"); - message.purchaseTransaction = $root.google.cloud.retail.v2beta.PurchaseTransaction.fromObject(object.purchaseTransaction); + message.purchaseTransaction = $root.google.cloud.retail.v2beta.PurchaseTransaction.fromObject(object.purchaseTransaction, long + 1); } if (object.searchQuery != null) message.searchQuery = String(object.searchQuery); @@ -156118,7 +162811,7 @@ if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2beta.UserEvent.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.fromObject(object.userInfo, long + 1); } if (object.uri != null) message.uri = String(object.uri); @@ -156191,8 +162884,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2beta.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } if (message.cartId != null && message.hasOwnProperty("cartId")) object.cartId = message.cartId; @@ -156278,7 +162974,7 @@ function ProductDetail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -156353,9 +163049,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductDetail.decode = function decode(reader, length, error) { + ProductDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ProductDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -156363,15 +163063,15 @@ break; switch (tag >>> 3) { case 1: { - message.product = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.quantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32()); + message.quantity = $root.google.protobuf.Int32Value.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -156402,16 +163102,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductDetail.verify = function verify(message) { + ProductDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2beta.Product.verify(message.product); + var error = $root.google.cloud.retail.v2beta.Product.verify(message.product, long + 1); if (error) return "product." + error; } if (message.quantity != null && message.hasOwnProperty("quantity")) { - var error = $root.google.protobuf.Int32Value.verify(message.quantity); + var error = $root.google.protobuf.Int32Value.verify(message.quantity, long + 1); if (error) return "quantity." + error; } @@ -156426,19 +163130,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ProductDetail} ProductDetail */ - ProductDetail.fromObject = function fromObject(object) { + ProductDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ProductDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ProductDetail(); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2beta.ProductDetail.product: object expected"); - message.product = $root.google.cloud.retail.v2beta.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2beta.Product.fromObject(object.product, long + 1); } if (object.quantity != null) { if (typeof object.quantity !== "object") throw TypeError(".google.cloud.retail.v2beta.ProductDetail.quantity: object expected"); - message.quantity = $root.google.protobuf.Int32Value.fromObject(object.quantity); + message.quantity = $root.google.protobuf.Int32Value.fromObject(object.quantity, long + 1); } return message; }; @@ -156518,7 +163226,7 @@ function CompletionDetail(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -156603,9 +163311,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionDetail.decode = function decode(reader, length, error) { + CompletionDetail.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CompletionDetail(); while (reader.pos < end) { var tag = reader.uint32(); @@ -156625,7 +163337,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -156656,9 +163368,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionDetail.verify = function verify(message) { + CompletionDetail.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionAttributionToken != null && message.hasOwnProperty("completionAttributionToken")) if (!$util.isString(message.completionAttributionToken)) return "completionAttributionToken: string expected"; @@ -156679,9 +163395,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CompletionDetail} CompletionDetail */ - CompletionDetail.fromObject = function fromObject(object) { + CompletionDetail.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CompletionDetail) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CompletionDetail(); if (object.completionAttributionToken != null) message.completionAttributionToken = String(object.completionAttributionToken); @@ -156772,7 +163492,7 @@ function PurchaseTransaction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -156877,9 +163597,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurchaseTransaction.decode = function decode(reader, length, error) { + PurchaseTransaction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PurchaseTransaction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -156907,7 +163631,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -156938,9 +163662,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurchaseTransaction.verify = function verify(message) { + PurchaseTransaction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -156967,9 +163695,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PurchaseTransaction} PurchaseTransaction */ - PurchaseTransaction.fromObject = function fromObject(object) { + PurchaseTransaction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PurchaseTransaction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PurchaseTransaction(); if (object.id != null) message.id = String(object.id); @@ -157499,7 +164231,7 @@ function ListCatalogsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -157584,9 +164316,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListCatalogsRequest.decode = function decode(reader, length, error) { + ListCatalogsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListCatalogsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -157606,7 +164342,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -157637,9 +164373,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListCatalogsRequest.verify = function verify(message) { + ListCatalogsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -157660,9 +164400,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListCatalogsRequest} ListCatalogsRequest */ - ListCatalogsRequest.fromObject = function fromObject(object) { + ListCatalogsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListCatalogsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListCatalogsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -157751,7 +164495,7 @@ this.catalogs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -157827,9 +164571,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListCatalogsResponse.decode = function decode(reader, length, error) { + ListCatalogsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListCatalogsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -157839,7 +164587,7 @@ case 1: { if (!(message.catalogs && message.catalogs.length)) message.catalogs = []; - message.catalogs.push($root.google.cloud.retail.v2beta.Catalog.decode(reader, reader.uint32())); + message.catalogs.push($root.google.cloud.retail.v2beta.Catalog.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -157847,7 +164595,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -157878,14 +164626,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListCatalogsResponse.verify = function verify(message) { + ListCatalogsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalogs != null && message.hasOwnProperty("catalogs")) { if (!Array.isArray(message.catalogs)) return "catalogs: array expected"; for (var i = 0; i < message.catalogs.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Catalog.verify(message.catalogs[i]); + var error = $root.google.cloud.retail.v2beta.Catalog.verify(message.catalogs[i], long + 1); if (error) return "catalogs." + error; } @@ -157904,9 +164656,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListCatalogsResponse} ListCatalogsResponse */ - ListCatalogsResponse.fromObject = function fromObject(object) { + ListCatalogsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListCatalogsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListCatalogsResponse(); if (object.catalogs) { if (!Array.isArray(object.catalogs)) @@ -157915,7 +164671,7 @@ for (var i = 0; i < object.catalogs.length; ++i) { if (typeof object.catalogs[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ListCatalogsResponse.catalogs: object expected"); - message.catalogs[i] = $root.google.cloud.retail.v2beta.Catalog.fromObject(object.catalogs[i]); + message.catalogs[i] = $root.google.cloud.retail.v2beta.Catalog.fromObject(object.catalogs[i], long + 1); } } if (object.nextPageToken != null) @@ -158000,7 +164756,7 @@ function UpdateCatalogRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -158075,9 +164831,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateCatalogRequest.decode = function decode(reader, length, error) { + UpdateCatalogRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateCatalogRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -158085,15 +164845,15 @@ break; switch (tag >>> 3) { case 1: { - message.catalog = $root.google.cloud.retail.v2beta.Catalog.decode(reader, reader.uint32()); + message.catalog = $root.google.cloud.retail.v2beta.Catalog.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -158124,16 +164884,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateCatalogRequest.verify = function verify(message) { + UpdateCatalogRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) { - var error = $root.google.cloud.retail.v2beta.Catalog.verify(message.catalog); + var error = $root.google.cloud.retail.v2beta.Catalog.verify(message.catalog, long + 1); if (error) return "catalog." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -158148,19 +164912,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateCatalogRequest} UpdateCatalogRequest */ - UpdateCatalogRequest.fromObject = function fromObject(object) { + UpdateCatalogRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateCatalogRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateCatalogRequest(); if (object.catalog != null) { if (typeof object.catalog !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateCatalogRequest.catalog: object expected"); - message.catalog = $root.google.cloud.retail.v2beta.Catalog.fromObject(object.catalog); + message.catalog = $root.google.cloud.retail.v2beta.Catalog.fromObject(object.catalog, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateCatalogRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -158241,7 +165009,7 @@ function SetDefaultBranchRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -158336,9 +165104,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetDefaultBranchRequest.decode = function decode(reader, length, error) { + SetDefaultBranchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SetDefaultBranchRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -158362,7 +165134,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -158393,9 +165165,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetDefaultBranchRequest.verify = function verify(message) { + SetDefaultBranchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -158419,9 +165195,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SetDefaultBranchRequest} SetDefaultBranchRequest */ - SetDefaultBranchRequest.fromObject = function fromObject(object) { + SetDefaultBranchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SetDefaultBranchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SetDefaultBranchRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -158513,7 +165293,7 @@ function GetDefaultBranchRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -158578,9 +165358,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetDefaultBranchRequest.decode = function decode(reader, length, error) { + GetDefaultBranchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetDefaultBranchRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -158592,7 +165376,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -158623,9 +165407,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetDefaultBranchRequest.verify = function verify(message) { + GetDefaultBranchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -158640,9 +165428,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetDefaultBranchRequest} GetDefaultBranchRequest */ - GetDefaultBranchRequest.fromObject = function fromObject(object) { + GetDefaultBranchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetDefaultBranchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetDefaultBranchRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -158720,7 +165512,7 @@ function GetDefaultBranchResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -158805,9 +165597,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetDefaultBranchResponse.decode = function decode(reader, length, error) { + GetDefaultBranchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetDefaultBranchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -158819,7 +165615,7 @@ break; } case 2: { - message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -158827,7 +165623,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -158858,14 +165654,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetDefaultBranchResponse.verify = function verify(message) { + GetDefaultBranchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.branch != null && message.hasOwnProperty("branch")) if (!$util.isString(message.branch)) return "branch: string expected"; if (message.setTime != null && message.hasOwnProperty("setTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.setTime); + var error = $root.google.protobuf.Timestamp.verify(message.setTime, long + 1); if (error) return "setTime." + error; } @@ -158883,16 +165683,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetDefaultBranchResponse} GetDefaultBranchResponse */ - GetDefaultBranchResponse.fromObject = function fromObject(object) { + GetDefaultBranchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetDefaultBranchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetDefaultBranchResponse(); if (object.branch != null) message.branch = String(object.branch); if (object.setTime != null) { if (typeof object.setTime !== "object") throw TypeError(".google.cloud.retail.v2beta.GetDefaultBranchResponse.setTime: object expected"); - message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime); + message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime, long + 1); } if (object.note != null) message.note = String(object.note); @@ -158975,7 +165779,7 @@ function GetCompletionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -159040,9 +165844,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetCompletionConfigRequest.decode = function decode(reader, length, error) { + GetCompletionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetCompletionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -159054,7 +165862,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -159085,9 +165893,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetCompletionConfigRequest.verify = function verify(message) { + GetCompletionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -159102,9 +165914,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetCompletionConfigRequest} GetCompletionConfigRequest */ - GetCompletionConfigRequest.fromObject = function fromObject(object) { + GetCompletionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetCompletionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetCompletionConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -159181,7 +165997,7 @@ function UpdateCompletionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -159256,9 +166072,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateCompletionConfigRequest.decode = function decode(reader, length, error) { + UpdateCompletionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateCompletionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -159266,15 +166086,15 @@ break; switch (tag >>> 3) { case 1: { - message.completionConfig = $root.google.cloud.retail.v2beta.CompletionConfig.decode(reader, reader.uint32()); + message.completionConfig = $root.google.cloud.retail.v2beta.CompletionConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -159305,16 +166125,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateCompletionConfigRequest.verify = function verify(message) { + UpdateCompletionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionConfig != null && message.hasOwnProperty("completionConfig")) { - var error = $root.google.cloud.retail.v2beta.CompletionConfig.verify(message.completionConfig); + var error = $root.google.cloud.retail.v2beta.CompletionConfig.verify(message.completionConfig, long + 1); if (error) return "completionConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -159329,19 +166153,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateCompletionConfigRequest} UpdateCompletionConfigRequest */ - UpdateCompletionConfigRequest.fromObject = function fromObject(object) { + UpdateCompletionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateCompletionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateCompletionConfigRequest(); if (object.completionConfig != null) { if (typeof object.completionConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateCompletionConfigRequest.completionConfig: object expected"); - message.completionConfig = $root.google.cloud.retail.v2beta.CompletionConfig.fromObject(object.completionConfig); + message.completionConfig = $root.google.cloud.retail.v2beta.CompletionConfig.fromObject(object.completionConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateCompletionConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -159419,7 +166247,7 @@ function GetAttributesConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -159484,9 +166312,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetAttributesConfigRequest.decode = function decode(reader, length, error) { + GetAttributesConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetAttributesConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -159498,7 +166330,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -159529,9 +166361,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetAttributesConfigRequest.verify = function verify(message) { + GetAttributesConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -159546,9 +166382,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetAttributesConfigRequest} GetAttributesConfigRequest */ - GetAttributesConfigRequest.fromObject = function fromObject(object) { + GetAttributesConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetAttributesConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetAttributesConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -159625,7 +166465,7 @@ function UpdateAttributesConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -159700,9 +166540,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateAttributesConfigRequest.decode = function decode(reader, length, error) { + UpdateAttributesConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateAttributesConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -159710,15 +166554,15 @@ break; switch (tag >>> 3) { case 1: { - message.attributesConfig = $root.google.cloud.retail.v2beta.AttributesConfig.decode(reader, reader.uint32()); + message.attributesConfig = $root.google.cloud.retail.v2beta.AttributesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -159749,16 +166593,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateAttributesConfigRequest.verify = function verify(message) { + UpdateAttributesConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) { - var error = $root.google.cloud.retail.v2beta.AttributesConfig.verify(message.attributesConfig); + var error = $root.google.cloud.retail.v2beta.AttributesConfig.verify(message.attributesConfig, long + 1); if (error) return "attributesConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -159773,19 +166621,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateAttributesConfigRequest} UpdateAttributesConfigRequest */ - UpdateAttributesConfigRequest.fromObject = function fromObject(object) { + UpdateAttributesConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateAttributesConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateAttributesConfigRequest(); if (object.attributesConfig != null) { if (typeof object.attributesConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateAttributesConfigRequest.attributesConfig: object expected"); - message.attributesConfig = $root.google.cloud.retail.v2beta.AttributesConfig.fromObject(object.attributesConfig); + message.attributesConfig = $root.google.cloud.retail.v2beta.AttributesConfig.fromObject(object.attributesConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateAttributesConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -159864,7 +166716,7 @@ function AddCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -159939,9 +166791,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddCatalogAttributeRequest.decode = function decode(reader, length, error) { + AddCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AddCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -159953,11 +166809,11 @@ break; } case 2: { - message.catalogAttribute = $root.google.cloud.retail.v2beta.CatalogAttribute.decode(reader, reader.uint32()); + message.catalogAttribute = $root.google.cloud.retail.v2beta.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -159988,14 +166844,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddCatalogAttributeRequest.verify = function verify(message) { + AddCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; if (message.catalogAttribute != null && message.hasOwnProperty("catalogAttribute")) { - var error = $root.google.cloud.retail.v2beta.CatalogAttribute.verify(message.catalogAttribute); + var error = $root.google.cloud.retail.v2beta.CatalogAttribute.verify(message.catalogAttribute, long + 1); if (error) return "catalogAttribute." + error; } @@ -160010,16 +166870,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AddCatalogAttributeRequest} AddCatalogAttributeRequest */ - AddCatalogAttributeRequest.fromObject = function fromObject(object) { + AddCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AddCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.AddCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); if (object.catalogAttribute != null) { if (typeof object.catalogAttribute !== "object") throw TypeError(".google.cloud.retail.v2beta.AddCatalogAttributeRequest.catalogAttribute: object expected"); - message.catalogAttribute = $root.google.cloud.retail.v2beta.CatalogAttribute.fromObject(object.catalogAttribute); + message.catalogAttribute = $root.google.cloud.retail.v2beta.CatalogAttribute.fromObject(object.catalogAttribute, long + 1); } return message; }; @@ -160098,7 +166962,7 @@ function RemoveCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -160173,9 +167037,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveCatalogAttributeRequest.decode = function decode(reader, length, error) { + RemoveCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RemoveCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -160191,7 +167059,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -160222,9 +167090,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveCatalogAttributeRequest.verify = function verify(message) { + RemoveCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; @@ -160242,9 +167114,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RemoveCatalogAttributeRequest} RemoveCatalogAttributeRequest */ - RemoveCatalogAttributeRequest.fromObject = function fromObject(object) { + RemoveCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RemoveCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.RemoveCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); @@ -160328,7 +167204,7 @@ this.attributeKeys = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -160404,9 +167280,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchRemoveCatalogAttributesRequest.decode = function decode(reader, length, error) { + BatchRemoveCatalogAttributesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -160424,7 +167304,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -160455,9 +167335,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchRemoveCatalogAttributesRequest.verify = function verify(message) { + BatchRemoveCatalogAttributesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; @@ -160479,9 +167363,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.BatchRemoveCatalogAttributesRequest} BatchRemoveCatalogAttributesRequest */ - BatchRemoveCatalogAttributesRequest.fromObject = function fromObject(object) { + BatchRemoveCatalogAttributesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); @@ -160574,7 +167462,7 @@ this.resetCatalogAttributes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -160651,9 +167539,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchRemoveCatalogAttributesResponse.decode = function decode(reader, length, error) { + BatchRemoveCatalogAttributesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -160673,7 +167565,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -160704,9 +167596,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchRemoveCatalogAttributesResponse.verify = function verify(message) { + BatchRemoveCatalogAttributesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deletedCatalogAttributes != null && message.hasOwnProperty("deletedCatalogAttributes")) { if (!Array.isArray(message.deletedCatalogAttributes)) return "deletedCatalogAttributes: array expected"; @@ -160732,9 +167628,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.BatchRemoveCatalogAttributesResponse} BatchRemoveCatalogAttributesResponse */ - BatchRemoveCatalogAttributesResponse.fromObject = function fromObject(object) { + BatchRemoveCatalogAttributesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.BatchRemoveCatalogAttributesResponse(); if (object.deletedCatalogAttributes) { if (!Array.isArray(object.deletedCatalogAttributes)) @@ -160834,7 +167734,7 @@ function ReplaceCatalogAttributeRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -160919,9 +167819,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReplaceCatalogAttributeRequest.decode = function decode(reader, length, error) { + ReplaceCatalogAttributeRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -160933,15 +167837,15 @@ break; } case 2: { - message.catalogAttribute = $root.google.cloud.retail.v2beta.CatalogAttribute.decode(reader, reader.uint32()); + message.catalogAttribute = $root.google.cloud.retail.v2beta.CatalogAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -160972,19 +167876,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReplaceCatalogAttributeRequest.verify = function verify(message) { + ReplaceCatalogAttributeRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.attributesConfig != null && message.hasOwnProperty("attributesConfig")) if (!$util.isString(message.attributesConfig)) return "attributesConfig: string expected"; if (message.catalogAttribute != null && message.hasOwnProperty("catalogAttribute")) { - var error = $root.google.cloud.retail.v2beta.CatalogAttribute.verify(message.catalogAttribute); + var error = $root.google.cloud.retail.v2beta.CatalogAttribute.verify(message.catalogAttribute, long + 1); if (error) return "catalogAttribute." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -160999,21 +167907,25 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest} ReplaceCatalogAttributeRequest */ - ReplaceCatalogAttributeRequest.fromObject = function fromObject(object) { + ReplaceCatalogAttributeRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest(); if (object.attributesConfig != null) message.attributesConfig = String(object.attributesConfig); if (object.catalogAttribute != null) { if (typeof object.catalogAttribute !== "object") throw TypeError(".google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest.catalogAttribute: object expected"); - message.catalogAttribute = $root.google.cloud.retail.v2beta.CatalogAttribute.fromObject(object.catalogAttribute); + message.catalogAttribute = $root.google.cloud.retail.v2beta.CatalogAttribute.fromObject(object.catalogAttribute, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.ReplaceCatalogAttributeRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -161204,7 +168116,7 @@ this.languageCodes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -161350,9 +168262,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompleteQueryRequest.decode = function decode(reader, length, error) { + CompleteQueryRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CompleteQueryRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -161398,7 +168314,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -161429,9 +168345,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompleteQueryRequest.verify = function verify(message) { + CompleteQueryRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -161474,9 +168394,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CompleteQueryRequest} CompleteQueryRequest */ - CompleteQueryRequest.fromObject = function fromObject(object) { + CompleteQueryRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CompleteQueryRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CompleteQueryRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -161608,7 +168532,7 @@ this.attributeResults = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -161708,9 +168632,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompleteQueryResponse.decode = function decode(reader, length, error) { + CompleteQueryResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CompleteQueryResponse(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -161720,7 +168648,7 @@ case 1: { if (!(message.completionResults && message.completionResults.length)) message.completionResults = []; - message.completionResults.push($root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult.decode(reader, reader.uint32())); + message.completionResults.push($root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -161730,7 +168658,7 @@ case 3: { if (!(message.recentSearchResults && message.recentSearchResults.length)) message.recentSearchResults = []; - message.recentSearchResults.push($root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult.decode(reader, reader.uint32())); + message.recentSearchResults.push($root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -161746,18 +168674,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributeResults, key); message.attributeResults[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -161788,14 +168718,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompleteQueryResponse.verify = function verify(message) { + CompleteQueryResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.completionResults != null && message.hasOwnProperty("completionResults")) { if (!Array.isArray(message.completionResults)) return "completionResults: array expected"; for (var i = 0; i < message.completionResults.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult.verify(message.completionResults[i]); + var error = $root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult.verify(message.completionResults[i], long + 1); if (error) return "completionResults." + error; } @@ -161807,7 +168741,7 @@ if (!Array.isArray(message.recentSearchResults)) return "recentSearchResults: array expected"; for (var i = 0; i < message.recentSearchResults.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult.verify(message.recentSearchResults[i]); + var error = $root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult.verify(message.recentSearchResults[i], long + 1); if (error) return "recentSearchResults." + error; } @@ -161817,7 +168751,7 @@ return "attributeResults: object expected"; var key = Object.keys(message.attributeResults); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult.verify(message.attributeResults[key[i]]); + var error = $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult.verify(message.attributeResults[key[i]], long + 1); if (error) return "attributeResults." + error; } @@ -161833,9 +168767,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CompleteQueryResponse} CompleteQueryResponse */ - CompleteQueryResponse.fromObject = function fromObject(object) { + CompleteQueryResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CompleteQueryResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CompleteQueryResponse(); if (object.completionResults) { if (!Array.isArray(object.completionResults)) @@ -161844,7 +168782,7 @@ for (var i = 0; i < object.completionResults.length; ++i) { if (typeof object.completionResults[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.CompleteQueryResponse.completionResults: object expected"); - message.completionResults[i] = $root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult.fromObject(object.completionResults[i]); + message.completionResults[i] = $root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult.fromObject(object.completionResults[i], long + 1); } } if (object.attributionToken != null) @@ -161856,7 +168794,7 @@ for (var i = 0; i < object.recentSearchResults.length; ++i) { if (typeof object.recentSearchResults[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.CompleteQueryResponse.recentSearchResults: object expected"); - message.recentSearchResults[i] = $root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult.fromObject(object.recentSearchResults[i]); + message.recentSearchResults[i] = $root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult.fromObject(object.recentSearchResults[i], long + 1); } } if (object.attributeResults) { @@ -161864,9 +168802,11 @@ throw TypeError(".google.cloud.retail.v2beta.CompleteQueryResponse.attributeResults: object expected"); message.attributeResults = {}; for (var keys = Object.keys(object.attributeResults), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributeResults, keys[i]); if (typeof object.attributeResults[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.CompleteQueryResponse.attributeResults: object expected"); - message.attributeResults[keys[i]] = $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult.fromObject(object.attributeResults[keys[i]]); + message.attributeResults[keys[i]] = $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult.fromObject(object.attributeResults[keys[i]], long + 1); } } return message; @@ -161908,8 +168848,11 @@ var keys2; if (message.attributeResults && (keys2 = Object.keys(message.attributeResults)).length) { object.attributeResults = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributeResults, keys2[j]); object.attributeResults[keys2[j]] = $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult.toObject(message.attributeResults[keys2[j]], options); + } } return object; }; @@ -161962,7 +168905,7 @@ this.attributes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -162040,9 +168983,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompletionResult.decode = function decode(reader, length, error) { + CompletionResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -162066,18 +169013,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2beta.CustomAttribute.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.CustomAttribute.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.attributes, key); message.attributes[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -162108,9 +169057,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompletionResult.verify = function verify(message) { + CompletionResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.suggestion != null && message.hasOwnProperty("suggestion")) if (!$util.isString(message.suggestion)) return "suggestion: string expected"; @@ -162119,7 +169072,7 @@ return "attributes: object expected"; var key = Object.keys(message.attributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2beta.CustomAttribute.verify(message.attributes[key[i]]); + var error = $root.google.cloud.retail.v2beta.CustomAttribute.verify(message.attributes[key[i]], long + 1); if (error) return "attributes." + error; } @@ -162135,9 +169088,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult} CompletionResult */ - CompletionResult.fromObject = function fromObject(object) { + CompletionResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult(); if (object.suggestion != null) message.suggestion = String(object.suggestion); @@ -162146,9 +169103,11 @@ throw TypeError(".google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult.attributes: object expected"); message.attributes = {}; for (var keys = Object.keys(object.attributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.attributes, keys[i]); if (typeof object.attributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.CompleteQueryResponse.CompletionResult.attributes: object expected"); - message.attributes[keys[i]] = $root.google.cloud.retail.v2beta.CustomAttribute.fromObject(object.attributes[keys[i]]); + message.attributes[keys[i]] = $root.google.cloud.retail.v2beta.CustomAttribute.fromObject(object.attributes[keys[i]], long + 1); } } return message; @@ -162176,8 +169135,11 @@ var keys2; if (message.attributes && (keys2 = Object.keys(message.attributes)).length) { object.attributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.attributes, keys2[j]); object.attributes[keys2[j]] = $root.google.cloud.retail.v2beta.CustomAttribute.toObject(message.attributes[keys2[j]], options); + } } return object; }; @@ -162231,7 +169193,7 @@ function RecentSearchResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -162296,9 +169258,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RecentSearchResult.decode = function decode(reader, length, error) { + RecentSearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -162310,7 +169276,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -162341,9 +169307,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RecentSearchResult.verify = function verify(message) { + RecentSearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.recentSearch != null && message.hasOwnProperty("recentSearch")) if (!$util.isString(message.recentSearch)) return "recentSearch: string expected"; @@ -162358,9 +169328,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult} RecentSearchResult */ - RecentSearchResult.fromObject = function fromObject(object) { + RecentSearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CompleteQueryResponse.RecentSearchResult(); if (object.recentSearch != null) message.recentSearch = String(object.recentSearch); @@ -162437,7 +169411,7 @@ this.suggestions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -162503,9 +169477,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AttributeResult.decode = function decode(reader, length, error) { + AttributeResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -162519,7 +169497,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -162550,9 +169528,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AttributeResult.verify = function verify(message) { + AttributeResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.suggestions != null && message.hasOwnProperty("suggestions")) { if (!Array.isArray(message.suggestions)) return "suggestions: array expected"; @@ -162571,9 +169553,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult} AttributeResult */ - AttributeResult.fromObject = function fromObject(object) { + AttributeResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CompleteQueryResponse.AttributeResult(); if (object.suggestions) { if (!Array.isArray(object.suggestions)) @@ -162669,7 +169655,7 @@ this.searchSolutionUseCase = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -162817,9 +169803,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Control.decode = function decode(reader, length, error) { + Control.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Control(); while (reader.pos < end) { var tag = reader.uint32(); @@ -162827,11 +169817,11 @@ break; switch (tag >>> 3) { case 3: { - message.facetSpec = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.decode(reader, reader.uint32()); + message.facetSpec = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.rule = $root.google.cloud.retail.v2beta.Rule.decode(reader, reader.uint32()); + message.rule = $root.google.cloud.retail.v2beta.Rule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -162871,7 +169861,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -162902,14 +169892,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Control.verify = function verify(message) { + Control.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.facetSpec != null && message.hasOwnProperty("facetSpec")) { properties.control = 1; { - var error = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.verify(message.facetSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.verify(message.facetSpec, long + 1); if (error) return "facetSpec." + error; } @@ -162919,7 +169913,7 @@ return "control: multiple values"; properties.control = 1; { - var error = $root.google.cloud.retail.v2beta.Rule.verify(message.rule); + var error = $root.google.cloud.retail.v2beta.Rule.verify(message.rule, long + 1); if (error) return "rule." + error; } @@ -162974,19 +169968,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Control} Control */ - Control.fromObject = function fromObject(object) { + Control.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Control) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Control(); if (object.facetSpec != null) { if (typeof object.facetSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.Control.facetSpec: object expected"); - message.facetSpec = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.fromObject(object.facetSpec); + message.facetSpec = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.fromObject(object.facetSpec, long + 1); } if (object.rule != null) { if (typeof object.rule !== "object") throw TypeError(".google.cloud.retail.v2beta.Control.rule: object expected"); - message.rule = $root.google.cloud.retail.v2beta.Rule.fromObject(object.rule); + message.rule = $root.google.cloud.retail.v2beta.Rule.fromObject(object.rule, long + 1); } if (object.name != null) message.name = String(object.name); @@ -163224,7 +170222,7 @@ function ProductAttributeValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -163299,9 +170297,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductAttributeValue.decode = function decode(reader, length, error) { + ProductAttributeValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ProductAttributeValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -163317,7 +170319,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -163348,9 +170350,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductAttributeValue.verify = function verify(message) { + ProductAttributeValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -163368,9 +170374,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ProductAttributeValue} ProductAttributeValue */ - ProductAttributeValue.fromObject = function fromObject(object) { + ProductAttributeValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ProductAttributeValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ProductAttributeValue(); if (object.name != null) message.name = String(object.name); @@ -163453,7 +170463,7 @@ function ProductAttributeInterval(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -163528,9 +170538,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ProductAttributeInterval.decode = function decode(reader, length, error) { + ProductAttributeInterval.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ProductAttributeInterval(); while (reader.pos < end) { var tag = reader.uint32(); @@ -163542,11 +170556,11 @@ break; } case 2: { - message.interval = $root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32()); + message.interval = $root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -163577,14 +170591,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ProductAttributeInterval.verify = function verify(message) { + ProductAttributeInterval.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.interval != null && message.hasOwnProperty("interval")) { - var error = $root.google.cloud.retail.v2beta.Interval.verify(message.interval); + var error = $root.google.cloud.retail.v2beta.Interval.verify(message.interval, long + 1); if (error) return "interval." + error; } @@ -163599,16 +170617,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ProductAttributeInterval} ProductAttributeInterval */ - ProductAttributeInterval.fromObject = function fromObject(object) { + ProductAttributeInterval.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ProductAttributeInterval) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ProductAttributeInterval(); if (object.name != null) message.name = String(object.name); if (object.interval != null) { if (typeof object.interval !== "object") throw TypeError(".google.cloud.retail.v2beta.ProductAttributeInterval.interval: object expected"); - message.interval = $root.google.cloud.retail.v2beta.Interval.fromObject(object.interval); + message.interval = $root.google.cloud.retail.v2beta.Interval.fromObject(object.interval, long + 1); } return message; }; @@ -163688,7 +170710,7 @@ function Tile(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -163787,9 +170809,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Tile.decode = function decode(reader, length, error) { + Tile.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Tile(); while (reader.pos < end) { var tag = reader.uint32(); @@ -163797,11 +170823,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.productAttributeInterval = $root.google.cloud.retail.v2beta.ProductAttributeInterval.decode(reader, reader.uint32()); + message.productAttributeInterval = $root.google.cloud.retail.v2beta.ProductAttributeInterval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -163809,7 +170835,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -163840,14 +170866,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Tile.verify = function verify(message) { + Tile.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { properties.productAttribute = 1; { - var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -163857,7 +170887,7 @@ return "productAttribute: multiple values"; properties.productAttribute = 1; { - var error = $root.google.cloud.retail.v2beta.ProductAttributeInterval.verify(message.productAttributeInterval); + var error = $root.google.cloud.retail.v2beta.ProductAttributeInterval.verify(message.productAttributeInterval, long + 1); if (error) return "productAttributeInterval." + error; } @@ -163876,19 +170906,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Tile} Tile */ - Tile.fromObject = function fromObject(object) { + Tile.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Tile) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Tile(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2beta.Tile.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } if (object.productAttributeInterval != null) { if (typeof object.productAttributeInterval !== "object") throw TypeError(".google.cloud.retail.v2beta.Tile.productAttributeInterval: object expected"); - message.productAttributeInterval = $root.google.cloud.retail.v2beta.ProductAttributeInterval.fromObject(object.productAttributeInterval); + message.productAttributeInterval = $root.google.cloud.retail.v2beta.ProductAttributeInterval.fromObject(object.productAttributeInterval, long + 1); } if (object.representativeProductId != null) message.representativeProductId = String(object.representativeProductId); @@ -164006,7 +171040,7 @@ this.userAttributes = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -164357,9 +171391,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchRequest.decode = function decode(reader, length, error) { + SearchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -164383,7 +171421,7 @@ break; } case 5: { - message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -164413,19 +171451,19 @@ case 12: { if (!(message.facetSpecs && message.facetSpecs.length)) message.facetSpecs = []; - message.facetSpecs.push($root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.decode(reader, reader.uint32())); + message.facetSpecs.push($root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.dynamicFacetSpec = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32()); + message.dynamicFacetSpec = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.boostSpec = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.decode(reader, reader.uint32()); + message.boostSpec = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.queryExpansionSpec = $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec.decode(reader, reader.uint32()); + message.queryExpansionSpec = $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -164445,7 +171483,7 @@ break; } case 32: { - message.personalizationSpec = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32()); + message.personalizationSpec = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 34: { @@ -164464,15 +171502,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } case 35: { - message.spellCorrectionSpec = $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec.decode(reader, reader.uint32()); + message.spellCorrectionSpec = $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 38: { @@ -164480,11 +171520,11 @@ break; } case 40: { - message.conversationalSearchSpec = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.decode(reader, reader.uint32()); + message.conversationalSearchSpec = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 41: { - message.tileNavigationSpec = $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec.decode(reader, reader.uint32()); + message.tileNavigationSpec = $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 43: { @@ -164512,18 +171552,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2beta.StringList.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.StringList.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.userAttributes, key); message.userAttributes[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -164554,9 +171596,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchRequest.verify = function verify(message) { + SearchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) @@ -164571,7 +171617,7 @@ if (!$util.isString(message.visitorId)) return "visitorId: string expected"; if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2beta.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2beta.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } @@ -164597,23 +171643,23 @@ if (!Array.isArray(message.facetSpecs)) return "facetSpecs: array expected"; for (var i = 0; i < message.facetSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.verify(message.facetSpecs[i]); + var error = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.verify(message.facetSpecs[i], long + 1); if (error) return "facetSpecs." + error; } } if (message.dynamicFacetSpec != null && message.hasOwnProperty("dynamicFacetSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec, long + 1); if (error) return "dynamicFacetSpec." + error; } if (message.boostSpec != null && message.hasOwnProperty("boostSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.verify(message.boostSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.verify(message.boostSpec, long + 1); if (error) return "boostSpec." + error; } if (message.queryExpansionSpec != null && message.hasOwnProperty("queryExpansionSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec.verify(message.queryExpansionSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec.verify(message.queryExpansionSpec, long + 1); if (error) return "queryExpansionSpec." + error; } @@ -164641,7 +171687,7 @@ break; } if (message.personalizationSpec != null && message.hasOwnProperty("personalizationSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec, long + 1); if (error) return "personalizationSpec." + error; } @@ -164656,7 +171702,7 @@ if (message.spellCorrectionSpec != null && message.hasOwnProperty("spellCorrectionSpec")) { properties._spellCorrectionSpec = 1; { - var error = $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec.verify(message.spellCorrectionSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec.verify(message.spellCorrectionSpec, long + 1); if (error) return "spellCorrectionSpec." + error; } @@ -164665,12 +171711,12 @@ if (!$util.isString(message.entity)) return "entity: string expected"; if (message.conversationalSearchSpec != null && message.hasOwnProperty("conversationalSearchSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.verify(message.conversationalSearchSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.verify(message.conversationalSearchSpec, long + 1); if (error) return "conversationalSearchSpec." + error; } if (message.tileNavigationSpec != null && message.hasOwnProperty("tileNavigationSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec.verify(message.tileNavigationSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec.verify(message.tileNavigationSpec, long + 1); if (error) return "tileNavigationSpec." + error; } @@ -164688,7 +171734,7 @@ return "userAttributes: object expected"; var key = Object.keys(message.userAttributes); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2beta.StringList.verify(message.userAttributes[key[i]]); + var error = $root.google.cloud.retail.v2beta.StringList.verify(message.userAttributes[key[i]], long + 1); if (error) return "userAttributes." + error; } @@ -164704,9 +171750,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest} SearchRequest */ - SearchRequest.fromObject = function fromObject(object) { + SearchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest(); if (object.placement != null) message.placement = String(object.placement); @@ -164719,7 +171769,7 @@ if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.fromObject(object.userInfo, long + 1); } if (object.pageSize != null) message.pageSize = object.pageSize | 0; @@ -164740,23 +171790,23 @@ for (var i = 0; i < object.facetSpecs.length; ++i) { if (typeof object.facetSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.facetSpecs: object expected"); - message.facetSpecs[i] = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.fromObject(object.facetSpecs[i]); + message.facetSpecs[i] = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.fromObject(object.facetSpecs[i], long + 1); } } if (object.dynamicFacetSpec != null) { if (typeof object.dynamicFacetSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.dynamicFacetSpec: object expected"); - message.dynamicFacetSpec = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec); + message.dynamicFacetSpec = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec, long + 1); } if (object.boostSpec != null) { if (typeof object.boostSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.boostSpec: object expected"); - message.boostSpec = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.fromObject(object.boostSpec); + message.boostSpec = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.fromObject(object.boostSpec, long + 1); } if (object.queryExpansionSpec != null) { if (typeof object.queryExpansionSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.queryExpansionSpec: object expected"); - message.queryExpansionSpec = $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec.fromObject(object.queryExpansionSpec); + message.queryExpansionSpec = $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec.fromObject(object.queryExpansionSpec, long + 1); } if (object.variantRollupKeys) { if (!Array.isArray(object.variantRollupKeys)) @@ -164795,31 +171845,34 @@ if (object.personalizationSpec != null) { if (typeof object.personalizationSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.personalizationSpec: object expected"); - message.personalizationSpec = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec); + message.personalizationSpec = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec, long + 1); } if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.spellCorrectionSpec != null) { if (typeof object.spellCorrectionSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.spellCorrectionSpec: object expected"); - message.spellCorrectionSpec = $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec.fromObject(object.spellCorrectionSpec); + message.spellCorrectionSpec = $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec.fromObject(object.spellCorrectionSpec, long + 1); } if (object.entity != null) message.entity = String(object.entity); if (object.conversationalSearchSpec != null) { if (typeof object.conversationalSearchSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.conversationalSearchSpec: object expected"); - message.conversationalSearchSpec = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.fromObject(object.conversationalSearchSpec); + message.conversationalSearchSpec = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.fromObject(object.conversationalSearchSpec, long + 1); } if (object.tileNavigationSpec != null) { if (typeof object.tileNavigationSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.tileNavigationSpec: object expected"); - message.tileNavigationSpec = $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec.fromObject(object.tileNavigationSpec); + message.tileNavigationSpec = $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec.fromObject(object.tileNavigationSpec, long + 1); } if (object.languageCode != null) message.languageCode = String(object.languageCode); @@ -164832,9 +171885,11 @@ throw TypeError(".google.cloud.retail.v2beta.SearchRequest.userAttributes: object expected"); message.userAttributes = {}; for (var keys = Object.keys(object.userAttributes), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.userAttributes, keys[i]); if (typeof object.userAttributes[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.userAttributes: object expected"); - message.userAttributes[keys[i]] = $root.google.cloud.retail.v2beta.StringList.fromObject(object.userAttributes[keys[i]]); + message.userAttributes[keys[i]] = $root.google.cloud.retail.v2beta.StringList.fromObject(object.userAttributes[keys[i]], long + 1); } } return message; @@ -164936,8 +171991,11 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.spellCorrectionSpec != null && message.hasOwnProperty("spellCorrectionSpec")) { object.spellCorrectionSpec = $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec.toObject(message.spellCorrectionSpec, options); @@ -164958,8 +172016,11 @@ object.placeId = message.placeId; if (message.userAttributes && (keys2 = Object.keys(message.userAttributes)).length) { object.userAttributes = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.userAttributes, keys2[j]); object.userAttributes[keys2[j]] = $root.google.cloud.retail.v2beta.StringList.toObject(message.userAttributes[keys2[j]], options); + } } return object; }; @@ -165014,7 +172075,7 @@ this.excludedFilterKeys = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -165110,9 +172171,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetSpec.decode = function decode(reader, length, error) { + FacetSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -165120,7 +172185,7 @@ break; switch (tag >>> 3) { case 1: { - message.facetKey = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey.decode(reader, reader.uint32()); + message.facetKey = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -165138,7 +172203,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -165169,11 +172234,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetSpec.verify = function verify(message) { + FacetSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.facetKey != null && message.hasOwnProperty("facetKey")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey.verify(message.facetKey); + var error = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey.verify(message.facetKey, long + 1); if (error) return "facetKey." + error; } @@ -165201,14 +172270,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.FacetSpec} FacetSpec */ - FacetSpec.fromObject = function fromObject(object) { + FacetSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec(); if (object.facetKey != null) { if (typeof object.facetKey !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.FacetSpec.facetKey: object expected"); - message.facetKey = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey.fromObject(object.facetKey); + message.facetKey = $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey.fromObject(object.facetKey, long + 1); } if (object.limit != null) message.limit = object.limit | 0; @@ -165316,7 +172389,7 @@ this.contains = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -165465,9 +172538,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetKey.decode = function decode(reader, length, error) { + FacetKey.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey(); while (reader.pos < end) { var tag = reader.uint32(); @@ -165481,7 +172558,7 @@ case 2: { if (!(message.intervals && message.intervals.length)) message.intervals = []; - message.intervals.push($root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32())); + message.intervals.push($root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -165519,7 +172596,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -165550,9 +172627,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetKey.verify = function verify(message) { + FacetKey.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -165560,7 +172641,7 @@ if (!Array.isArray(message.intervals)) return "intervals: array expected"; for (var i = 0; i < message.intervals.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Interval.verify(message.intervals[i]); + var error = $root.google.cloud.retail.v2beta.Interval.verify(message.intervals[i], long + 1); if (error) return "intervals." + error; } @@ -165609,9 +172690,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey} FacetKey */ - FacetKey.fromObject = function fromObject(object) { + FacetKey.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey(); if (object.key != null) message.key = String(object.key); @@ -165622,7 +172707,7 @@ for (var i = 0; i < object.intervals.length; ++i) { if (typeof object.intervals[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.FacetSpec.FacetKey.intervals: object expected"); - message.intervals[i] = $root.google.cloud.retail.v2beta.Interval.fromObject(object.intervals[i]); + message.intervals[i] = $root.google.cloud.retail.v2beta.Interval.fromObject(object.intervals[i], long + 1); } } if (object.restrictedValues) { @@ -165768,7 +172853,7 @@ function DynamicFacetSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -165833,9 +172918,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DynamicFacetSpec.decode = function decode(reader, length, error) { + DynamicFacetSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -165847,7 +172936,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -165878,9 +172967,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DynamicFacetSpec.verify = function verify(message) { + DynamicFacetSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -165901,9 +172994,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec} DynamicFacetSpec */ - DynamicFacetSpec.fromObject = function fromObject(object) { + DynamicFacetSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec(); switch (object.mode) { default: @@ -166015,7 +173112,7 @@ this.conditionBoostSpecs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -166100,9 +173197,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BoostSpec.decode = function decode(reader, length, error) { + BoostSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -166112,7 +173213,7 @@ case 1: { if (!(message.conditionBoostSpecs && message.conditionBoostSpecs.length)) message.conditionBoostSpecs = []; - message.conditionBoostSpecs.push($root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32())); + message.conditionBoostSpecs.push($root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -166120,7 +173221,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -166151,15 +173252,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BoostSpec.verify = function verify(message) { + BoostSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.conditionBoostSpecs != null && message.hasOwnProperty("conditionBoostSpecs")) { if (!Array.isArray(message.conditionBoostSpecs)) return "conditionBoostSpecs: array expected"; for (var i = 0; i < message.conditionBoostSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.conditionBoostSpecs[i]); + var error = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.conditionBoostSpecs[i], long + 1); if (error) return "conditionBoostSpecs." + error; } @@ -166180,9 +173285,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.BoostSpec} BoostSpec */ - BoostSpec.fromObject = function fromObject(object) { + BoostSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec(); if (object.conditionBoostSpecs) { if (!Array.isArray(object.conditionBoostSpecs)) @@ -166191,7 +173300,7 @@ for (var i = 0; i < object.conditionBoostSpecs.length; ++i) { if (typeof object.conditionBoostSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.BoostSpec.conditionBoostSpecs: object expected"); - message.conditionBoostSpecs[i] = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.conditionBoostSpecs[i]); + message.conditionBoostSpecs[i] = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.conditionBoostSpecs[i], long + 1); } } if (object.skipBoostSpecValidation != null) @@ -166274,7 +173383,7 @@ function ConditionBoostSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -166349,9 +173458,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConditionBoostSpec.decode = function decode(reader, length, error) { + ConditionBoostSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -166367,7 +173480,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -166398,9 +173511,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConditionBoostSpec.verify = function verify(message) { + ConditionBoostSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.condition != null && message.hasOwnProperty("condition")) if (!$util.isString(message.condition)) return "condition: string expected"; @@ -166418,9 +173535,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec} ConditionBoostSpec */ - ConditionBoostSpec.fromObject = function fromObject(object) { + ConditionBoostSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec(); if (object.condition != null) message.condition = String(object.condition); @@ -166506,7 +173627,7 @@ function QueryExpansionSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -166581,9 +173702,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryExpansionSpec.decode = function decode(reader, length, error) { + QueryExpansionSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -166599,7 +173724,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -166630,9 +173755,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryExpansionSpec.verify = function verify(message) { + QueryExpansionSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.condition != null && message.hasOwnProperty("condition")) switch (message.condition) { default: @@ -166656,9 +173785,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec} QueryExpansionSpec */ - QueryExpansionSpec.fromObject = function fromObject(object) { + QueryExpansionSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.QueryExpansionSpec(); switch (object.condition) { default: @@ -166774,7 +173907,7 @@ function PersonalizationSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -166839,9 +173972,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PersonalizationSpec.decode = function decode(reader, length, error) { + PersonalizationSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -166853,7 +173990,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -166884,9 +174021,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PersonalizationSpec.verify = function verify(message) { + PersonalizationSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -166907,9 +174048,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec} PersonalizationSpec */ - PersonalizationSpec.fromObject = function fromObject(object) { + PersonalizationSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec(); switch (object.mode) { default: @@ -167019,7 +174164,7 @@ function SpellCorrectionSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -167084,9 +174229,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SpellCorrectionSpec.decode = function decode(reader, length, error) { + SpellCorrectionSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -167098,7 +174247,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -167129,9 +174278,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SpellCorrectionSpec.verify = function verify(message) { + SpellCorrectionSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mode != null && message.hasOwnProperty("mode")) switch (message.mode) { default: @@ -167152,9 +174305,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec} SpellCorrectionSpec */ - SpellCorrectionSpec.fromObject = function fromObject(object) { + SpellCorrectionSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.SpellCorrectionSpec(); switch (object.mode) { default: @@ -167266,7 +174423,7 @@ function ConversationalSearchSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -167351,9 +174508,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchSpec.decode = function decode(reader, length, error) { + ConversationalSearchSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -167369,11 +174530,11 @@ break; } case 3: { - message.userAnswer = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.decode(reader, reader.uint32()); + message.userAnswer = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -167404,9 +174565,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchSpec.verify = function verify(message) { + ConversationalSearchSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupConversationRequested != null && message.hasOwnProperty("followupConversationRequested")) if (typeof message.followupConversationRequested !== "boolean") return "followupConversationRequested: boolean expected"; @@ -167414,7 +174579,7 @@ if (!$util.isString(message.conversationId)) return "conversationId: string expected"; if (message.userAnswer != null && message.hasOwnProperty("userAnswer")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.verify(message.userAnswer); + var error = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.verify(message.userAnswer, long + 1); if (error) return "userAnswer." + error; } @@ -167429,9 +174594,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec} ConversationalSearchSpec */ - ConversationalSearchSpec.fromObject = function fromObject(object) { + ConversationalSearchSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec(); if (object.followupConversationRequested != null) message.followupConversationRequested = Boolean(object.followupConversationRequested); @@ -167440,7 +174609,7 @@ if (object.userAnswer != null) { if (typeof object.userAnswer !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.userAnswer: object expected"); - message.userAnswer = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.fromObject(object.userAnswer); + message.userAnswer = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.fromObject(object.userAnswer, long + 1); } return message; }; @@ -167519,7 +174688,7 @@ function UserAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -167608,9 +174777,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserAnswer.decode = function decode(reader, length, error) { + UserAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -167622,11 +174795,11 @@ break; } case 2: { - message.selectedAnswer = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.decode(reader, reader.uint32()); + message.selectedAnswer = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -167657,9 +174830,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserAnswer.verify = function verify(message) { + UserAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.textAnswer != null && message.hasOwnProperty("textAnswer")) { properties.type = 1; @@ -167671,7 +174848,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.verify(message.selectedAnswer); + var error = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.verify(message.selectedAnswer, long + 1); if (error) return "selectedAnswer." + error; } @@ -167687,16 +174864,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer} UserAnswer */ - UserAnswer.fromObject = function fromObject(object) { + UserAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer(); if (object.textAnswer != null) message.textAnswer = String(object.textAnswer); if (object.selectedAnswer != null) { if (typeof object.selectedAnswer !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.selectedAnswer: object expected"); - message.selectedAnswer = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer); + message.selectedAnswer = $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer, long + 1); } return message; }; @@ -167775,7 +174956,7 @@ this.productAttributeValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -167851,9 +175032,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectedAnswer.decode = function decode(reader, length, error) { + SelectedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -167863,15 +175048,15 @@ case 1: { if (!(message.productAttributeValues && message.productAttributeValues.length)) message.productAttributeValues = []; - message.productAttributeValues.push($root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32())); + message.productAttributeValues.push($root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -167902,20 +175087,24 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectedAnswer.verify = function verify(message) { + SelectedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValues != null && message.hasOwnProperty("productAttributeValues")) { if (!Array.isArray(message.productAttributeValues)) return "productAttributeValues: array expected"; for (var i = 0; i < message.productAttributeValues.length; ++i) { - var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValues[i]); + var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValues[i], long + 1); if (error) return "productAttributeValues." + error; } } if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -167930,9 +175119,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer} SelectedAnswer */ - SelectedAnswer.fromObject = function fromObject(object) { + SelectedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer(); if (object.productAttributeValues) { if (!Array.isArray(object.productAttributeValues)) @@ -167941,13 +175134,13 @@ for (var i = 0; i < object.productAttributeValues.length; ++i) { if (typeof object.productAttributeValues[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.productAttributeValues: object expected"); - message.productAttributeValues[i] = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValues[i]); + message.productAttributeValues[i] = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValues[i], long + 1); } } if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.ConversationalSearchSpec.UserAnswer.SelectedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -168036,7 +175229,7 @@ this.appliedTiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -168112,9 +175305,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TileNavigationSpec.decode = function decode(reader, length, error) { + TileNavigationSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -168128,11 +175325,11 @@ case 2: { if (!(message.appliedTiles && message.appliedTiles.length)) message.appliedTiles = []; - message.appliedTiles.push($root.google.cloud.retail.v2beta.Tile.decode(reader, reader.uint32())); + message.appliedTiles.push($root.google.cloud.retail.v2beta.Tile.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -168163,9 +175360,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TileNavigationSpec.verify = function verify(message) { + TileNavigationSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tileNavigationRequested != null && message.hasOwnProperty("tileNavigationRequested")) if (typeof message.tileNavigationRequested !== "boolean") return "tileNavigationRequested: boolean expected"; @@ -168173,7 +175374,7 @@ if (!Array.isArray(message.appliedTiles)) return "appliedTiles: array expected"; for (var i = 0; i < message.appliedTiles.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Tile.verify(message.appliedTiles[i]); + var error = $root.google.cloud.retail.v2beta.Tile.verify(message.appliedTiles[i], long + 1); if (error) return "appliedTiles." + error; } @@ -168189,9 +175390,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec} TileNavigationSpec */ - TileNavigationSpec.fromObject = function fromObject(object) { + TileNavigationSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec(); if (object.tileNavigationRequested != null) message.tileNavigationRequested = Boolean(object.tileNavigationRequested); @@ -168202,7 +175407,7 @@ for (var i = 0; i < object.appliedTiles.length; ++i) { if (typeof object.appliedTiles[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchRequest.TileNavigationSpec.appliedTiles: object expected"); - message.appliedTiles[i] = $root.google.cloud.retail.v2beta.Tile.fromObject(object.appliedTiles[i]); + message.appliedTiles[i] = $root.google.cloud.retail.v2beta.Tile.fromObject(object.appliedTiles[i], long + 1); } } return message; @@ -168321,7 +175526,7 @@ this.experimentInfo = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -168521,9 +175726,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchResponse.decode = function decode(reader, length, error) { + SearchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -168533,13 +175742,13 @@ case 1: { if (!(message.results && message.results.length)) message.results = []; - message.results.push($root.google.cloud.retail.v2beta.SearchResponse.SearchResult.decode(reader, reader.uint32())); + message.results.push($root.google.cloud.retail.v2beta.SearchResponse.SearchResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.facets && message.facets.length)) message.facets = []; - message.facets.push($root.google.cloud.retail.v2beta.SearchResponse.Facet.decode(reader, reader.uint32())); + message.facets.push($root.google.cloud.retail.v2beta.SearchResponse.Facet.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -168559,7 +175768,7 @@ break; } case 7: { - message.queryExpansionInfo = $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo.decode(reader, reader.uint32()); + message.queryExpansionInfo = $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -168573,31 +175782,31 @@ break; } case 22: { - message.pinControlMetadata = $root.google.cloud.retail.v2beta.PinControlMetadata.decode(reader, reader.uint32()); + message.pinControlMetadata = $root.google.cloud.retail.v2beta.PinControlMetadata.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { if (!(message.invalidConditionBoostSpecs && message.invalidConditionBoostSpecs.length)) message.invalidConditionBoostSpecs = []; - message.invalidConditionBoostSpecs.push($root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32())); + message.invalidConditionBoostSpecs.push($root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 17: { if (!(message.experimentInfo && message.experimentInfo.length)) message.experimentInfo = []; - message.experimentInfo.push($root.google.cloud.retail.v2beta.ExperimentInfo.decode(reader, reader.uint32())); + message.experimentInfo.push($root.google.cloud.retail.v2beta.ExperimentInfo.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 18: { - message.conversationalSearchResult = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.decode(reader, reader.uint32()); + message.conversationalSearchResult = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { - message.tileNavigationResult = $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult.decode(reader, reader.uint32()); + message.tileNavigationResult = $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -168628,14 +175837,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchResponse.verify = function verify(message) { + SearchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.results != null && message.hasOwnProperty("results")) { if (!Array.isArray(message.results)) return "results: array expected"; for (var i = 0; i < message.results.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.SearchResult.verify(message.results[i]); + var error = $root.google.cloud.retail.v2beta.SearchResponse.SearchResult.verify(message.results[i], long + 1); if (error) return "results." + error; } @@ -168644,7 +175857,7 @@ if (!Array.isArray(message.facets)) return "facets: array expected"; for (var i = 0; i < message.facets.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.Facet.verify(message.facets[i]); + var error = $root.google.cloud.retail.v2beta.SearchResponse.Facet.verify(message.facets[i], long + 1); if (error) return "facets." + error; } @@ -168662,7 +175875,7 @@ if (!$util.isString(message.nextPageToken)) return "nextPageToken: string expected"; if (message.queryExpansionInfo != null && message.hasOwnProperty("queryExpansionInfo")) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo.verify(message.queryExpansionInfo); + var error = $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo.verify(message.queryExpansionInfo, long + 1); if (error) return "queryExpansionInfo." + error; } @@ -168677,7 +175890,7 @@ return "appliedControls: string[] expected"; } if (message.pinControlMetadata != null && message.hasOwnProperty("pinControlMetadata")) { - var error = $root.google.cloud.retail.v2beta.PinControlMetadata.verify(message.pinControlMetadata); + var error = $root.google.cloud.retail.v2beta.PinControlMetadata.verify(message.pinControlMetadata, long + 1); if (error) return "pinControlMetadata." + error; } @@ -168685,7 +175898,7 @@ if (!Array.isArray(message.invalidConditionBoostSpecs)) return "invalidConditionBoostSpecs: array expected"; for (var i = 0; i < message.invalidConditionBoostSpecs.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.invalidConditionBoostSpecs[i]); + var error = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.verify(message.invalidConditionBoostSpecs[i], long + 1); if (error) return "invalidConditionBoostSpecs." + error; } @@ -168694,18 +175907,18 @@ if (!Array.isArray(message.experimentInfo)) return "experimentInfo: array expected"; for (var i = 0; i < message.experimentInfo.length; ++i) { - var error = $root.google.cloud.retail.v2beta.ExperimentInfo.verify(message.experimentInfo[i]); + var error = $root.google.cloud.retail.v2beta.ExperimentInfo.verify(message.experimentInfo[i], long + 1); if (error) return "experimentInfo." + error; } } if (message.conversationalSearchResult != null && message.hasOwnProperty("conversationalSearchResult")) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.verify(message.conversationalSearchResult); + var error = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.verify(message.conversationalSearchResult, long + 1); if (error) return "conversationalSearchResult." + error; } if (message.tileNavigationResult != null && message.hasOwnProperty("tileNavigationResult")) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult.verify(message.tileNavigationResult); + var error = $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult.verify(message.tileNavigationResult, long + 1); if (error) return "tileNavigationResult." + error; } @@ -168720,9 +175933,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse} SearchResponse */ - SearchResponse.fromObject = function fromObject(object) { + SearchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse(); if (object.results) { if (!Array.isArray(object.results)) @@ -168731,7 +175948,7 @@ for (var i = 0; i < object.results.length; ++i) { if (typeof object.results[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.results: object expected"); - message.results[i] = $root.google.cloud.retail.v2beta.SearchResponse.SearchResult.fromObject(object.results[i]); + message.results[i] = $root.google.cloud.retail.v2beta.SearchResponse.SearchResult.fromObject(object.results[i], long + 1); } } if (object.facets) { @@ -168741,7 +175958,7 @@ for (var i = 0; i < object.facets.length; ++i) { if (typeof object.facets[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.facets: object expected"); - message.facets[i] = $root.google.cloud.retail.v2beta.SearchResponse.Facet.fromObject(object.facets[i]); + message.facets[i] = $root.google.cloud.retail.v2beta.SearchResponse.Facet.fromObject(object.facets[i], long + 1); } } if (object.totalSize != null) @@ -168755,7 +175972,7 @@ if (object.queryExpansionInfo != null) { if (typeof object.queryExpansionInfo !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.queryExpansionInfo: object expected"); - message.queryExpansionInfo = $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo.fromObject(object.queryExpansionInfo); + message.queryExpansionInfo = $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo.fromObject(object.queryExpansionInfo, long + 1); } if (object.redirectUri != null) message.redirectUri = String(object.redirectUri); @@ -168769,7 +175986,7 @@ if (object.pinControlMetadata != null) { if (typeof object.pinControlMetadata !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.pinControlMetadata: object expected"); - message.pinControlMetadata = $root.google.cloud.retail.v2beta.PinControlMetadata.fromObject(object.pinControlMetadata); + message.pinControlMetadata = $root.google.cloud.retail.v2beta.PinControlMetadata.fromObject(object.pinControlMetadata, long + 1); } if (object.invalidConditionBoostSpecs) { if (!Array.isArray(object.invalidConditionBoostSpecs)) @@ -168778,7 +175995,7 @@ for (var i = 0; i < object.invalidConditionBoostSpecs.length; ++i) { if (typeof object.invalidConditionBoostSpecs[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.invalidConditionBoostSpecs: object expected"); - message.invalidConditionBoostSpecs[i] = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.invalidConditionBoostSpecs[i]); + message.invalidConditionBoostSpecs[i] = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.ConditionBoostSpec.fromObject(object.invalidConditionBoostSpecs[i], long + 1); } } if (object.experimentInfo) { @@ -168788,18 +176005,18 @@ for (var i = 0; i < object.experimentInfo.length; ++i) { if (typeof object.experimentInfo[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.experimentInfo: object expected"); - message.experimentInfo[i] = $root.google.cloud.retail.v2beta.ExperimentInfo.fromObject(object.experimentInfo[i]); + message.experimentInfo[i] = $root.google.cloud.retail.v2beta.ExperimentInfo.fromObject(object.experimentInfo[i], long + 1); } } if (object.conversationalSearchResult != null) { if (typeof object.conversationalSearchResult !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.conversationalSearchResult: object expected"); - message.conversationalSearchResult = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.fromObject(object.conversationalSearchResult); + message.conversationalSearchResult = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.fromObject(object.conversationalSearchResult, long + 1); } if (object.tileNavigationResult != null) { if (typeof object.tileNavigationResult !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.tileNavigationResult: object expected"); - message.tileNavigationResult = $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult.fromObject(object.tileNavigationResult); + message.tileNavigationResult = $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult.fromObject(object.tileNavigationResult, long + 1); } return message; }; @@ -168937,7 +176154,7 @@ this.modelScores = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -169072,9 +176289,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchResult.decode = function decode(reader, length, error) { + SearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse.SearchResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -169086,7 +176307,7 @@ break; } case 2: { - message.product = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -169106,13 +176327,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + value = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.matchingVariantFields, key); message.matchingVariantFields[key] = value; break; } @@ -169129,13 +176352,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.variantRollupValues, key); message.variantRollupValues[key] = value; break; } @@ -169158,18 +176383,20 @@ key = reader.string(); break; case 2: - value = $root.google.cloud.retail.v2beta.DoubleList.decode(reader, reader.uint32()); + value = $root.google.cloud.retail.v2beta.DoubleList.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.modelScores, key); message.modelScores[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -169200,14 +176427,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchResult.verify = function verify(message) { + SearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2beta.Product.verify(message.product); + var error = $root.google.cloud.retail.v2beta.Product.verify(message.product, long + 1); if (error) return "product." + error; } @@ -169219,7 +176450,7 @@ return "matchingVariantFields: object expected"; var key = Object.keys(message.matchingVariantFields); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.FieldMask.verify(message.matchingVariantFields[key[i]]); + var error = $root.google.protobuf.FieldMask.verify(message.matchingVariantFields[key[i]], long + 1); if (error) return "matchingVariantFields." + error; } @@ -169229,7 +176460,7 @@ return "variantRollupValues: object expected"; var key = Object.keys(message.variantRollupValues); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.variantRollupValues[key[i]]); + var error = $root.google.protobuf.Value.verify(message.variantRollupValues[key[i]], long + 1); if (error) return "variantRollupValues." + error; } @@ -169246,7 +176477,7 @@ return "modelScores: object expected"; var key = Object.keys(message.modelScores); for (var i = 0; i < key.length; ++i) { - var error = $root.google.cloud.retail.v2beta.DoubleList.verify(message.modelScores[key[i]]); + var error = $root.google.cloud.retail.v2beta.DoubleList.verify(message.modelScores[key[i]], long + 1); if (error) return "modelScores." + error; } @@ -169262,16 +176493,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse.SearchResult} SearchResult */ - SearchResult.fromObject = function fromObject(object) { + SearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse.SearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse.SearchResult(); if (object.id != null) message.id = String(object.id); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.SearchResult.product: object expected"); - message.product = $root.google.cloud.retail.v2beta.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2beta.Product.fromObject(object.product, long + 1); } if (object.matchingVariantCount != null) message.matchingVariantCount = object.matchingVariantCount | 0; @@ -169280,9 +176515,11 @@ throw TypeError(".google.cloud.retail.v2beta.SearchResponse.SearchResult.matchingVariantFields: object expected"); message.matchingVariantFields = {}; for (var keys = Object.keys(object.matchingVariantFields), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.matchingVariantFields, keys[i]); if (typeof object.matchingVariantFields[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.SearchResult.matchingVariantFields: object expected"); - message.matchingVariantFields[keys[i]] = $root.google.protobuf.FieldMask.fromObject(object.matchingVariantFields[keys[i]]); + message.matchingVariantFields[keys[i]] = $root.google.protobuf.FieldMask.fromObject(object.matchingVariantFields[keys[i]], long + 1); } } if (object.variantRollupValues) { @@ -169290,9 +176527,11 @@ throw TypeError(".google.cloud.retail.v2beta.SearchResponse.SearchResult.variantRollupValues: object expected"); message.variantRollupValues = {}; for (var keys = Object.keys(object.variantRollupValues), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.variantRollupValues, keys[i]); if (typeof object.variantRollupValues[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.SearchResult.variantRollupValues: object expected"); - message.variantRollupValues[keys[i]] = $root.google.protobuf.Value.fromObject(object.variantRollupValues[keys[i]]); + message.variantRollupValues[keys[i]] = $root.google.protobuf.Value.fromObject(object.variantRollupValues[keys[i]], long + 1); } } if (object.personalLabels) { @@ -169307,9 +176546,11 @@ throw TypeError(".google.cloud.retail.v2beta.SearchResponse.SearchResult.modelScores: object expected"); message.modelScores = {}; for (var keys = Object.keys(object.modelScores), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.modelScores, keys[i]); if (typeof object.modelScores[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.SearchResult.modelScores: object expected"); - message.modelScores[keys[i]] = $root.google.cloud.retail.v2beta.DoubleList.fromObject(object.modelScores[keys[i]]); + message.modelScores[keys[i]] = $root.google.cloud.retail.v2beta.DoubleList.fromObject(object.modelScores[keys[i]], long + 1); } } return message; @@ -169349,13 +176590,19 @@ var keys2; if (message.matchingVariantFields && (keys2 = Object.keys(message.matchingVariantFields)).length) { object.matchingVariantFields = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.matchingVariantFields, keys2[j]); object.matchingVariantFields[keys2[j]] = $root.google.protobuf.FieldMask.toObject(message.matchingVariantFields[keys2[j]], options); + } } if (message.variantRollupValues && (keys2 = Object.keys(message.variantRollupValues)).length) { object.variantRollupValues = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.variantRollupValues, keys2[j]); object.variantRollupValues[keys2[j]] = $root.google.protobuf.Value.toObject(message.variantRollupValues[keys2[j]], options); + } } if (message.personalLabels && message.personalLabels.length) { object.personalLabels = []; @@ -169364,8 +176611,11 @@ } if (message.modelScores && (keys2 = Object.keys(message.modelScores)).length) { object.modelScores = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.modelScores, keys2[j]); object.modelScores[keys2[j]] = $root.google.cloud.retail.v2beta.DoubleList.toObject(message.modelScores[keys2[j]], options); + } } return object; }; @@ -169422,7 +176672,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -169508,9 +176758,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Facet.decode = function decode(reader, length, error) { + Facet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse.Facet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -169524,7 +176778,7 @@ case 2: { if (!(message.values && message.values.length)) message.values = []; - message.values.push($root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue.decode(reader, reader.uint32())); + message.values.push($root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -169532,7 +176786,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -169563,9 +176817,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Facet.verify = function verify(message) { + Facet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.key != null && message.hasOwnProperty("key")) if (!$util.isString(message.key)) return "key: string expected"; @@ -169573,7 +176831,7 @@ if (!Array.isArray(message.values)) return "values: array expected"; for (var i = 0; i < message.values.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue.verify(message.values[i]); + var error = $root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue.verify(message.values[i], long + 1); if (error) return "values." + error; } @@ -169592,9 +176850,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse.Facet} Facet */ - Facet.fromObject = function fromObject(object) { + Facet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse.Facet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse.Facet(); if (object.key != null) message.key = String(object.key); @@ -169605,7 +176867,7 @@ for (var i = 0; i < object.values.length; ++i) { if (typeof object.values[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.Facet.values: object expected"); - message.values[i] = $root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue.fromObject(object.values[i]); + message.values[i] = $root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue.fromObject(object.values[i], long + 1); } } if (object.dynamicFacet != null) @@ -169694,7 +176956,7 @@ function FacetValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -169813,9 +177075,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FacetValue.decode = function decode(reader, length, error) { + FacetValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -169827,7 +177093,7 @@ break; } case 2: { - message.interval = $root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32()); + message.interval = $root.google.cloud.retail.v2beta.Interval.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -169843,7 +177109,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -169874,9 +177140,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FacetValue.verify = function verify(message) { + FacetValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.value != null && message.hasOwnProperty("value")) { properties.facetValue = 1; @@ -169888,7 +177158,7 @@ return "facetValue: multiple values"; properties.facetValue = 1; { - var error = $root.google.cloud.retail.v2beta.Interval.verify(message.interval); + var error = $root.google.cloud.retail.v2beta.Interval.verify(message.interval, long + 1); if (error) return "interval." + error; } @@ -169913,16 +177183,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue} FacetValue */ - FacetValue.fromObject = function fromObject(object) { + FacetValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue(); if (object.value != null) message.value = String(object.value); if (object.interval != null) { if (typeof object.interval !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.Facet.FacetValue.interval: object expected"); - message.interval = $root.google.cloud.retail.v2beta.Interval.fromObject(object.interval); + message.interval = $root.google.cloud.retail.v2beta.Interval.fromObject(object.interval, long + 1); } if (object.count != null) if ($util.Long) @@ -170037,7 +177311,7 @@ function QueryExpansionInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -170112,9 +177386,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - QueryExpansionInfo.decode = function decode(reader, length, error) { + QueryExpansionInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -170130,7 +177408,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -170161,9 +177439,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - QueryExpansionInfo.verify = function verify(message) { + QueryExpansionInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.expandedQuery != null && message.hasOwnProperty("expandedQuery")) if (typeof message.expandedQuery !== "boolean") return "expandedQuery: boolean expected"; @@ -170181,9 +177463,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo} QueryExpansionInfo */ - QueryExpansionInfo.fromObject = function fromObject(object) { + QueryExpansionInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse.QueryExpansionInfo(); if (object.expandedQuery != null) message.expandedQuery = Boolean(object.expandedQuery); @@ -170286,7 +177572,7 @@ this.suggestedAnswers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -170403,9 +177689,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchResult.decode = function decode(reader, length, error) { + ConversationalSearchResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -170423,7 +177713,7 @@ case 3: { if (!(message.additionalFilters && message.additionalFilters.length)) message.additionalFilters = []; - message.additionalFilters.push($root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32())); + message.additionalFilters.push($root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -170433,15 +177723,15 @@ case 5: { if (!(message.suggestedAnswers && message.suggestedAnswers.length)) message.suggestedAnswers = []; - message.suggestedAnswers.push($root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer.decode(reader, reader.uint32())); + message.suggestedAnswers.push($root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { - message.additionalFilter = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32()); + message.additionalFilter = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -170472,9 +177762,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchResult.verify = function verify(message) { + ConversationalSearchResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.conversationId != null && message.hasOwnProperty("conversationId")) if (!$util.isString(message.conversationId)) return "conversationId: string expected"; @@ -170485,7 +177779,7 @@ if (!Array.isArray(message.additionalFilters)) return "additionalFilters: array expected"; for (var i = 0; i < message.additionalFilters.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilters[i]); + var error = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilters[i], long + 1); if (error) return "additionalFilters." + error; } @@ -170497,13 +177791,13 @@ if (!Array.isArray(message.suggestedAnswers)) return "suggestedAnswers: array expected"; for (var i = 0; i < message.suggestedAnswers.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer.verify(message.suggestedAnswers[i]); + var error = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer.verify(message.suggestedAnswers[i], long + 1); if (error) return "suggestedAnswers." + error; } } if (message.additionalFilter != null && message.hasOwnProperty("additionalFilter")) { - var error = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilter); + var error = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.verify(message.additionalFilter, long + 1); if (error) return "additionalFilter." + error; } @@ -170518,9 +177812,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult} ConversationalSearchResult */ - ConversationalSearchResult.fromObject = function fromObject(object) { + ConversationalSearchResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult(); if (object.conversationId != null) message.conversationId = String(object.conversationId); @@ -170533,7 +177831,7 @@ for (var i = 0; i < object.additionalFilters.length; ++i) { if (typeof object.additionalFilters[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.additionalFilters: object expected"); - message.additionalFilters[i] = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilters[i]); + message.additionalFilters[i] = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilters[i], long + 1); } } if (object.followupQuestion != null) @@ -170545,13 +177843,13 @@ for (var i = 0; i < object.suggestedAnswers.length; ++i) { if (typeof object.suggestedAnswers[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.suggestedAnswers: object expected"); - message.suggestedAnswers[i] = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer.fromObject(object.suggestedAnswers[i]); + message.suggestedAnswers[i] = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer.fromObject(object.suggestedAnswers[i], long + 1); } } if (object.additionalFilter != null) { if (typeof object.additionalFilter !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.additionalFilter: object expected"); - message.additionalFilter = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilter); + message.additionalFilter = $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.fromObject(object.additionalFilter, long + 1); } return message; }; @@ -170646,7 +177944,7 @@ function SuggestedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -170711,9 +178009,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SuggestedAnswer.decode = function decode(reader, length, error) { + SuggestedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -170721,11 +178023,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -170756,11 +178058,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SuggestedAnswer.verify = function verify(message) { + SuggestedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -170775,14 +178081,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer} SuggestedAnswer */ - SuggestedAnswer.fromObject = function fromObject(object) { + SuggestedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.SuggestedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -170856,7 +178166,7 @@ function AdditionalFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -170921,9 +178231,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AdditionalFilter.decode = function decode(reader, length, error) { + AdditionalFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -170931,11 +178245,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -170966,11 +178280,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AdditionalFilter.verify = function verify(message) { + AdditionalFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -170985,14 +178303,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter} AdditionalFilter */ - AdditionalFilter.fromObject = function fromObject(object) { + AdditionalFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.ConversationalSearchResult.AdditionalFilter.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -171070,7 +178392,7 @@ this.tiles = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -171136,9 +178458,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TileNavigationResult.decode = function decode(reader, length, error) { + TileNavigationResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -171148,11 +178474,11 @@ case 1: { if (!(message.tiles && message.tiles.length)) message.tiles = []; - message.tiles.push($root.google.cloud.retail.v2beta.Tile.decode(reader, reader.uint32())); + message.tiles.push($root.google.cloud.retail.v2beta.Tile.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -171183,14 +178509,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TileNavigationResult.verify = function verify(message) { + TileNavigationResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tiles != null && message.hasOwnProperty("tiles")) { if (!Array.isArray(message.tiles)) return "tiles: array expected"; for (var i = 0; i < message.tiles.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Tile.verify(message.tiles[i]); + var error = $root.google.cloud.retail.v2beta.Tile.verify(message.tiles[i], long + 1); if (error) return "tiles." + error; } @@ -171206,9 +178536,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SearchResponse.TileNavigationResult} TileNavigationResult */ - TileNavigationResult.fromObject = function fromObject(object) { + TileNavigationResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SearchResponse.TileNavigationResult(); if (object.tiles) { if (!Array.isArray(object.tiles)) @@ -171217,7 +178551,7 @@ for (var i = 0; i < object.tiles.length; ++i) { if (typeof object.tiles[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.SearchResponse.TileNavigationResult.tiles: object expected"); - message.tiles[i] = $root.google.cloud.retail.v2beta.Tile.fromObject(object.tiles[i]); + message.tiles[i] = $root.google.cloud.retail.v2beta.Tile.fromObject(object.tiles[i], long + 1); } } return message; @@ -171299,7 +178633,7 @@ function ExperimentInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -171388,9 +178722,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentInfo.decode = function decode(reader, length, error) { + ExperimentInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExperimentInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -171398,7 +178736,7 @@ break; switch (tag >>> 3) { case 2: { - message.servingConfigExperiment = $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment.decode(reader, reader.uint32()); + message.servingConfigExperiment = $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { @@ -171406,7 +178744,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -171437,14 +178775,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentInfo.verify = function verify(message) { + ExperimentInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.servingConfigExperiment != null && message.hasOwnProperty("servingConfigExperiment")) { properties.experimentMetadata = 1; { - var error = $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment.verify(message.servingConfigExperiment); + var error = $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment.verify(message.servingConfigExperiment, long + 1); if (error) return "servingConfigExperiment." + error; } @@ -171463,14 +178805,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExperimentInfo} ExperimentInfo */ - ExperimentInfo.fromObject = function fromObject(object) { + ExperimentInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExperimentInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExperimentInfo(); if (object.servingConfigExperiment != null) { if (typeof object.servingConfigExperiment !== "object") throw TypeError(".google.cloud.retail.v2beta.ExperimentInfo.servingConfigExperiment: object expected"); - message.servingConfigExperiment = $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment.fromObject(object.servingConfigExperiment); + message.servingConfigExperiment = $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment.fromObject(object.servingConfigExperiment, long + 1); } if (object.experiment != null) message.experiment = String(object.experiment); @@ -171549,7 +178895,7 @@ function ServingConfigExperiment(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -171624,9 +178970,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfigExperiment.decode = function decode(reader, length, error) { + ServingConfigExperiment.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment(); while (reader.pos < end) { var tag = reader.uint32(); @@ -171642,7 +178992,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -171673,9 +179023,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfigExperiment.verify = function verify(message) { + ServingConfigExperiment.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.originalServingConfig != null && message.hasOwnProperty("originalServingConfig")) if (!$util.isString(message.originalServingConfig)) return "originalServingConfig: string expected"; @@ -171693,9 +179047,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment} ServingConfigExperiment */ - ServingConfigExperiment.fromObject = function fromObject(object) { + ServingConfigExperiment.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ExperimentInfo.ServingConfigExperiment(); if (object.originalServingConfig != null) message.originalServingConfig = String(object.originalServingConfig); @@ -171982,7 +179340,7 @@ function CreateControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -172067,9 +179425,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateControlRequest.decode = function decode(reader, length, error) { + CreateControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CreateControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -172081,7 +179443,7 @@ break; } case 2: { - message.control = $root.google.cloud.retail.v2beta.Control.decode(reader, reader.uint32()); + message.control = $root.google.cloud.retail.v2beta.Control.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -172089,7 +179451,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -172120,14 +179482,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateControlRequest.verify = function verify(message) { + CreateControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.control != null && message.hasOwnProperty("control")) { - var error = $root.google.cloud.retail.v2beta.Control.verify(message.control); + var error = $root.google.cloud.retail.v2beta.Control.verify(message.control, long + 1); if (error) return "control." + error; } @@ -172145,16 +179511,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CreateControlRequest} CreateControlRequest */ - CreateControlRequest.fromObject = function fromObject(object) { + CreateControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CreateControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CreateControlRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.control != null) { if (typeof object.control !== "object") throw TypeError(".google.cloud.retail.v2beta.CreateControlRequest.control: object expected"); - message.control = $root.google.cloud.retail.v2beta.Control.fromObject(object.control); + message.control = $root.google.cloud.retail.v2beta.Control.fromObject(object.control, long + 1); } if (object.controlId != null) message.controlId = String(object.controlId); @@ -172238,7 +179608,7 @@ function UpdateControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -172313,9 +179683,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateControlRequest.decode = function decode(reader, length, error) { + UpdateControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -172323,15 +179697,15 @@ break; switch (tag >>> 3) { case 1: { - message.control = $root.google.cloud.retail.v2beta.Control.decode(reader, reader.uint32()); + message.control = $root.google.cloud.retail.v2beta.Control.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -172362,16 +179736,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateControlRequest.verify = function verify(message) { + UpdateControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.control != null && message.hasOwnProperty("control")) { - var error = $root.google.cloud.retail.v2beta.Control.verify(message.control); + var error = $root.google.cloud.retail.v2beta.Control.verify(message.control, long + 1); if (error) return "control." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -172386,19 +179764,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateControlRequest} UpdateControlRequest */ - UpdateControlRequest.fromObject = function fromObject(object) { + UpdateControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateControlRequest(); if (object.control != null) { if (typeof object.control !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateControlRequest.control: object expected"); - message.control = $root.google.cloud.retail.v2beta.Control.fromObject(object.control); + message.control = $root.google.cloud.retail.v2beta.Control.fromObject(object.control, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateControlRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -172476,7 +179858,7 @@ function DeleteControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -172541,9 +179923,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteControlRequest.decode = function decode(reader, length, error) { + DeleteControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.DeleteControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -172555,7 +179941,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -172586,9 +179972,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteControlRequest.verify = function verify(message) { + DeleteControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -172603,9 +179993,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.DeleteControlRequest} DeleteControlRequest */ - DeleteControlRequest.fromObject = function fromObject(object) { + DeleteControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.DeleteControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.DeleteControlRequest(); if (object.name != null) message.name = String(object.name); @@ -172681,7 +180075,7 @@ function GetControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -172746,9 +180140,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetControlRequest.decode = function decode(reader, length, error) { + GetControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -172760,7 +180158,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -172791,9 +180189,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetControlRequest.verify = function verify(message) { + GetControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -172808,9 +180210,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetControlRequest} GetControlRequest */ - GetControlRequest.fromObject = function fromObject(object) { + GetControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetControlRequest(); if (object.name != null) message.name = String(object.name); @@ -172889,7 +180295,7 @@ function ListControlsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -172984,9 +180390,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListControlsRequest.decode = function decode(reader, length, error) { + ListControlsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListControlsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -173010,7 +180420,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -173041,9 +180451,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListControlsRequest.verify = function verify(message) { + ListControlsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -173067,9 +180481,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListControlsRequest} ListControlsRequest */ - ListControlsRequest.fromObject = function fromObject(object) { + ListControlsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListControlsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListControlsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -173163,7 +180581,7 @@ this.controls = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -173239,9 +180657,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListControlsResponse.decode = function decode(reader, length, error) { + ListControlsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListControlsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -173251,7 +180673,7 @@ case 1: { if (!(message.controls && message.controls.length)) message.controls = []; - message.controls.push($root.google.cloud.retail.v2beta.Control.decode(reader, reader.uint32())); + message.controls.push($root.google.cloud.retail.v2beta.Control.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -173259,7 +180681,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -173290,14 +180712,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListControlsResponse.verify = function verify(message) { + ListControlsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.controls != null && message.hasOwnProperty("controls")) { if (!Array.isArray(message.controls)) return "controls: array expected"; for (var i = 0; i < message.controls.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Control.verify(message.controls[i]); + var error = $root.google.cloud.retail.v2beta.Control.verify(message.controls[i], long + 1); if (error) return "controls." + error; } @@ -173316,9 +180742,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListControlsResponse} ListControlsResponse */ - ListControlsResponse.fromObject = function fromObject(object) { + ListControlsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListControlsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListControlsResponse(); if (object.controls) { if (!Array.isArray(object.controls)) @@ -173327,7 +180757,7 @@ for (var i = 0; i < object.controls.length; ++i) { if (typeof object.controls[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ListControlsResponse.controls: object expected"); - message.controls[i] = $root.google.cloud.retail.v2beta.Control.fromObject(object.controls[i]); + message.controls[i] = $root.google.cloud.retail.v2beta.Control.fromObject(object.controls[i], long + 1); } } if (object.nextPageToken != null) @@ -173492,7 +180922,7 @@ this.safetySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -173660,9 +181090,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchRequest.decode = function decode(reader, length, error) { + ConversationalSearchRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -173692,7 +181126,7 @@ break; } case 6: { - message.searchParams = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams.decode(reader, reader.uint32()); + message.searchParams = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -173700,11 +181134,11 @@ break; } case 7: { - message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.decode(reader, reader.uint32()); + message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.conversationalFilteringSpec = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec.decode(reader, reader.uint32()); + message.conversationalFilteringSpec = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -173723,21 +181157,23 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.userLabels, key); message.userLabels[key] = value; break; } case 14: { if (!(message.safetySettings && message.safetySettings.length)) message.safetySettings = []; - message.safetySettings.push($root.google.cloud.retail.v2beta.SafetySetting.decode(reader, reader.uint32())); + message.safetySettings.push($root.google.cloud.retail.v2beta.SafetySetting.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -173768,9 +181204,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchRequest.verify = function verify(message) { + ConversationalSearchRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) return "placement: string expected"; @@ -173791,7 +181231,7 @@ if (!$util.isString(message.conversationId)) return "conversationId: string expected"; if (message.searchParams != null && message.hasOwnProperty("searchParams")) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams.verify(message.searchParams); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams.verify(message.searchParams, long + 1); if (error) return "searchParams." + error; } @@ -173799,12 +181239,12 @@ if (!$util.isString(message.visitorId)) return "visitorId: string expected"; if (message.userInfo != null && message.hasOwnProperty("userInfo")) { - var error = $root.google.cloud.retail.v2beta.UserInfo.verify(message.userInfo); + var error = $root.google.cloud.retail.v2beta.UserInfo.verify(message.userInfo, long + 1); if (error) return "userInfo." + error; } if (message.conversationalFilteringSpec != null && message.hasOwnProperty("conversationalFilteringSpec")) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec.verify(message.conversationalFilteringSpec); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec.verify(message.conversationalFilteringSpec, long + 1); if (error) return "conversationalFilteringSpec." + error; } @@ -173820,7 +181260,7 @@ if (!Array.isArray(message.safetySettings)) return "safetySettings: array expected"; for (var i = 0; i < message.safetySettings.length; ++i) { - var error = $root.google.cloud.retail.v2beta.SafetySetting.verify(message.safetySettings[i]); + var error = $root.google.cloud.retail.v2beta.SafetySetting.verify(message.safetySettings[i], long + 1); if (error) return "safetySettings." + error; } @@ -173836,9 +181276,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchRequest} ConversationalSearchRequest */ - ConversationalSearchRequest.fromObject = function fromObject(object) { + ConversationalSearchRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest(); if (object.placement != null) message.placement = String(object.placement); @@ -173858,26 +181302,29 @@ if (object.searchParams != null) { if (typeof object.searchParams !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.searchParams: object expected"); - message.searchParams = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams.fromObject(object.searchParams); + message.searchParams = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams.fromObject(object.searchParams, long + 1); } if (object.visitorId != null) message.visitorId = String(object.visitorId); if (object.userInfo != null) { if (typeof object.userInfo !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.userInfo: object expected"); - message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.fromObject(object.userInfo); + message.userInfo = $root.google.cloud.retail.v2beta.UserInfo.fromObject(object.userInfo, long + 1); } if (object.conversationalFilteringSpec != null) { if (typeof object.conversationalFilteringSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.conversationalFilteringSpec: object expected"); - message.conversationalFilteringSpec = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec.fromObject(object.conversationalFilteringSpec); + message.conversationalFilteringSpec = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec.fromObject(object.conversationalFilteringSpec, long + 1); } if (object.userLabels) { if (typeof object.userLabels !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.userLabels: object expected"); message.userLabels = {}; - for (var keys = Object.keys(object.userLabels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.userLabels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.userLabels, keys[i]); message.userLabels[keys[i]] = String(object.userLabels[keys[i]]); + } } if (object.safetySettings) { if (!Array.isArray(object.safetySettings)) @@ -173886,7 +181333,7 @@ for (var i = 0; i < object.safetySettings.length; ++i) { if (typeof object.safetySettings[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.safetySettings: object expected"); - message.safetySettings[i] = $root.google.cloud.retail.v2beta.SafetySetting.fromObject(object.safetySettings[i]); + message.safetySettings[i] = $root.google.cloud.retail.v2beta.SafetySetting.fromObject(object.safetySettings[i], long + 1); } } return message; @@ -173945,8 +181392,11 @@ var keys2; if (message.userLabels && (keys2 = Object.keys(message.userLabels)).length) { object.userLabels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.userLabels, keys2[j]); object.userLabels[keys2[j]] = message.userLabels[keys2[j]]; + } } if (message.safetySettings && message.safetySettings.length) { object.safetySettings = []; @@ -174005,7 +181455,7 @@ function SearchParams(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -174100,9 +181550,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SearchParams.decode = function decode(reader, length, error) { + SearchParams.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams(); while (reader.pos < end) { var tag = reader.uint32(); @@ -174122,11 +181576,11 @@ break; } case 4: { - message.boostSpec = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.decode(reader, reader.uint32()); + message.boostSpec = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -174157,9 +181611,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SearchParams.verify = function verify(message) { + SearchParams.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.filter != null && message.hasOwnProperty("filter")) if (!$util.isString(message.filter)) return "filter: string expected"; @@ -174170,7 +181628,7 @@ if (!$util.isString(message.sortBy)) return "sortBy: string expected"; if (message.boostSpec != null && message.hasOwnProperty("boostSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.verify(message.boostSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.verify(message.boostSpec, long + 1); if (error) return "boostSpec." + error; } @@ -174185,9 +181643,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams} SearchParams */ - SearchParams.fromObject = function fromObject(object) { + SearchParams.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams(); if (object.filter != null) message.filter = String(object.filter); @@ -174198,7 +181660,7 @@ if (object.boostSpec != null) { if (typeof object.boostSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.SearchParams.boostSpec: object expected"); - message.boostSpec = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.fromObject(object.boostSpec); + message.boostSpec = $root.google.cloud.retail.v2beta.SearchRequest.BoostSpec.fromObject(object.boostSpec, long + 1); } return message; }; @@ -174283,7 +181745,7 @@ function UserAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -174372,9 +181834,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UserAnswer.decode = function decode(reader, length, error) { + UserAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -174386,11 +181852,11 @@ break; } case 2: { - message.selectedAnswer = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer.decode(reader, reader.uint32()); + message.selectedAnswer = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -174421,9 +181887,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UserAnswer.verify = function verify(message) { + UserAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.textAnswer != null && message.hasOwnProperty("textAnswer")) { properties.type = 1; @@ -174435,7 +181905,7 @@ return "type: multiple values"; properties.type = 1; { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer.verify(message.selectedAnswer); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer.verify(message.selectedAnswer, long + 1); if (error) return "selectedAnswer." + error; } @@ -174451,16 +181921,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer} UserAnswer */ - UserAnswer.fromObject = function fromObject(object) { + UserAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer(); if (object.textAnswer != null) message.textAnswer = String(object.textAnswer); if (object.selectedAnswer != null) { if (typeof object.selectedAnswer !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.selectedAnswer: object expected"); - message.selectedAnswer = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer); + message.selectedAnswer = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer.fromObject(object.selectedAnswer, long + 1); } return message; }; @@ -174537,7 +182011,7 @@ function SelectedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -174602,9 +182076,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectedAnswer.decode = function decode(reader, length, error) { + SelectedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -174612,11 +182090,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -174647,11 +182125,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectedAnswer.verify = function verify(message) { + SelectedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -174666,14 +182148,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer} SelectedAnswer */ - SelectedAnswer.fromObject = function fromObject(object) { + SelectedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.SelectedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -174752,7 +182238,7 @@ function ConversationalFilteringSpec(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -174837,9 +182323,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalFilteringSpec.decode = function decode(reader, length, error) { + ConversationalFilteringSpec.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec(); while (reader.pos < end) { var tag = reader.uint32(); @@ -174851,7 +182341,7 @@ break; } case 2: { - message.userAnswer = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.decode(reader, reader.uint32()); + message.userAnswer = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -174859,7 +182349,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -174890,14 +182380,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalFilteringSpec.verify = function verify(message) { + ConversationalFilteringSpec.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.enableConversationalFiltering != null && message.hasOwnProperty("enableConversationalFiltering")) if (typeof message.enableConversationalFiltering !== "boolean") return "enableConversationalFiltering: boolean expected"; if (message.userAnswer != null && message.hasOwnProperty("userAnswer")) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.verify(message.userAnswer); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.verify(message.userAnswer, long + 1); if (error) return "userAnswer." + error; } @@ -174922,16 +182416,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec} ConversationalFilteringSpec */ - ConversationalFilteringSpec.fromObject = function fromObject(object) { + ConversationalFilteringSpec.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec(); if (object.enableConversationalFiltering != null) message.enableConversationalFiltering = Boolean(object.enableConversationalFiltering); if (object.userAnswer != null) { if (typeof object.userAnswer !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchRequest.ConversationalFilteringSpec.userAnswer: object expected"); - message.userAnswer = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.fromObject(object.userAnswer); + message.userAnswer = $root.google.cloud.retail.v2beta.ConversationalSearchRequest.UserAnswer.fromObject(object.userAnswer, long + 1); } switch (object.conversationalFilteringMode) { default: @@ -175065,7 +182563,7 @@ this.refinedSearch = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -175192,9 +182690,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalSearchResponse.decode = function decode(reader, length, error) { + ConversationalSearchResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -175212,7 +182714,7 @@ break; } case 3: { - message.followupQuestion = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32()); + message.followupQuestion = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -175222,11 +182724,11 @@ case 6: { if (!(message.refinedSearch && message.refinedSearch.length)) message.refinedSearch = []; - message.refinedSearch.push($root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch.decode(reader, reader.uint32())); + message.refinedSearch.push($root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.conversationalFilteringResult = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.decode(reader, reader.uint32()); + message.conversationalFilteringResult = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -175234,7 +182736,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -175265,9 +182767,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalSearchResponse.verify = function verify(message) { + ConversationalSearchResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.userQueryTypes != null && message.hasOwnProperty("userQueryTypes")) { if (!Array.isArray(message.userQueryTypes)) return "userQueryTypes: array expected"; @@ -175279,7 +182785,7 @@ if (!$util.isString(message.conversationalTextResponse)) return "conversationalTextResponse: string expected"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion, long + 1); if (error) return "followupQuestion." + error; } @@ -175290,13 +182796,13 @@ if (!Array.isArray(message.refinedSearch)) return "refinedSearch: array expected"; for (var i = 0; i < message.refinedSearch.length; ++i) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch.verify(message.refinedSearch[i]); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch.verify(message.refinedSearch[i], long + 1); if (error) return "refinedSearch." + error; } } if (message.conversationalFilteringResult != null && message.hasOwnProperty("conversationalFilteringResult")) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.verify(message.conversationalFilteringResult); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.verify(message.conversationalFilteringResult, long + 1); if (error) return "conversationalFilteringResult." + error; } @@ -175320,9 +182826,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchResponse} ConversationalSearchResponse */ - ConversationalSearchResponse.fromObject = function fromObject(object) { + ConversationalSearchResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse(); if (object.userQueryTypes) { if (!Array.isArray(object.userQueryTypes)) @@ -175336,7 +182846,7 @@ if (object.followupQuestion != null) { if (typeof object.followupQuestion !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchResponse.followupQuestion: object expected"); - message.followupQuestion = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion); + message.followupQuestion = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion, long + 1); } if (object.conversationId != null) message.conversationId = String(object.conversationId); @@ -175347,13 +182857,13 @@ for (var i = 0; i < object.refinedSearch.length; ++i) { if (typeof object.refinedSearch[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchResponse.refinedSearch: object expected"); - message.refinedSearch[i] = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch.fromObject(object.refinedSearch[i]); + message.refinedSearch[i] = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch.fromObject(object.refinedSearch[i], long + 1); } } if (object.conversationalFilteringResult != null) { if (typeof object.conversationalFilteringResult !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchResponse.conversationalFilteringResult: object expected"); - message.conversationalFilteringResult = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.fromObject(object.conversationalFilteringResult); + message.conversationalFilteringResult = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.fromObject(object.conversationalFilteringResult, long + 1); } switch (object.state) { default: @@ -175473,7 +182983,7 @@ this.suggestedAnswers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -175549,9 +183059,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FollowupQuestion.decode = function decode(reader, length, error) { + FollowupQuestion.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion(); while (reader.pos < end) { var tag = reader.uint32(); @@ -175565,11 +183079,11 @@ case 2: { if (!(message.suggestedAnswers && message.suggestedAnswers.length)) message.suggestedAnswers = []; - message.suggestedAnswers.push($root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.decode(reader, reader.uint32())); + message.suggestedAnswers.push($root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -175600,9 +183114,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FollowupQuestion.verify = function verify(message) { + FollowupQuestion.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) if (!$util.isString(message.followupQuestion)) return "followupQuestion: string expected"; @@ -175610,7 +183128,7 @@ if (!Array.isArray(message.suggestedAnswers)) return "suggestedAnswers: array expected"; for (var i = 0; i < message.suggestedAnswers.length; ++i) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.verify(message.suggestedAnswers[i]); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.verify(message.suggestedAnswers[i], long + 1); if (error) return "suggestedAnswers." + error; } @@ -175626,9 +183144,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion} FollowupQuestion */ - FollowupQuestion.fromObject = function fromObject(object) { + FollowupQuestion.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion(); if (object.followupQuestion != null) message.followupQuestion = String(object.followupQuestion); @@ -175639,7 +183161,7 @@ for (var i = 0; i < object.suggestedAnswers.length; ++i) { if (typeof object.suggestedAnswers[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.suggestedAnswers: object expected"); - message.suggestedAnswers[i] = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.fromObject(object.suggestedAnswers[i]); + message.suggestedAnswers[i] = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.fromObject(object.suggestedAnswers[i], long + 1); } } return message; @@ -175718,7 +183240,7 @@ function SuggestedAnswer(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -175783,9 +183305,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SuggestedAnswer.decode = function decode(reader, length, error) { + SuggestedAnswer.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer(); while (reader.pos < end) { var tag = reader.uint32(); @@ -175793,11 +183319,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -175828,11 +183354,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SuggestedAnswer.verify = function verify(message) { + SuggestedAnswer.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -175847,14 +183377,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer} SuggestedAnswer */ - SuggestedAnswer.fromObject = function fromObject(object) { + SuggestedAnswer.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.SuggestedAnswer.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -175931,7 +183465,7 @@ function RefinedSearch(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -175996,9 +183530,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RefinedSearch.decode = function decode(reader, length, error) { + RefinedSearch.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch(); while (reader.pos < end) { var tag = reader.uint32(); @@ -176010,7 +183548,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -176041,9 +183579,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RefinedSearch.verify = function verify(message) { + RefinedSearch.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.query != null && message.hasOwnProperty("query")) if (!$util.isString(message.query)) return "query: string expected"; @@ -176058,9 +183600,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch} RefinedSearch */ - RefinedSearch.fromObject = function fromObject(object) { + RefinedSearch.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.RefinedSearch(); if (object.query != null) message.query = String(object.query); @@ -176137,7 +183683,7 @@ function ConversationalFilteringResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -176212,9 +183758,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ConversationalFilteringResult.decode = function decode(reader, length, error) { + ConversationalFilteringResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -176222,15 +183772,15 @@ break; switch (tag >>> 3) { case 1: { - message.followupQuestion = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32()); + message.followupQuestion = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.additionalFilter = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.decode(reader, reader.uint32()); + message.additionalFilter = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -176261,16 +183811,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ConversationalFilteringResult.verify = function verify(message) { + ConversationalFilteringResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.followupQuestion != null && message.hasOwnProperty("followupQuestion")) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.verify(message.followupQuestion, long + 1); if (error) return "followupQuestion." + error; } if (message.additionalFilter != null && message.hasOwnProperty("additionalFilter")) { - var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.verify(message.additionalFilter); + var error = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.verify(message.additionalFilter, long + 1); if (error) return "additionalFilter." + error; } @@ -176285,19 +183839,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult} ConversationalFilteringResult */ - ConversationalFilteringResult.fromObject = function fromObject(object) { + ConversationalFilteringResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult(); if (object.followupQuestion != null) { if (typeof object.followupQuestion !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.followupQuestion: object expected"); - message.followupQuestion = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion); + message.followupQuestion = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.FollowupQuestion.fromObject(object.followupQuestion, long + 1); } if (object.additionalFilter != null) { if (typeof object.additionalFilter !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.additionalFilter: object expected"); - message.additionalFilter = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.fromObject(object.additionalFilter); + message.additionalFilter = $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.fromObject(object.additionalFilter, long + 1); } return message; }; @@ -176372,7 +183930,7 @@ function AdditionalFilter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -176437,9 +183995,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AdditionalFilter.decode = function decode(reader, length, error) { + AdditionalFilter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -176447,11 +184009,11 @@ break; switch (tag >>> 3) { case 1: { - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32()); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -176482,11 +184044,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AdditionalFilter.verify = function verify(message) { + AdditionalFilter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.productAttributeValue != null && message.hasOwnProperty("productAttributeValue")) { - var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue); + var error = $root.google.cloud.retail.v2beta.ProductAttributeValue.verify(message.productAttributeValue, long + 1); if (error) return "productAttributeValue." + error; } @@ -176501,14 +184067,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter} AdditionalFilter */ - AdditionalFilter.fromObject = function fromObject(object) { + AdditionalFilter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter(); if (object.productAttributeValue != null) { if (typeof object.productAttributeValue !== "object") throw TypeError(".google.cloud.retail.v2beta.ConversationalSearchResponse.ConversationalFilteringResult.AdditionalFilter.productAttributeValue: object expected"); - message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue); + message.productAttributeValue = $root.google.cloud.retail.v2beta.ProductAttributeValue.fromObject(object.productAttributeValue, long + 1); } return message; }; @@ -176628,7 +184198,7 @@ function SafetySetting(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -176713,9 +184283,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SafetySetting.decode = function decode(reader, length, error) { + SafetySetting.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SafetySetting(); while (reader.pos < end) { var tag = reader.uint32(); @@ -176735,7 +184309,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -176766,9 +184340,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SafetySetting.verify = function verify(message) { + SafetySetting.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.category != null && message.hasOwnProperty("category")) switch (message.category) { default: @@ -176813,9 +184391,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SafetySetting} SafetySetting */ - SafetySetting.fromObject = function fromObject(object) { + SafetySetting.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SafetySetting) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SafetySetting(); switch (object.category) { default: @@ -177020,7 +184602,7 @@ function GenerativeQuestionsFeatureConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -177105,9 +184687,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerativeQuestionsFeatureConfig.decode = function decode(reader, length, error) { + GenerativeQuestionsFeatureConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -177127,7 +184713,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -177158,9 +184744,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerativeQuestionsFeatureConfig.verify = function verify(message) { + GenerativeQuestionsFeatureConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -177181,9 +184771,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig} GenerativeQuestionsFeatureConfig */ - GenerativeQuestionsFeatureConfig.fromObject = function fromObject(object) { + GenerativeQuestionsFeatureConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -177277,7 +184871,7 @@ this.exampleValues = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -177403,9 +184997,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GenerativeQuestionConfig.decode = function decode(reader, length, error) { + GenerativeQuestionConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GenerativeQuestionConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -177443,7 +185041,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -177474,9 +185072,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GenerativeQuestionConfig.verify = function verify(message) { + GenerativeQuestionConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -177513,9 +185115,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GenerativeQuestionConfig} GenerativeQuestionConfig */ - GenerativeQuestionConfig.fromObject = function fromObject(object) { + GenerativeQuestionConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GenerativeQuestionConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GenerativeQuestionConfig(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -177832,7 +185438,7 @@ function UpdateGenerativeQuestionsFeatureConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -177907,9 +185513,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error) { + UpdateGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionsFeatureConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -177917,15 +185527,15 @@ break; switch (tag >>> 3) { case 2: { - message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig.decode(reader, reader.uint32()); + message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -177956,16 +185566,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateGenerativeQuestionsFeatureConfigRequest.verify = function verify(message) { + UpdateGenerativeQuestionsFeatureConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionsFeatureConfig != null && message.hasOwnProperty("generativeQuestionsFeatureConfig")) { - var error = $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig.verify(message.generativeQuestionsFeatureConfig); + var error = $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig.verify(message.generativeQuestionsFeatureConfig, long + 1); if (error) return "generativeQuestionsFeatureConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -177980,19 +185594,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateGenerativeQuestionsFeatureConfigRequest} UpdateGenerativeQuestionsFeatureConfigRequest */ - UpdateGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object) { + UpdateGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionsFeatureConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionsFeatureConfigRequest(); if (object.generativeQuestionsFeatureConfig != null) { if (typeof object.generativeQuestionsFeatureConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateGenerativeQuestionsFeatureConfigRequest.generativeQuestionsFeatureConfig: object expected"); - message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig.fromObject(object.generativeQuestionsFeatureConfig); + message.generativeQuestionsFeatureConfig = $root.google.cloud.retail.v2beta.GenerativeQuestionsFeatureConfig.fromObject(object.generativeQuestionsFeatureConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateGenerativeQuestionsFeatureConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -178070,7 +185688,7 @@ function GetGenerativeQuestionsFeatureConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -178135,9 +185753,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error) { + GetGenerativeQuestionsFeatureConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetGenerativeQuestionsFeatureConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -178149,7 +185771,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -178180,9 +185802,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetGenerativeQuestionsFeatureConfigRequest.verify = function verify(message) { + GetGenerativeQuestionsFeatureConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.catalog != null && message.hasOwnProperty("catalog")) if (!$util.isString(message.catalog)) return "catalog: string expected"; @@ -178197,9 +185823,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetGenerativeQuestionsFeatureConfigRequest} GetGenerativeQuestionsFeatureConfigRequest */ - GetGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object) { + GetGenerativeQuestionsFeatureConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetGenerativeQuestionsFeatureConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetGenerativeQuestionsFeatureConfigRequest(); if (object.catalog != null) message.catalog = String(object.catalog); @@ -178275,7 +185905,7 @@ function ListGenerativeQuestionConfigsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -178340,9 +185970,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error) { + ListGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListGenerativeQuestionConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -178354,7 +185988,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -178385,9 +186019,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListGenerativeQuestionConfigsRequest.verify = function verify(message) { + ListGenerativeQuestionConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -178402,9 +186040,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListGenerativeQuestionConfigsRequest} ListGenerativeQuestionConfigsRequest */ - ListGenerativeQuestionConfigsRequest.fromObject = function fromObject(object) { + ListGenerativeQuestionConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListGenerativeQuestionConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListGenerativeQuestionConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -178481,7 +186123,7 @@ this.generativeQuestionConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -178547,9 +186189,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error) { + ListGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListGenerativeQuestionConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -178559,11 +186205,11 @@ case 1: { if (!(message.generativeQuestionConfigs && message.generativeQuestionConfigs.length)) message.generativeQuestionConfigs = []; - message.generativeQuestionConfigs.push($root.google.cloud.retail.v2beta.GenerativeQuestionConfig.decode(reader, reader.uint32())); + message.generativeQuestionConfigs.push($root.google.cloud.retail.v2beta.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -178594,14 +186240,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListGenerativeQuestionConfigsResponse.verify = function verify(message) { + ListGenerativeQuestionConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfigs != null && message.hasOwnProperty("generativeQuestionConfigs")) { if (!Array.isArray(message.generativeQuestionConfigs)) return "generativeQuestionConfigs: array expected"; for (var i = 0; i < message.generativeQuestionConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i]); + var error = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i], long + 1); if (error) return "generativeQuestionConfigs." + error; } @@ -178617,9 +186267,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListGenerativeQuestionConfigsResponse} ListGenerativeQuestionConfigsResponse */ - ListGenerativeQuestionConfigsResponse.fromObject = function fromObject(object) { + ListGenerativeQuestionConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListGenerativeQuestionConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListGenerativeQuestionConfigsResponse(); if (object.generativeQuestionConfigs) { if (!Array.isArray(object.generativeQuestionConfigs)) @@ -178628,7 +186282,7 @@ for (var i = 0; i < object.generativeQuestionConfigs.length; ++i) { if (typeof object.generativeQuestionConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ListGenerativeQuestionConfigsResponse.generativeQuestionConfigs: object expected"); - message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i]); + message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i], long + 1); } } return message; @@ -178707,7 +186361,7 @@ function UpdateGenerativeQuestionConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -178782,9 +186436,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateGenerativeQuestionConfigRequest.decode = function decode(reader, length, error) { + UpdateGenerativeQuestionConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -178792,15 +186450,15 @@ break; switch (tag >>> 3) { case 3: { - message.generativeQuestionConfig = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.decode(reader, reader.uint32()); + message.generativeQuestionConfig = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -178831,16 +186489,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateGenerativeQuestionConfigRequest.verify = function verify(message) { + UpdateGenerativeQuestionConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfig != null && message.hasOwnProperty("generativeQuestionConfig")) { - var error = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.verify(message.generativeQuestionConfig); + var error = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.verify(message.generativeQuestionConfig, long + 1); if (error) return "generativeQuestionConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -178855,19 +186517,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest} UpdateGenerativeQuestionConfigRequest */ - UpdateGenerativeQuestionConfigRequest.fromObject = function fromObject(object) { + UpdateGenerativeQuestionConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest(); if (object.generativeQuestionConfig != null) { if (typeof object.generativeQuestionConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest.generativeQuestionConfig: object expected"); - message.generativeQuestionConfig = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfig); + message.generativeQuestionConfig = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -178947,7 +186613,7 @@ this.requests = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -179023,9 +186689,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchUpdateGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error) { + BatchUpdateGenerativeQuestionConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -179039,11 +186709,11 @@ case 2: { if (!(message.requests && message.requests.length)) message.requests = []; - message.requests.push($root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest.decode(reader, reader.uint32())); + message.requests.push($root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -179074,9 +186744,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchUpdateGenerativeQuestionConfigsRequest.verify = function verify(message) { + BatchUpdateGenerativeQuestionConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -179084,7 +186758,7 @@ if (!Array.isArray(message.requests)) return "requests: array expected"; for (var i = 0; i < message.requests.length; ++i) { - var error = $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest.verify(message.requests[i]); + var error = $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest.verify(message.requests[i], long + 1); if (error) return "requests." + error; } @@ -179100,9 +186774,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsRequest} BatchUpdateGenerativeQuestionConfigsRequest */ - BatchUpdateGenerativeQuestionConfigsRequest.fromObject = function fromObject(object) { + BatchUpdateGenerativeQuestionConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -179113,7 +186791,7 @@ for (var i = 0; i < object.requests.length; ++i) { if (typeof object.requests[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsRequest.requests: object expected"); - message.requests[i] = $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest.fromObject(object.requests[i]); + message.requests[i] = $root.google.cloud.retail.v2beta.UpdateGenerativeQuestionConfigRequest.fromObject(object.requests[i], long + 1); } } return message; @@ -179196,7 +186874,7 @@ this.generativeQuestionConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -179262,9 +186940,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BatchUpdateGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error) { + BatchUpdateGenerativeQuestionConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -179274,11 +186956,11 @@ case 1: { if (!(message.generativeQuestionConfigs && message.generativeQuestionConfigs.length)) message.generativeQuestionConfigs = []; - message.generativeQuestionConfigs.push($root.google.cloud.retail.v2beta.GenerativeQuestionConfig.decode(reader, reader.uint32())); + message.generativeQuestionConfigs.push($root.google.cloud.retail.v2beta.GenerativeQuestionConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -179309,14 +186991,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BatchUpdateGenerativeQuestionConfigsResponse.verify = function verify(message) { + BatchUpdateGenerativeQuestionConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.generativeQuestionConfigs != null && message.hasOwnProperty("generativeQuestionConfigs")) { if (!Array.isArray(message.generativeQuestionConfigs)) return "generativeQuestionConfigs: array expected"; for (var i = 0; i < message.generativeQuestionConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i]); + var error = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.verify(message.generativeQuestionConfigs[i], long + 1); if (error) return "generativeQuestionConfigs." + error; } @@ -179332,9 +187018,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsResponse} BatchUpdateGenerativeQuestionConfigsResponse */ - BatchUpdateGenerativeQuestionConfigsResponse.fromObject = function fromObject(object) { + BatchUpdateGenerativeQuestionConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsResponse(); if (object.generativeQuestionConfigs) { if (!Array.isArray(object.generativeQuestionConfigs)) @@ -179343,7 +187033,7 @@ for (var i = 0; i < object.generativeQuestionConfigs.length; ++i) { if (typeof object.generativeQuestionConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.BatchUpdateGenerativeQuestionConfigsResponse.generativeQuestionConfigs: object expected"); - message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i]); + message.generativeQuestionConfigs[i] = $root.google.cloud.retail.v2beta.GenerativeQuestionConfig.fromObject(object.generativeQuestionConfigs[i], long + 1); } } return message; @@ -179436,7 +187126,7 @@ this.servingConfigLists = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -179642,9 +187332,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Model.decode = function decode(reader, length, error) { + Model.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Model(); while (reader.pos < end) { var tag = reader.uint32(); @@ -179668,11 +187362,11 @@ break; } case 5: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -179688,7 +187382,7 @@ break; } case 12: { - message.lastTuneTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastTuneTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 15: { @@ -179706,15 +187400,15 @@ case 19: { if (!(message.servingConfigLists && message.servingConfigLists.length)) message.servingConfigLists = []; - message.servingConfigLists.push($root.google.cloud.retail.v2beta.Model.ServingConfigList.decode(reader, reader.uint32())); + message.servingConfigLists.push($root.google.cloud.retail.v2beta.Model.ServingConfigList.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { - message.modelFeaturesConfig = $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig.decode(reader, reader.uint32()); + message.modelFeaturesConfig = $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -179745,9 +187439,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Model.verify = function verify(message) { + Model.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -179774,12 +187472,12 @@ break; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -179800,7 +187498,7 @@ break; } if (message.lastTuneTime != null && message.hasOwnProperty("lastTuneTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastTuneTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastTuneTime, long + 1); if (error) return "lastTuneTime." + error; } @@ -179829,13 +187527,13 @@ if (!Array.isArray(message.servingConfigLists)) return "servingConfigLists: array expected"; for (var i = 0; i < message.servingConfigLists.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Model.ServingConfigList.verify(message.servingConfigLists[i]); + var error = $root.google.cloud.retail.v2beta.Model.ServingConfigList.verify(message.servingConfigLists[i], long + 1); if (error) return "servingConfigLists." + error; } } if (message.modelFeaturesConfig != null && message.hasOwnProperty("modelFeaturesConfig")) { - var error = $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig.verify(message.modelFeaturesConfig); + var error = $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig.verify(message.modelFeaturesConfig, long + 1); if (error) return "modelFeaturesConfig." + error; } @@ -179850,9 +187548,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Model} Model */ - Model.fromObject = function fromObject(object) { + Model.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Model) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Model(); if (object.name != null) message.name = String(object.name); @@ -179905,12 +187607,12 @@ if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2beta.Model.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2beta.Model.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.type != null) message.type = String(object.type); @@ -179943,7 +187645,7 @@ if (object.lastTuneTime != null) { if (typeof object.lastTuneTime !== "object") throw TypeError(".google.cloud.retail.v2beta.Model.lastTuneTime: object expected"); - message.lastTuneTime = $root.google.protobuf.Timestamp.fromObject(object.lastTuneTime); + message.lastTuneTime = $root.google.protobuf.Timestamp.fromObject(object.lastTuneTime, long + 1); } if (object.tuningOperation != null) message.tuningOperation = String(object.tuningOperation); @@ -179994,13 +187696,13 @@ for (var i = 0; i < object.servingConfigLists.length; ++i) { if (typeof object.servingConfigLists[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.Model.servingConfigLists: object expected"); - message.servingConfigLists[i] = $root.google.cloud.retail.v2beta.Model.ServingConfigList.fromObject(object.servingConfigLists[i]); + message.servingConfigLists[i] = $root.google.cloud.retail.v2beta.Model.ServingConfigList.fromObject(object.servingConfigLists[i], long + 1); } } if (object.modelFeaturesConfig != null) { if (typeof object.modelFeaturesConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.Model.modelFeaturesConfig: object expected"); - message.modelFeaturesConfig = $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig.fromObject(object.modelFeaturesConfig); + message.modelFeaturesConfig = $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig.fromObject(object.modelFeaturesConfig, long + 1); } return message; }; @@ -180119,7 +187821,7 @@ this.servingConfigIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -180185,9 +187887,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfigList.decode = function decode(reader, length, error) { + ServingConfigList.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Model.ServingConfigList(); while (reader.pos < end) { var tag = reader.uint32(); @@ -180201,7 +187907,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -180232,9 +187938,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfigList.verify = function verify(message) { + ServingConfigList.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfigIds != null && message.hasOwnProperty("servingConfigIds")) { if (!Array.isArray(message.servingConfigIds)) return "servingConfigIds: array expected"; @@ -180253,9 +187963,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Model.ServingConfigList} ServingConfigList */ - ServingConfigList.fromObject = function fromObject(object) { + ServingConfigList.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Model.ServingConfigList) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Model.ServingConfigList(); if (object.servingConfigIds) { if (!Array.isArray(object.servingConfigIds)) @@ -180339,7 +188053,7 @@ function FrequentlyBoughtTogetherFeaturesConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -180404,9 +188118,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FrequentlyBoughtTogetherFeaturesConfig.decode = function decode(reader, length, error) { + FrequentlyBoughtTogetherFeaturesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -180418,7 +188136,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -180449,9 +188167,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FrequentlyBoughtTogetherFeaturesConfig.verify = function verify(message) { + FrequentlyBoughtTogetherFeaturesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.contextProductsType != null && message.hasOwnProperty("contextProductsType")) switch (message.contextProductsType) { default: @@ -180472,9 +188194,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig} FrequentlyBoughtTogetherFeaturesConfig */ - FrequentlyBoughtTogetherFeaturesConfig.fromObject = function fromObject(object) { + FrequentlyBoughtTogetherFeaturesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig(); switch (object.contextProductsType) { default: @@ -180568,7 +188294,7 @@ function ModelFeaturesConfig(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -180647,9 +188373,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ModelFeaturesConfig.decode = function decode(reader, length, error) { + ModelFeaturesConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -180657,11 +188387,11 @@ break; switch (tag >>> 3) { case 1: { - message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig.decode(reader, reader.uint32()); + message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -180692,14 +188422,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ModelFeaturesConfig.verify = function verify(message) { + ModelFeaturesConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.frequentlyBoughtTogetherConfig != null && message.hasOwnProperty("frequentlyBoughtTogetherConfig")) { properties.typeDedicatedConfig = 1; { - var error = $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig.verify(message.frequentlyBoughtTogetherConfig); + var error = $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig.verify(message.frequentlyBoughtTogetherConfig, long + 1); if (error) return "frequentlyBoughtTogetherConfig." + error; } @@ -180715,14 +188449,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.Model.ModelFeaturesConfig} ModelFeaturesConfig */ - ModelFeaturesConfig.fromObject = function fromObject(object) { + ModelFeaturesConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.Model.ModelFeaturesConfig(); if (object.frequentlyBoughtTogetherConfig != null) { if (typeof object.frequentlyBoughtTogetherConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.Model.ModelFeaturesConfig.frequentlyBoughtTogetherConfig: object expected"); - message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig.fromObject(object.frequentlyBoughtTogetherConfig); + message.frequentlyBoughtTogetherConfig = $root.google.cloud.retail.v2beta.Model.FrequentlyBoughtTogetherFeaturesConfig.fromObject(object.frequentlyBoughtTogetherConfig, long + 1); } return message; }; @@ -181185,7 +188923,7 @@ function CreateModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -181270,9 +189008,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateModelRequest.decode = function decode(reader, length, error) { + CreateModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CreateModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -181284,7 +189026,7 @@ break; } case 2: { - message.model = $root.google.cloud.retail.v2beta.Model.decode(reader, reader.uint32()); + message.model = $root.google.cloud.retail.v2beta.Model.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -181292,7 +189034,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -181323,14 +189065,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateModelRequest.verify = function verify(message) { + CreateModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.model != null && message.hasOwnProperty("model")) { - var error = $root.google.cloud.retail.v2beta.Model.verify(message.model); + var error = $root.google.cloud.retail.v2beta.Model.verify(message.model, long + 1); if (error) return "model." + error; } @@ -181348,16 +189094,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CreateModelRequest} CreateModelRequest */ - CreateModelRequest.fromObject = function fromObject(object) { + CreateModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CreateModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CreateModelRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.model != null) { if (typeof object.model !== "object") throw TypeError(".google.cloud.retail.v2beta.CreateModelRequest.model: object expected"); - message.model = $root.google.cloud.retail.v2beta.Model.fromObject(object.model); + message.model = $root.google.cloud.retail.v2beta.Model.fromObject(object.model, long + 1); } if (object.dryRun != null) message.dryRun = Boolean(object.dryRun); @@ -181441,7 +189191,7 @@ function UpdateModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -181516,9 +189266,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateModelRequest.decode = function decode(reader, length, error) { + UpdateModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -181526,15 +189280,15 @@ break; switch (tag >>> 3) { case 1: { - message.model = $root.google.cloud.retail.v2beta.Model.decode(reader, reader.uint32()); + message.model = $root.google.cloud.retail.v2beta.Model.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -181565,16 +189319,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateModelRequest.verify = function verify(message) { + UpdateModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) { - var error = $root.google.cloud.retail.v2beta.Model.verify(message.model); + var error = $root.google.cloud.retail.v2beta.Model.verify(message.model, long + 1); if (error) return "model." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -181589,19 +189347,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateModelRequest} UpdateModelRequest */ - UpdateModelRequest.fromObject = function fromObject(object) { + UpdateModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateModelRequest(); if (object.model != null) { if (typeof object.model !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateModelRequest.model: object expected"); - message.model = $root.google.cloud.retail.v2beta.Model.fromObject(object.model); + message.model = $root.google.cloud.retail.v2beta.Model.fromObject(object.model, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateModelRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -181679,7 +189441,7 @@ function GetModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -181744,9 +189506,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetModelRequest.decode = function decode(reader, length, error) { + GetModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -181758,7 +189524,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -181789,9 +189555,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetModelRequest.verify = function verify(message) { + GetModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -181806,9 +189576,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetModelRequest} GetModelRequest */ - GetModelRequest.fromObject = function fromObject(object) { + GetModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetModelRequest(); if (object.name != null) message.name = String(object.name); @@ -181884,7 +189658,7 @@ function PauseModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -181949,9 +189723,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PauseModelRequest.decode = function decode(reader, length, error) { + PauseModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PauseModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -181963,7 +189741,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -181994,9 +189772,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PauseModelRequest.verify = function verify(message) { + PauseModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -182011,9 +189793,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PauseModelRequest} PauseModelRequest */ - PauseModelRequest.fromObject = function fromObject(object) { + PauseModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PauseModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PauseModelRequest(); if (object.name != null) message.name = String(object.name); @@ -182089,7 +189875,7 @@ function ResumeModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -182154,9 +189940,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResumeModelRequest.decode = function decode(reader, length, error) { + ResumeModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ResumeModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -182168,7 +189958,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -182199,9 +189989,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResumeModelRequest.verify = function verify(message) { + ResumeModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -182216,9 +190010,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ResumeModelRequest} ResumeModelRequest */ - ResumeModelRequest.fromObject = function fromObject(object) { + ResumeModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ResumeModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ResumeModelRequest(); if (object.name != null) message.name = String(object.name); @@ -182296,7 +190094,7 @@ function ListModelsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -182381,9 +190179,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListModelsRequest.decode = function decode(reader, length, error) { + ListModelsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListModelsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -182403,7 +190205,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -182434,9 +190236,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListModelsRequest.verify = function verify(message) { + ListModelsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -182457,9 +190263,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListModelsRequest} ListModelsRequest */ - ListModelsRequest.fromObject = function fromObject(object) { + ListModelsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListModelsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListModelsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -182546,7 +190356,7 @@ function DeleteModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -182611,9 +190421,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteModelRequest.decode = function decode(reader, length, error) { + DeleteModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.DeleteModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -182625,7 +190439,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -182656,9 +190470,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteModelRequest.verify = function verify(message) { + DeleteModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -182673,9 +190491,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.DeleteModelRequest} DeleteModelRequest */ - DeleteModelRequest.fromObject = function fromObject(object) { + DeleteModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.DeleteModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.DeleteModelRequest(); if (object.name != null) message.name = String(object.name); @@ -182753,7 +190575,7 @@ this.models = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -182829,9 +190651,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListModelsResponse.decode = function decode(reader, length, error) { + ListModelsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListModelsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -182841,7 +190667,7 @@ case 1: { if (!(message.models && message.models.length)) message.models = []; - message.models.push($root.google.cloud.retail.v2beta.Model.decode(reader, reader.uint32())); + message.models.push($root.google.cloud.retail.v2beta.Model.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -182849,7 +190675,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -182880,14 +190706,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListModelsResponse.verify = function verify(message) { + ListModelsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.models != null && message.hasOwnProperty("models")) { if (!Array.isArray(message.models)) return "models: array expected"; for (var i = 0; i < message.models.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Model.verify(message.models[i]); + var error = $root.google.cloud.retail.v2beta.Model.verify(message.models[i], long + 1); if (error) return "models." + error; } @@ -182906,9 +190736,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListModelsResponse} ListModelsResponse */ - ListModelsResponse.fromObject = function fromObject(object) { + ListModelsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListModelsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListModelsResponse(); if (object.models) { if (!Array.isArray(object.models)) @@ -182917,7 +190751,7 @@ for (var i = 0; i < object.models.length; ++i) { if (typeof object.models[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ListModelsResponse.models: object expected"); - message.models[i] = $root.google.cloud.retail.v2beta.Model.fromObject(object.models[i]); + message.models[i] = $root.google.cloud.retail.v2beta.Model.fromObject(object.models[i], long + 1); } } if (object.nextPageToken != null) @@ -183001,7 +190835,7 @@ function TuneModelRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -183066,9 +190900,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelRequest.decode = function decode(reader, length, error) { + TuneModelRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.TuneModelRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -183080,7 +190918,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -183111,9 +190949,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelRequest.verify = function verify(message) { + TuneModelRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -183128,9 +190970,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.TuneModelRequest} TuneModelRequest */ - TuneModelRequest.fromObject = function fromObject(object) { + TuneModelRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.TuneModelRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.TuneModelRequest(); if (object.name != null) message.name = String(object.name); @@ -183206,7 +191052,7 @@ function CreateModelMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -183271,9 +191117,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateModelMetadata.decode = function decode(reader, length, error) { + CreateModelMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CreateModelMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -183285,7 +191135,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -183316,9 +191166,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateModelMetadata.verify = function verify(message) { + CreateModelMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) if (!$util.isString(message.model)) return "model: string expected"; @@ -183333,9 +191187,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CreateModelMetadata} CreateModelMetadata */ - CreateModelMetadata.fromObject = function fromObject(object) { + CreateModelMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CreateModelMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CreateModelMetadata(); if (object.model != null) message.model = String(object.model); @@ -183411,7 +191269,7 @@ function TuneModelMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -183476,9 +191334,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelMetadata.decode = function decode(reader, length, error) { + TuneModelMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.TuneModelMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -183490,7 +191352,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -183521,9 +191383,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelMetadata.verify = function verify(message) { + TuneModelMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.model != null && message.hasOwnProperty("model")) if (!$util.isString(message.model)) return "model: string expected"; @@ -183538,9 +191404,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.TuneModelMetadata} TuneModelMetadata */ - TuneModelMetadata.fromObject = function fromObject(object) { + TuneModelMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.TuneModelMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.TuneModelMetadata(); if (object.model != null) message.model = String(object.model); @@ -183615,7 +191485,7 @@ function TuneModelResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -183670,9 +191540,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TuneModelResponse.decode = function decode(reader, length, error) { + TuneModelResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.TuneModelResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -183680,7 +191554,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -183711,9 +191585,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TuneModelResponse.verify = function verify(message) { + TuneModelResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -183725,9 +191603,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.TuneModelResponse} TuneModelResponse */ - TuneModelResponse.fromObject = function fromObject(object) { + TuneModelResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.TuneModelResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.TuneModelResponse(); }; @@ -183870,7 +191752,7 @@ this.labels = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -184009,9 +191891,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictRequest.decode = function decode(reader, length, error) { + PredictRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PredictRequest(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -184023,7 +191909,7 @@ break; } case 2: { - message.userEvent = $root.google.cloud.retail.v2beta.UserEvent.decode(reader, reader.uint32()); + message.userEvent = $root.google.cloud.retail.v2beta.UserEvent.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -184055,13 +191941,15 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.params, key); message.params[key] = value; break; } @@ -184081,15 +191969,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -184120,14 +192010,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictRequest.verify = function verify(message) { + PredictRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.placement != null && message.hasOwnProperty("placement")) if (!$util.isString(message.placement)) return "placement: string expected"; if (message.userEvent != null && message.hasOwnProperty("userEvent")) { - var error = $root.google.cloud.retail.v2beta.UserEvent.verify(message.userEvent); + var error = $root.google.cloud.retail.v2beta.UserEvent.verify(message.userEvent, long + 1); if (error) return "userEvent." + error; } @@ -184148,7 +192042,7 @@ return "params: object expected"; var key = Object.keys(message.params); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.params[key[i]]); + var error = $root.google.protobuf.Value.verify(message.params[key[i]], long + 1); if (error) return "params." + error; } @@ -184172,16 +192066,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PredictRequest} PredictRequest */ - PredictRequest.fromObject = function fromObject(object) { + PredictRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PredictRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PredictRequest(); if (object.placement != null) message.placement = String(object.placement); if (object.userEvent != null) { if (typeof object.userEvent !== "object") throw TypeError(".google.cloud.retail.v2beta.PredictRequest.userEvent: object expected"); - message.userEvent = $root.google.cloud.retail.v2beta.UserEvent.fromObject(object.userEvent); + message.userEvent = $root.google.cloud.retail.v2beta.UserEvent.fromObject(object.userEvent, long + 1); } if (object.pageSize != null) message.pageSize = object.pageSize | 0; @@ -184196,17 +192094,22 @@ throw TypeError(".google.cloud.retail.v2beta.PredictRequest.params: object expected"); message.params = {}; for (var keys = Object.keys(object.params), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.params, keys[i]); if (typeof object.params[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.PredictRequest.params: object expected"); - message.params[keys[i]] = $root.google.protobuf.Value.fromObject(object.params[keys[i]]); + message.params[keys[i]] = $root.google.protobuf.Value.fromObject(object.params[keys[i]], long + 1); } } if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".google.cloud.retail.v2beta.PredictRequest.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } return message; }; @@ -184251,13 +192154,19 @@ var keys2; if (message.params && (keys2 = Object.keys(message.params)).length) { object.params = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.params, keys2[j]); object.params[keys2[j]] = $root.google.protobuf.Value.toObject(message.params[keys2[j]], options); + } } if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } return object; }; @@ -184316,7 +192225,7 @@ this.missingIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -184413,9 +192322,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictResponse.decode = function decode(reader, length, error) { + PredictResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PredictResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -184425,7 +192338,7 @@ case 1: { if (!(message.results && message.results.length)) message.results = []; - message.results.push($root.google.cloud.retail.v2beta.PredictResponse.PredictionResult.decode(reader, reader.uint32())); + message.results.push($root.google.cloud.retail.v2beta.PredictResponse.PredictionResult.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -184443,7 +192356,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -184474,14 +192387,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictResponse.verify = function verify(message) { + PredictResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.results != null && message.hasOwnProperty("results")) { if (!Array.isArray(message.results)) return "results: array expected"; for (var i = 0; i < message.results.length; ++i) { - var error = $root.google.cloud.retail.v2beta.PredictResponse.PredictionResult.verify(message.results[i]); + var error = $root.google.cloud.retail.v2beta.PredictResponse.PredictionResult.verify(message.results[i], long + 1); if (error) return "results." + error; } @@ -184510,9 +192427,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PredictResponse} PredictResponse */ - PredictResponse.fromObject = function fromObject(object) { + PredictResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PredictResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PredictResponse(); if (object.results) { if (!Array.isArray(object.results)) @@ -184521,7 +192442,7 @@ for (var i = 0; i < object.results.length; ++i) { if (typeof object.results[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.PredictResponse.results: object expected"); - message.results[i] = $root.google.cloud.retail.v2beta.PredictResponse.PredictionResult.fromObject(object.results[i]); + message.results[i] = $root.google.cloud.retail.v2beta.PredictResponse.PredictionResult.fromObject(object.results[i], long + 1); } } if (object.attributionToken != null) @@ -184624,7 +192545,7 @@ this.metadata = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -184702,9 +192623,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PredictionResult.decode = function decode(reader, length, error) { + PredictionResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PredictResponse.PredictionResult(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -184728,18 +192653,20 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.metadata, key); message.metadata[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -184770,9 +192697,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PredictionResult.verify = function verify(message) { + PredictionResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; @@ -184781,7 +192712,7 @@ return "metadata: object expected"; var key = Object.keys(message.metadata); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.metadata[key[i]]); + var error = $root.google.protobuf.Value.verify(message.metadata[key[i]], long + 1); if (error) return "metadata." + error; } @@ -184797,9 +192728,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PredictResponse.PredictionResult} PredictionResult */ - PredictionResult.fromObject = function fromObject(object) { + PredictionResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PredictResponse.PredictionResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PredictResponse.PredictionResult(); if (object.id != null) message.id = String(object.id); @@ -184808,9 +192743,11 @@ throw TypeError(".google.cloud.retail.v2beta.PredictResponse.PredictionResult.metadata: object expected"); message.metadata = {}; for (var keys = Object.keys(object.metadata), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.metadata, keys[i]); if (typeof object.metadata[keys[i]] !== "object") throw TypeError(".google.cloud.retail.v2beta.PredictResponse.PredictionResult.metadata: object expected"); - message.metadata[keys[i]] = $root.google.protobuf.Value.fromObject(object.metadata[keys[i]]); + message.metadata[keys[i]] = $root.google.protobuf.Value.fromObject(object.metadata[keys[i]], long + 1); } } return message; @@ -184838,8 +192775,11 @@ var keys2; if (message.metadata && (keys2 = Object.keys(message.metadata)).length) { object.metadata = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.metadata, keys2[j]); object.metadata[keys2[j]] = $root.google.protobuf.Value.toObject(message.metadata[keys2[j]], options); + } } return object; }; @@ -185362,7 +193302,7 @@ function CreateProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -185447,9 +193387,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateProductRequest.decode = function decode(reader, length, error) { + CreateProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CreateProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -185461,7 +193405,7 @@ break; } case 2: { - message.product = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -185469,7 +193413,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -185500,14 +193444,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateProductRequest.verify = function verify(message) { + CreateProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2beta.Product.verify(message.product); + var error = $root.google.cloud.retail.v2beta.Product.verify(message.product, long + 1); if (error) return "product." + error; } @@ -185525,16 +193473,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CreateProductRequest} CreateProductRequest */ - CreateProductRequest.fromObject = function fromObject(object) { + CreateProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CreateProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CreateProductRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2beta.CreateProductRequest.product: object expected"); - message.product = $root.google.cloud.retail.v2beta.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2beta.Product.fromObject(object.product, long + 1); } if (object.productId != null) message.productId = String(object.productId); @@ -185617,7 +193569,7 @@ function GetProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -185682,9 +193634,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetProductRequest.decode = function decode(reader, length, error) { + GetProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -185696,7 +193652,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -185727,9 +193683,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetProductRequest.verify = function verify(message) { + GetProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -185744,9 +193704,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetProductRequest} GetProductRequest */ - GetProductRequest.fromObject = function fromObject(object) { + GetProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetProductRequest(); if (object.name != null) message.name = String(object.name); @@ -185824,7 +193788,7 @@ function UpdateProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -185909,9 +193873,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateProductRequest.decode = function decode(reader, length, error) { + UpdateProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -185919,11 +193887,11 @@ break; switch (tag >>> 3) { case 1: { - message.product = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32()); + message.product = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -185931,7 +193899,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -185962,16 +193930,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateProductRequest.verify = function verify(message) { + UpdateProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) { - var error = $root.google.cloud.retail.v2beta.Product.verify(message.product); + var error = $root.google.cloud.retail.v2beta.Product.verify(message.product, long + 1); if (error) return "product." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -185989,19 +193961,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateProductRequest} UpdateProductRequest */ - UpdateProductRequest.fromObject = function fromObject(object) { + UpdateProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateProductRequest(); if (object.product != null) { if (typeof object.product !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateProductRequest.product: object expected"); - message.product = $root.google.cloud.retail.v2beta.Product.fromObject(object.product); + message.product = $root.google.cloud.retail.v2beta.Product.fromObject(object.product, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateProductRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -186084,7 +194060,7 @@ function DeleteProductRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -186149,9 +194125,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteProductRequest.decode = function decode(reader, length, error) { + DeleteProductRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.DeleteProductRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -186163,7 +194143,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -186194,9 +194174,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteProductRequest.verify = function verify(message) { + DeleteProductRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -186211,9 +194195,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.DeleteProductRequest} DeleteProductRequest */ - DeleteProductRequest.fromObject = function fromObject(object) { + DeleteProductRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.DeleteProductRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.DeleteProductRequest(); if (object.name != null) message.name = String(object.name); @@ -186293,7 +194281,7 @@ function ListProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -186398,9 +194386,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListProductsRequest.decode = function decode(reader, length, error) { + ListProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -186424,11 +194416,11 @@ break; } case 5: { - message.readMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.readMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -186459,9 +194451,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListProductsRequest.verify = function verify(message) { + ListProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -186475,7 +194471,7 @@ if (!$util.isString(message.filter)) return "filter: string expected"; if (message.readMask != null && message.hasOwnProperty("readMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.readMask); + var error = $root.google.protobuf.FieldMask.verify(message.readMask, long + 1); if (error) return "readMask." + error; } @@ -186490,9 +194486,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListProductsRequest} ListProductsRequest */ - ListProductsRequest.fromObject = function fromObject(object) { + ListProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -186505,7 +194505,7 @@ if (object.readMask != null) { if (typeof object.readMask !== "object") throw TypeError(".google.cloud.retail.v2beta.ListProductsRequest.readMask: object expected"); - message.readMask = $root.google.protobuf.FieldMask.fromObject(object.readMask); + message.readMask = $root.google.protobuf.FieldMask.fromObject(object.readMask, long + 1); } return message; }; @@ -186594,7 +194594,7 @@ this.products = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -186670,9 +194670,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListProductsResponse.decode = function decode(reader, length, error) { + ListProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -186682,7 +194686,7 @@ case 1: { if (!(message.products && message.products.length)) message.products = []; - message.products.push($root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32())); + message.products.push($root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -186690,7 +194694,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -186721,14 +194725,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListProductsResponse.verify = function verify(message) { + ListProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.products != null && message.hasOwnProperty("products")) { if (!Array.isArray(message.products)) return "products: array expected"; for (var i = 0; i < message.products.length; ++i) { - var error = $root.google.cloud.retail.v2beta.Product.verify(message.products[i]); + var error = $root.google.cloud.retail.v2beta.Product.verify(message.products[i], long + 1); if (error) return "products." + error; } @@ -186747,9 +194755,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListProductsResponse} ListProductsResponse */ - ListProductsResponse.fromObject = function fromObject(object) { + ListProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListProductsResponse(); if (object.products) { if (!Array.isArray(object.products)) @@ -186758,7 +194770,7 @@ for (var i = 0; i < object.products.length; ++i) { if (typeof object.products[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ListProductsResponse.products: object expected"); - message.products[i] = $root.google.cloud.retail.v2beta.Product.fromObject(object.products[i]); + message.products[i] = $root.google.cloud.retail.v2beta.Product.fromObject(object.products[i], long + 1); } } if (object.nextPageToken != null) @@ -186845,7 +194857,7 @@ function SetInventoryRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -186940,9 +194952,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryRequest.decode = function decode(reader, length, error) { + SetInventoryRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SetInventoryRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -186950,15 +194966,15 @@ break; switch (tag >>> 3) { case 1: { - message.inventory = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32()); + message.inventory = $root.google.cloud.retail.v2beta.Product.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.setMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.setMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.setTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -186966,7 +194982,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -186997,21 +195013,25 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryRequest.verify = function verify(message) { + SetInventoryRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.inventory != null && message.hasOwnProperty("inventory")) { - var error = $root.google.cloud.retail.v2beta.Product.verify(message.inventory); + var error = $root.google.cloud.retail.v2beta.Product.verify(message.inventory, long + 1); if (error) return "inventory." + error; } if (message.setMask != null && message.hasOwnProperty("setMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.setMask); + var error = $root.google.protobuf.FieldMask.verify(message.setMask, long + 1); if (error) return "setMask." + error; } if (message.setTime != null && message.hasOwnProperty("setTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.setTime); + var error = $root.google.protobuf.Timestamp.verify(message.setTime, long + 1); if (error) return "setTime." + error; } @@ -187029,24 +195049,28 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SetInventoryRequest} SetInventoryRequest */ - SetInventoryRequest.fromObject = function fromObject(object) { + SetInventoryRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SetInventoryRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.SetInventoryRequest(); if (object.inventory != null) { if (typeof object.inventory !== "object") throw TypeError(".google.cloud.retail.v2beta.SetInventoryRequest.inventory: object expected"); - message.inventory = $root.google.cloud.retail.v2beta.Product.fromObject(object.inventory); + message.inventory = $root.google.cloud.retail.v2beta.Product.fromObject(object.inventory, long + 1); } if (object.setMask != null) { if (typeof object.setMask !== "object") throw TypeError(".google.cloud.retail.v2beta.SetInventoryRequest.setMask: object expected"); - message.setMask = $root.google.protobuf.FieldMask.fromObject(object.setMask); + message.setMask = $root.google.protobuf.FieldMask.fromObject(object.setMask, long + 1); } if (object.setTime != null) { if (typeof object.setTime !== "object") throw TypeError(".google.cloud.retail.v2beta.SetInventoryRequest.setTime: object expected"); - message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime); + message.setTime = $root.google.protobuf.Timestamp.fromObject(object.setTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -187131,7 +195155,7 @@ function SetInventoryMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -187186,9 +195210,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryMetadata.decode = function decode(reader, length, error) { + SetInventoryMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SetInventoryMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -187196,7 +195224,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -187227,9 +195255,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryMetadata.verify = function verify(message) { + SetInventoryMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -187241,9 +195273,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SetInventoryMetadata} SetInventoryMetadata */ - SetInventoryMetadata.fromObject = function fromObject(object) { + SetInventoryMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SetInventoryMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.SetInventoryMetadata(); }; @@ -187308,7 +195344,7 @@ function SetInventoryResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -187363,9 +195399,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetInventoryResponse.decode = function decode(reader, length, error) { + SetInventoryResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.SetInventoryResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -187373,7 +195413,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -187404,9 +195444,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetInventoryResponse.verify = function verify(message) { + SetInventoryResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -187418,9 +195462,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.SetInventoryResponse} SetInventoryResponse */ - SetInventoryResponse.fromObject = function fromObject(object) { + SetInventoryResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.SetInventoryResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.SetInventoryResponse(); }; @@ -187491,7 +195539,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -187597,9 +195645,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesRequest.decode = function decode(reader, length, error) { + AddFulfillmentPlacesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AddFulfillmentPlacesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -187621,7 +195673,7 @@ break; } case 4: { - message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -187629,7 +195681,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -187660,9 +195712,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesRequest.verify = function verify(message) { + AddFulfillmentPlacesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -187677,7 +195733,7 @@ return "placeIds: string[] expected"; } if (message.addTime != null && message.hasOwnProperty("addTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.addTime); + var error = $root.google.protobuf.Timestamp.verify(message.addTime, long + 1); if (error) return "addTime." + error; } @@ -187695,9 +195751,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AddFulfillmentPlacesRequest} AddFulfillmentPlacesRequest */ - AddFulfillmentPlacesRequest.fromObject = function fromObject(object) { + AddFulfillmentPlacesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AddFulfillmentPlacesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.AddFulfillmentPlacesRequest(); if (object.product != null) message.product = String(object.product); @@ -187713,7 +195773,7 @@ if (object.addTime != null) { if (typeof object.addTime !== "object") throw TypeError(".google.cloud.retail.v2beta.AddFulfillmentPlacesRequest.addTime: object expected"); - message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime); + message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -187805,7 +195865,7 @@ function AddFulfillmentPlacesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -187860,9 +195920,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesMetadata.decode = function decode(reader, length, error) { + AddFulfillmentPlacesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AddFulfillmentPlacesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -187870,7 +195934,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -187901,9 +195965,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesMetadata.verify = function verify(message) { + AddFulfillmentPlacesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -187915,9 +195983,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AddFulfillmentPlacesMetadata} AddFulfillmentPlacesMetadata */ - AddFulfillmentPlacesMetadata.fromObject = function fromObject(object) { + AddFulfillmentPlacesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AddFulfillmentPlacesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.AddFulfillmentPlacesMetadata(); }; @@ -187982,7 +196054,7 @@ function AddFulfillmentPlacesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -188037,9 +196109,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddFulfillmentPlacesResponse.decode = function decode(reader, length, error) { + AddFulfillmentPlacesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AddFulfillmentPlacesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -188047,7 +196123,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -188078,9 +196154,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddFulfillmentPlacesResponse.verify = function verify(message) { + AddFulfillmentPlacesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -188092,9 +196172,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AddFulfillmentPlacesResponse} AddFulfillmentPlacesResponse */ - AddFulfillmentPlacesResponse.fromObject = function fromObject(object) { + AddFulfillmentPlacesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AddFulfillmentPlacesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.AddFulfillmentPlacesResponse(); }; @@ -188165,7 +196249,7 @@ this.localInventories = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -188271,9 +196355,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesRequest.decode = function decode(reader, length, error) { + AddLocalInventoriesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AddLocalInventoriesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -188287,15 +196375,15 @@ case 2: { if (!(message.localInventories && message.localInventories.length)) message.localInventories = []; - message.localInventories.push($root.google.cloud.retail.v2beta.LocalInventory.decode(reader, reader.uint32())); + message.localInventories.push($root.google.cloud.retail.v2beta.LocalInventory.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { - message.addMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.addMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.addTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -188303,7 +196391,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -188334,9 +196422,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesRequest.verify = function verify(message) { + AddLocalInventoriesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -188344,18 +196436,18 @@ if (!Array.isArray(message.localInventories)) return "localInventories: array expected"; for (var i = 0; i < message.localInventories.length; ++i) { - var error = $root.google.cloud.retail.v2beta.LocalInventory.verify(message.localInventories[i]); + var error = $root.google.cloud.retail.v2beta.LocalInventory.verify(message.localInventories[i], long + 1); if (error) return "localInventories." + error; } } if (message.addMask != null && message.hasOwnProperty("addMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.addMask); + var error = $root.google.protobuf.FieldMask.verify(message.addMask, long + 1); if (error) return "addMask." + error; } if (message.addTime != null && message.hasOwnProperty("addTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.addTime); + var error = $root.google.protobuf.Timestamp.verify(message.addTime, long + 1); if (error) return "addTime." + error; } @@ -188373,9 +196465,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AddLocalInventoriesRequest} AddLocalInventoriesRequest */ - AddLocalInventoriesRequest.fromObject = function fromObject(object) { + AddLocalInventoriesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AddLocalInventoriesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.AddLocalInventoriesRequest(); if (object.product != null) message.product = String(object.product); @@ -188386,18 +196482,18 @@ for (var i = 0; i < object.localInventories.length; ++i) { if (typeof object.localInventories[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.AddLocalInventoriesRequest.localInventories: object expected"); - message.localInventories[i] = $root.google.cloud.retail.v2beta.LocalInventory.fromObject(object.localInventories[i]); + message.localInventories[i] = $root.google.cloud.retail.v2beta.LocalInventory.fromObject(object.localInventories[i], long + 1); } } if (object.addMask != null) { if (typeof object.addMask !== "object") throw TypeError(".google.cloud.retail.v2beta.AddLocalInventoriesRequest.addMask: object expected"); - message.addMask = $root.google.protobuf.FieldMask.fromObject(object.addMask); + message.addMask = $root.google.protobuf.FieldMask.fromObject(object.addMask, long + 1); } if (object.addTime != null) { if (typeof object.addTime !== "object") throw TypeError(".google.cloud.retail.v2beta.AddLocalInventoriesRequest.addTime: object expected"); - message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime); + message.addTime = $root.google.protobuf.Timestamp.fromObject(object.addTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -188489,7 +196585,7 @@ function AddLocalInventoriesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -188544,9 +196640,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesMetadata.decode = function decode(reader, length, error) { + AddLocalInventoriesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AddLocalInventoriesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -188554,7 +196654,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -188585,9 +196685,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesMetadata.verify = function verify(message) { + AddLocalInventoriesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -188599,9 +196703,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AddLocalInventoriesMetadata} AddLocalInventoriesMetadata */ - AddLocalInventoriesMetadata.fromObject = function fromObject(object) { + AddLocalInventoriesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AddLocalInventoriesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.AddLocalInventoriesMetadata(); }; @@ -188666,7 +196774,7 @@ function AddLocalInventoriesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -188721,9 +196829,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddLocalInventoriesResponse.decode = function decode(reader, length, error) { + AddLocalInventoriesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AddLocalInventoriesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -188731,7 +196843,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -188762,9 +196874,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddLocalInventoriesResponse.verify = function verify(message) { + AddLocalInventoriesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -188776,9 +196892,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AddLocalInventoriesResponse} AddLocalInventoriesResponse */ - AddLocalInventoriesResponse.fromObject = function fromObject(object) { + AddLocalInventoriesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AddLocalInventoriesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.AddLocalInventoriesResponse(); }; @@ -188848,7 +196968,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -188944,9 +197064,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesRequest.decode = function decode(reader, length, error) { + RemoveLocalInventoriesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RemoveLocalInventoriesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -188964,7 +197088,7 @@ break; } case 5: { - message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -188972,7 +197096,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -189003,9 +197127,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesRequest.verify = function verify(message) { + RemoveLocalInventoriesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -189017,7 +197145,7 @@ return "placeIds: string[] expected"; } if (message.removeTime != null && message.hasOwnProperty("removeTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.removeTime); + var error = $root.google.protobuf.Timestamp.verify(message.removeTime, long + 1); if (error) return "removeTime." + error; } @@ -189035,9 +197163,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RemoveLocalInventoriesRequest} RemoveLocalInventoriesRequest */ - RemoveLocalInventoriesRequest.fromObject = function fromObject(object) { + RemoveLocalInventoriesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RemoveLocalInventoriesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.RemoveLocalInventoriesRequest(); if (object.product != null) message.product = String(object.product); @@ -189051,7 +197183,7 @@ if (object.removeTime != null) { if (typeof object.removeTime !== "object") throw TypeError(".google.cloud.retail.v2beta.RemoveLocalInventoriesRequest.removeTime: object expected"); - message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime); + message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -189140,7 +197272,7 @@ function RemoveLocalInventoriesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -189195,9 +197327,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesMetadata.decode = function decode(reader, length, error) { + RemoveLocalInventoriesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RemoveLocalInventoriesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -189205,7 +197341,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -189236,9 +197372,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesMetadata.verify = function verify(message) { + RemoveLocalInventoriesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -189250,9 +197390,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RemoveLocalInventoriesMetadata} RemoveLocalInventoriesMetadata */ - RemoveLocalInventoriesMetadata.fromObject = function fromObject(object) { + RemoveLocalInventoriesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RemoveLocalInventoriesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.RemoveLocalInventoriesMetadata(); }; @@ -189317,7 +197461,7 @@ function RemoveLocalInventoriesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -189372,9 +197516,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveLocalInventoriesResponse.decode = function decode(reader, length, error) { + RemoveLocalInventoriesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RemoveLocalInventoriesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -189382,7 +197530,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -189413,9 +197561,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveLocalInventoriesResponse.verify = function verify(message) { + RemoveLocalInventoriesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -189427,9 +197579,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RemoveLocalInventoriesResponse} RemoveLocalInventoriesResponse */ - RemoveLocalInventoriesResponse.fromObject = function fromObject(object) { + RemoveLocalInventoriesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RemoveLocalInventoriesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.RemoveLocalInventoriesResponse(); }; @@ -189500,7 +197656,7 @@ this.placeIds = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -189606,9 +197762,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesRequest.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -189630,7 +197790,7 @@ break; } case 4: { - message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.removeTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -189638,7 +197798,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -189669,9 +197829,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesRequest.verify = function verify(message) { + RemoveFulfillmentPlacesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.product != null && message.hasOwnProperty("product")) if (!$util.isString(message.product)) return "product: string expected"; @@ -189686,7 +197850,7 @@ return "placeIds: string[] expected"; } if (message.removeTime != null && message.hasOwnProperty("removeTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.removeTime); + var error = $root.google.protobuf.Timestamp.verify(message.removeTime, long + 1); if (error) return "removeTime." + error; } @@ -189704,9 +197868,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RemoveFulfillmentPlacesRequest} RemoveFulfillmentPlacesRequest */ - RemoveFulfillmentPlacesRequest.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesRequest(); if (object.product != null) message.product = String(object.product); @@ -189722,7 +197890,7 @@ if (object.removeTime != null) { if (typeof object.removeTime !== "object") throw TypeError(".google.cloud.retail.v2beta.RemoveFulfillmentPlacesRequest.removeTime: object expected"); - message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime); + message.removeTime = $root.google.protobuf.Timestamp.fromObject(object.removeTime, long + 1); } if (object.allowMissing != null) message.allowMissing = Boolean(object.allowMissing); @@ -189814,7 +197982,7 @@ function RemoveFulfillmentPlacesMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -189869,9 +198037,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesMetadata.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -189879,7 +198051,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -189910,9 +198082,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesMetadata.verify = function verify(message) { + RemoveFulfillmentPlacesMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -189924,9 +198100,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RemoveFulfillmentPlacesMetadata} RemoveFulfillmentPlacesMetadata */ - RemoveFulfillmentPlacesMetadata.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesMetadata(); }; @@ -189991,7 +198171,7 @@ function RemoveFulfillmentPlacesResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -190046,9 +198226,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveFulfillmentPlacesResponse.decode = function decode(reader, length, error) { + RemoveFulfillmentPlacesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -190056,7 +198240,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -190087,9 +198271,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveFulfillmentPlacesResponse.verify = function verify(message) { + RemoveFulfillmentPlacesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -190101,9 +198289,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RemoveFulfillmentPlacesResponse} RemoveFulfillmentPlacesResponse */ - RemoveFulfillmentPlacesResponse.fromObject = function fromObject(object) { + RemoveFulfillmentPlacesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.RemoveFulfillmentPlacesResponse(); }; @@ -190168,7 +198360,7 @@ function PurgeMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -190223,9 +198415,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeMetadata.decode = function decode(reader, length, error) { + PurgeMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PurgeMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -190233,7 +198429,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -190264,9 +198460,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeMetadata.verify = function verify(message) { + PurgeMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -190278,9 +198478,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PurgeMetadata} PurgeMetadata */ - PurgeMetadata.fromObject = function fromObject(object) { + PurgeMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PurgeMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.PurgeMetadata(); }; @@ -190349,7 +198553,7 @@ function PurgeProductsMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -190444,9 +198648,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsMetadata.decode = function decode(reader, length, error) { + PurgeProductsMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PurgeProductsMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -190454,11 +198662,11 @@ break; switch (tag >>> 3) { case 1: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -190470,7 +198678,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -190501,16 +198709,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsMetadata.verify = function verify(message) { + PurgeProductsMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } @@ -190531,19 +198743,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PurgeProductsMetadata} PurgeProductsMetadata */ - PurgeProductsMetadata.fromObject = function fromObject(object) { + PurgeProductsMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PurgeProductsMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PurgeProductsMetadata(); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.retail.v2beta.PurgeProductsMetadata.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.retail.v2beta.PurgeProductsMetadata.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.successCount != null) if ($util.Long) @@ -190661,7 +198877,7 @@ function PurgeProductsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -190746,9 +198962,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsRequest.decode = function decode(reader, length, error) { + PurgeProductsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PurgeProductsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -190768,7 +198988,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -190799,9 +199019,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsRequest.verify = function verify(message) { + PurgeProductsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -190822,9 +199046,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PurgeProductsRequest} PurgeProductsRequest */ - PurgeProductsRequest.fromObject = function fromObject(object) { + PurgeProductsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PurgeProductsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PurgeProductsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -190913,7 +199141,7 @@ this.purgeSample = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -190989,9 +199217,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeProductsResponse.decode = function decode(reader, length, error) { + PurgeProductsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PurgeProductsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -191009,7 +199241,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -191040,9 +199272,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeProductsResponse.verify = function verify(message) { + PurgeProductsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.purgeCount != null && message.hasOwnProperty("purgeCount")) if (!$util.isInteger(message.purgeCount) && !(message.purgeCount && $util.isInteger(message.purgeCount.low) && $util.isInteger(message.purgeCount.high))) return "purgeCount: integer|Long expected"; @@ -191064,9 +199300,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PurgeProductsResponse} PurgeProductsResponse */ - PurgeProductsResponse.fromObject = function fromObject(object) { + PurgeProductsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PurgeProductsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PurgeProductsResponse(); if (object.purgeCount != null) if ($util.Long) @@ -191172,7 +199412,7 @@ function PurgeUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -191257,9 +199497,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeUserEventsRequest.decode = function decode(reader, length, error) { + PurgeUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PurgeUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -191279,7 +199523,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -191310,9 +199554,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeUserEventsRequest.verify = function verify(message) { + PurgeUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -191333,9 +199581,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PurgeUserEventsRequest} PurgeUserEventsRequest */ - PurgeUserEventsRequest.fromObject = function fromObject(object) { + PurgeUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PurgeUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PurgeUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -191422,7 +199674,7 @@ function PurgeUserEventsResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -191487,9 +199739,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PurgeUserEventsResponse.decode = function decode(reader, length, error) { + PurgeUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.PurgeUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -191501,7 +199757,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -191532,9 +199788,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PurgeUserEventsResponse.verify = function verify(message) { + PurgeUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.purgedEventsCount != null && message.hasOwnProperty("purgedEventsCount")) if (!$util.isInteger(message.purgedEventsCount) && !(message.purgedEventsCount && $util.isInteger(message.purgedEventsCount.low) && $util.isInteger(message.purgedEventsCount.high))) return "purgedEventsCount: integer|Long expected"; @@ -191549,9 +199809,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.PurgeUserEventsResponse} PurgeUserEventsResponse */ - PurgeUserEventsResponse.fromObject = function fromObject(object) { + PurgeUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.PurgeUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.PurgeUserEventsResponse(); if (object.purgedEventsCount != null) if ($util.Long) @@ -191643,7 +199907,7 @@ this.alertPolicies = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -191719,9 +199983,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AlertConfig.decode = function decode(reader, length, error) { + AlertConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AlertConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -191735,11 +200003,11 @@ case 2: { if (!(message.alertPolicies && message.alertPolicies.length)) message.alertPolicies = []; - message.alertPolicies.push($root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.decode(reader, reader.uint32())); + message.alertPolicies.push($root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -191770,9 +200038,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AlertConfig.verify = function verify(message) { + AlertConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -191780,7 +200052,7 @@ if (!Array.isArray(message.alertPolicies)) return "alertPolicies: array expected"; for (var i = 0; i < message.alertPolicies.length; ++i) { - var error = $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.verify(message.alertPolicies[i]); + var error = $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.verify(message.alertPolicies[i], long + 1); if (error) return "alertPolicies." + error; } @@ -191796,9 +200068,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AlertConfig} AlertConfig */ - AlertConfig.fromObject = function fromObject(object) { + AlertConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AlertConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.AlertConfig(); if (object.name != null) message.name = String(object.name); @@ -191809,7 +200085,7 @@ for (var i = 0; i < object.alertPolicies.length; ++i) { if (typeof object.alertPolicies[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.AlertConfig.alertPolicies: object expected"); - message.alertPolicies[i] = $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.fromObject(object.alertPolicies[i]); + message.alertPolicies[i] = $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.fromObject(object.alertPolicies[i], long + 1); } } return message; @@ -191891,7 +200167,7 @@ this.recipients = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -191977,9 +200253,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AlertPolicy.decode = function decode(reader, length, error) { + AlertPolicy.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy(); while (reader.pos < end) { var tag = reader.uint32(); @@ -191997,11 +200277,11 @@ case 3: { if (!(message.recipients && message.recipients.length)) message.recipients = []; - message.recipients.push($root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient.decode(reader, reader.uint32())); + message.recipients.push($root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -192032,9 +200312,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AlertPolicy.verify = function verify(message) { + AlertPolicy.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.alertGroup != null && message.hasOwnProperty("alertGroup")) if (!$util.isString(message.alertGroup)) return "alertGroup: string expected"; @@ -192051,7 +200335,7 @@ if (!Array.isArray(message.recipients)) return "recipients: array expected"; for (var i = 0; i < message.recipients.length; ++i) { - var error = $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient.verify(message.recipients[i]); + var error = $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient.verify(message.recipients[i], long + 1); if (error) return "recipients." + error; } @@ -192067,9 +200351,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AlertConfig.AlertPolicy} AlertPolicy */ - AlertPolicy.fromObject = function fromObject(object) { + AlertPolicy.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy(); if (object.alertGroup != null) message.alertGroup = String(object.alertGroup); @@ -192100,7 +200388,7 @@ for (var i = 0; i < object.recipients.length; ++i) { if (typeof object.recipients[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.AlertConfig.AlertPolicy.recipients: object expected"); - message.recipients[i] = $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient.fromObject(object.recipients[i]); + message.recipients[i] = $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient.fromObject(object.recipients[i], long + 1); } } return message; @@ -192183,7 +200471,7 @@ function Recipient(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -192248,9 +200536,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Recipient.decode = function decode(reader, length, error) { + Recipient.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient(); while (reader.pos < end) { var tag = reader.uint32(); @@ -192262,7 +200554,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -192293,9 +200585,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Recipient.verify = function verify(message) { + Recipient.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.emailAddress != null && message.hasOwnProperty("emailAddress")) if (!$util.isString(message.emailAddress)) return "emailAddress: string expected"; @@ -192310,9 +200606,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient} Recipient */ - Recipient.fromObject = function fromObject(object) { + Recipient.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.AlertConfig.AlertPolicy.Recipient(); if (object.emailAddress != null) message.emailAddress = String(object.emailAddress); @@ -192511,7 +200811,7 @@ function GetAlertConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -192576,9 +200876,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetAlertConfigRequest.decode = function decode(reader, length, error) { + GetAlertConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetAlertConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -192590,7 +200894,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -192621,9 +200925,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetAlertConfigRequest.verify = function verify(message) { + GetAlertConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -192638,9 +200946,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetAlertConfigRequest} GetAlertConfigRequest */ - GetAlertConfigRequest.fromObject = function fromObject(object) { + GetAlertConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetAlertConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetAlertConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -192717,7 +201029,7 @@ function UpdateAlertConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -192792,9 +201104,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateAlertConfigRequest.decode = function decode(reader, length, error) { + UpdateAlertConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateAlertConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -192802,15 +201118,15 @@ break; switch (tag >>> 3) { case 1: { - message.alertConfig = $root.google.cloud.retail.v2beta.AlertConfig.decode(reader, reader.uint32()); + message.alertConfig = $root.google.cloud.retail.v2beta.AlertConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -192841,16 +201157,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateAlertConfigRequest.verify = function verify(message) { + UpdateAlertConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.alertConfig != null && message.hasOwnProperty("alertConfig")) { - var error = $root.google.cloud.retail.v2beta.AlertConfig.verify(message.alertConfig); + var error = $root.google.cloud.retail.v2beta.AlertConfig.verify(message.alertConfig, long + 1); if (error) return "alertConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -192865,19 +201185,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateAlertConfigRequest} UpdateAlertConfigRequest */ - UpdateAlertConfigRequest.fromObject = function fromObject(object) { + UpdateAlertConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateAlertConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateAlertConfigRequest(); if (object.alertConfig != null) { if (typeof object.alertConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateAlertConfigRequest.alertConfig: object expected"); - message.alertConfig = $root.google.cloud.retail.v2beta.AlertConfig.fromObject(object.alertConfig); + message.alertConfig = $root.google.cloud.retail.v2beta.AlertConfig.fromObject(object.alertConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateAlertConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -192984,7 +201308,7 @@ this.solutionTypes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -193252,9 +201576,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServingConfig.decode = function decode(reader, length, error) { + ServingConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ServingConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -193284,7 +201612,7 @@ break; } case 6: { - message.dynamicFacetSpec = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32()); + message.dynamicFacetSpec = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -193352,7 +201680,7 @@ break; } case 21: { - message.personalizationSpec = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32()); + message.personalizationSpec = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -193367,7 +201695,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -193398,9 +201726,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServingConfig.verify = function verify(message) { + ServingConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -193421,7 +201753,7 @@ return "facetControlIds: string[] expected"; } if (message.dynamicFacetSpec != null && message.hasOwnProperty("dynamicFacetSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.verify(message.dynamicFacetSpec, long + 1); if (error) return "dynamicFacetSpec." + error; } @@ -193500,7 +201832,7 @@ if (typeof message.ignoreRecsDenylist !== "boolean") return "ignoreRecsDenylist: boolean expected"; if (message.personalizationSpec != null && message.hasOwnProperty("personalizationSpec")) { - var error = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec); + var error = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.verify(message.personalizationSpec, long + 1); if (error) return "personalizationSpec." + error; } @@ -193528,9 +201860,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ServingConfig} ServingConfig */ - ServingConfig.fromObject = function fromObject(object) { + ServingConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ServingConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ServingConfig(); if (object.name != null) message.name = String(object.name); @@ -193550,7 +201886,7 @@ if (object.dynamicFacetSpec != null) { if (typeof object.dynamicFacetSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.ServingConfig.dynamicFacetSpec: object expected"); - message.dynamicFacetSpec = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec); + message.dynamicFacetSpec = $root.google.cloud.retail.v2beta.SearchRequest.DynamicFacetSpec.fromObject(object.dynamicFacetSpec, long + 1); } if (object.boostControlIds) { if (!Array.isArray(object.boostControlIds)) @@ -193637,7 +201973,7 @@ if (object.personalizationSpec != null) { if (typeof object.personalizationSpec !== "object") throw TypeError(".google.cloud.retail.v2beta.ServingConfig.personalizationSpec: object expected"); - message.personalizationSpec = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec); + message.personalizationSpec = $root.google.cloud.retail.v2beta.SearchRequest.PersonalizationSpec.fromObject(object.personalizationSpec, long + 1); } if (object.solutionTypes) { if (!Array.isArray(object.solutionTypes)) @@ -194110,7 +202446,7 @@ function CreateServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -194195,9 +202531,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateServingConfigRequest.decode = function decode(reader, length, error) { + CreateServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CreateServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -194209,7 +202549,7 @@ break; } case 2: { - message.servingConfig = $root.google.cloud.retail.v2beta.ServingConfig.decode(reader, reader.uint32()); + message.servingConfig = $root.google.cloud.retail.v2beta.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -194217,7 +202557,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -194248,14 +202588,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateServingConfigRequest.verify = function verify(message) { + CreateServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) { - var error = $root.google.cloud.retail.v2beta.ServingConfig.verify(message.servingConfig); + var error = $root.google.cloud.retail.v2beta.ServingConfig.verify(message.servingConfig, long + 1); if (error) return "servingConfig." + error; } @@ -194273,16 +202617,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CreateServingConfigRequest} CreateServingConfigRequest */ - CreateServingConfigRequest.fromObject = function fromObject(object) { + CreateServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CreateServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CreateServingConfigRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.servingConfig != null) { if (typeof object.servingConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.CreateServingConfigRequest.servingConfig: object expected"); - message.servingConfig = $root.google.cloud.retail.v2beta.ServingConfig.fromObject(object.servingConfig); + message.servingConfig = $root.google.cloud.retail.v2beta.ServingConfig.fromObject(object.servingConfig, long + 1); } if (object.servingConfigId != null) message.servingConfigId = String(object.servingConfigId); @@ -194366,7 +202714,7 @@ function UpdateServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -194441,9 +202789,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateServingConfigRequest.decode = function decode(reader, length, error) { + UpdateServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.UpdateServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -194451,15 +202803,15 @@ break; switch (tag >>> 3) { case 1: { - message.servingConfig = $root.google.cloud.retail.v2beta.ServingConfig.decode(reader, reader.uint32()); + message.servingConfig = $root.google.cloud.retail.v2beta.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -194490,16 +202842,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateServingConfigRequest.verify = function verify(message) { + UpdateServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) { - var error = $root.google.cloud.retail.v2beta.ServingConfig.verify(message.servingConfig); + var error = $root.google.cloud.retail.v2beta.ServingConfig.verify(message.servingConfig, long + 1); if (error) return "servingConfig." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -194514,19 +202870,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.UpdateServingConfigRequest} UpdateServingConfigRequest */ - UpdateServingConfigRequest.fromObject = function fromObject(object) { + UpdateServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.UpdateServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.UpdateServingConfigRequest(); if (object.servingConfig != null) { if (typeof object.servingConfig !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateServingConfigRequest.servingConfig: object expected"); - message.servingConfig = $root.google.cloud.retail.v2beta.ServingConfig.fromObject(object.servingConfig); + message.servingConfig = $root.google.cloud.retail.v2beta.ServingConfig.fromObject(object.servingConfig, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.retail.v2beta.UpdateServingConfigRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -194604,7 +202964,7 @@ function DeleteServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -194669,9 +203029,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteServingConfigRequest.decode = function decode(reader, length, error) { + DeleteServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.DeleteServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -194683,7 +203047,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -194714,9 +203078,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteServingConfigRequest.verify = function verify(message) { + DeleteServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -194731,9 +203099,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.DeleteServingConfigRequest} DeleteServingConfigRequest */ - DeleteServingConfigRequest.fromObject = function fromObject(object) { + DeleteServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.DeleteServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.DeleteServingConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -194809,7 +203181,7 @@ function GetServingConfigRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -194874,9 +203246,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetServingConfigRequest.decode = function decode(reader, length, error) { + GetServingConfigRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.GetServingConfigRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -194888,7 +203264,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -194919,9 +203295,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetServingConfigRequest.verify = function verify(message) { + GetServingConfigRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -194936,9 +203316,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.GetServingConfigRequest} GetServingConfigRequest */ - GetServingConfigRequest.fromObject = function fromObject(object) { + GetServingConfigRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.GetServingConfigRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.GetServingConfigRequest(); if (object.name != null) message.name = String(object.name); @@ -195016,7 +203400,7 @@ function ListServingConfigsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -195101,9 +203485,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListServingConfigsRequest.decode = function decode(reader, length, error) { + ListServingConfigsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListServingConfigsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -195123,7 +203511,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -195154,9 +203542,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListServingConfigsRequest.verify = function verify(message) { + ListServingConfigsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -195177,9 +203569,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListServingConfigsRequest} ListServingConfigsRequest */ - ListServingConfigsRequest.fromObject = function fromObject(object) { + ListServingConfigsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListServingConfigsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListServingConfigsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -195268,7 +203664,7 @@ this.servingConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -195344,9 +203740,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListServingConfigsResponse.decode = function decode(reader, length, error) { + ListServingConfigsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.ListServingConfigsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -195356,7 +203756,7 @@ case 1: { if (!(message.servingConfigs && message.servingConfigs.length)) message.servingConfigs = []; - message.servingConfigs.push($root.google.cloud.retail.v2beta.ServingConfig.decode(reader, reader.uint32())); + message.servingConfigs.push($root.google.cloud.retail.v2beta.ServingConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -195364,7 +203764,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -195395,14 +203795,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListServingConfigsResponse.verify = function verify(message) { + ListServingConfigsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfigs != null && message.hasOwnProperty("servingConfigs")) { if (!Array.isArray(message.servingConfigs)) return "servingConfigs: array expected"; for (var i = 0; i < message.servingConfigs.length; ++i) { - var error = $root.google.cloud.retail.v2beta.ServingConfig.verify(message.servingConfigs[i]); + var error = $root.google.cloud.retail.v2beta.ServingConfig.verify(message.servingConfigs[i], long + 1); if (error) return "servingConfigs." + error; } @@ -195421,9 +203825,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.ListServingConfigsResponse} ListServingConfigsResponse */ - ListServingConfigsResponse.fromObject = function fromObject(object) { + ListServingConfigsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.ListServingConfigsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.ListServingConfigsResponse(); if (object.servingConfigs) { if (!Array.isArray(object.servingConfigs)) @@ -195432,7 +203840,7 @@ for (var i = 0; i < object.servingConfigs.length; ++i) { if (typeof object.servingConfigs[i] !== "object") throw TypeError(".google.cloud.retail.v2beta.ListServingConfigsResponse.servingConfigs: object expected"); - message.servingConfigs[i] = $root.google.cloud.retail.v2beta.ServingConfig.fromObject(object.servingConfigs[i]); + message.servingConfigs[i] = $root.google.cloud.retail.v2beta.ServingConfig.fromObject(object.servingConfigs[i], long + 1); } } if (object.nextPageToken != null) @@ -195517,7 +203925,7 @@ function AddControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -195592,9 +204000,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AddControlRequest.decode = function decode(reader, length, error) { + AddControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.AddControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -195610,7 +204022,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -195641,9 +204053,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AddControlRequest.verify = function verify(message) { + AddControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) if (!$util.isString(message.servingConfig)) return "servingConfig: string expected"; @@ -195661,9 +204077,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.AddControlRequest} AddControlRequest */ - AddControlRequest.fromObject = function fromObject(object) { + AddControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.AddControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.AddControlRequest(); if (object.servingConfig != null) message.servingConfig = String(object.servingConfig); @@ -195746,7 +204166,7 @@ function RemoveControlRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -195821,9 +204241,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RemoveControlRequest.decode = function decode(reader, length, error) { + RemoveControlRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RemoveControlRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -195839,7 +204263,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -195870,9 +204294,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RemoveControlRequest.verify = function verify(message) { + RemoveControlRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.servingConfig != null && message.hasOwnProperty("servingConfig")) if (!$util.isString(message.servingConfig)) return "servingConfig: string expected"; @@ -195890,9 +204318,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RemoveControlRequest} RemoveControlRequest */ - RemoveControlRequest.fromObject = function fromObject(object) { + RemoveControlRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RemoveControlRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.RemoveControlRequest(); if (object.servingConfig != null) message.servingConfig = String(object.servingConfig); @@ -196209,7 +204641,7 @@ function WriteUserEventRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -196294,9 +204726,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WriteUserEventRequest.decode = function decode(reader, length, error) { + WriteUserEventRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.WriteUserEventRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -196308,7 +204744,7 @@ break; } case 2: { - message.userEvent = $root.google.cloud.retail.v2beta.UserEvent.decode(reader, reader.uint32()); + message.userEvent = $root.google.cloud.retail.v2beta.UserEvent.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -196316,7 +204752,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -196347,14 +204783,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WriteUserEventRequest.verify = function verify(message) { + WriteUserEventRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.userEvent != null && message.hasOwnProperty("userEvent")) { - var error = $root.google.cloud.retail.v2beta.UserEvent.verify(message.userEvent); + var error = $root.google.cloud.retail.v2beta.UserEvent.verify(message.userEvent, long + 1); if (error) return "userEvent." + error; } @@ -196372,16 +204812,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.WriteUserEventRequest} WriteUserEventRequest */ - WriteUserEventRequest.fromObject = function fromObject(object) { + WriteUserEventRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.WriteUserEventRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.WriteUserEventRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.userEvent != null) { if (typeof object.userEvent !== "object") throw TypeError(".google.cloud.retail.v2beta.WriteUserEventRequest.userEvent: object expected"); - message.userEvent = $root.google.cloud.retail.v2beta.UserEvent.fromObject(object.userEvent); + message.userEvent = $root.google.cloud.retail.v2beta.UserEvent.fromObject(object.userEvent, long + 1); } if (object.writeAsync != null) message.writeAsync = Boolean(object.writeAsync); @@ -196469,7 +204913,7 @@ function CollectUserEventRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -196598,9 +205042,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CollectUserEventRequest.decode = function decode(reader, length, error) { + CollectUserEventRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.CollectUserEventRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -196632,7 +205080,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -196663,9 +205111,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CollectUserEventRequest.verify = function verify(message) { + CollectUserEventRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.prebuiltRule != null && message.hasOwnProperty("prebuiltRule")) { properties.conversionRule = 1; @@ -196698,9 +205150,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.CollectUserEventRequest} CollectUserEventRequest */ - CollectUserEventRequest.fromObject = function fromObject(object) { + CollectUserEventRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.CollectUserEventRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.CollectUserEventRequest(); if (object.prebuiltRule != null) message.prebuiltRule = String(object.prebuiltRule); @@ -196819,7 +205275,7 @@ function RejoinUserEventsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -196894,9 +205350,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsRequest.decode = function decode(reader, length, error) { + RejoinUserEventsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RejoinUserEventsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -196912,7 +205372,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -196943,9 +205403,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsRequest.verify = function verify(message) { + RejoinUserEventsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -196969,9 +205433,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RejoinUserEventsRequest} RejoinUserEventsRequest */ - RejoinUserEventsRequest.fromObject = function fromObject(object) { + RejoinUserEventsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RejoinUserEventsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.RejoinUserEventsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -197087,7 +205555,7 @@ function RejoinUserEventsResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -197152,9 +205620,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsResponse.decode = function decode(reader, length, error) { + RejoinUserEventsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RejoinUserEventsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -197166,7 +205638,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -197197,9 +205669,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsResponse.verify = function verify(message) { + RejoinUserEventsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rejoinedUserEventsCount != null && message.hasOwnProperty("rejoinedUserEventsCount")) if (!$util.isInteger(message.rejoinedUserEventsCount) && !(message.rejoinedUserEventsCount && $util.isInteger(message.rejoinedUserEventsCount.low) && $util.isInteger(message.rejoinedUserEventsCount.high))) return "rejoinedUserEventsCount: integer|Long expected"; @@ -197214,9 +205690,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RejoinUserEventsResponse} RejoinUserEventsResponse */ - RejoinUserEventsResponse.fromObject = function fromObject(object) { + RejoinUserEventsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RejoinUserEventsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.retail.v2beta.RejoinUserEventsResponse(); if (object.rejoinedUserEventsCount != null) if ($util.Long) @@ -197305,7 +205785,7 @@ function RejoinUserEventsMetadata(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -197360,9 +205840,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RejoinUserEventsMetadata.decode = function decode(reader, length, error) { + RejoinUserEventsMetadata.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.retail.v2beta.RejoinUserEventsMetadata(); while (reader.pos < end) { var tag = reader.uint32(); @@ -197370,7 +205854,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -197401,9 +205885,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RejoinUserEventsMetadata.verify = function verify(message) { + RejoinUserEventsMetadata.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -197415,9 +205903,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.retail.v2beta.RejoinUserEventsMetadata} RejoinUserEventsMetadata */ - RejoinUserEventsMetadata.fromObject = function fromObject(object) { + RejoinUserEventsMetadata.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.retail.v2beta.RejoinUserEventsMetadata) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.retail.v2beta.RejoinUserEventsMetadata(); }; @@ -197503,7 +205995,7 @@ this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -197579,9 +206071,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length, error) { + Http.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); @@ -197591,7 +206087,7 @@ case 1: { if (!(message.rules && message.rules.length)) message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -197599,7 +206095,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -197630,14 +206126,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + Http.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rules != null && message.hasOwnProperty("rules")) { if (!Array.isArray(message.rules)) return "rules: array expected"; for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); + var error = $root.google.api.HttpRule.verify(message.rules[i], long + 1); if (error) return "rules." + error; } @@ -197656,9 +206156,13 @@ * @param {Object.} object Plain object * @returns {google.api.Http} Http */ - Http.fromObject = function fromObject(object) { + Http.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Http) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Http(); if (object.rules) { if (!Array.isArray(object.rules)) @@ -197667,7 +206171,7 @@ for (var i = 0; i < object.rules.length; ++i) { if (typeof object.rules[i] !== "object") throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i], long + 1); } } if (object.fullyDecodeReservedExpansion != null) @@ -197761,7 +206265,7 @@ this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -197931,9 +206435,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length, error) { + HttpRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -197965,7 +206473,7 @@ break; } case 8: { - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -197979,11 +206487,11 @@ case 11: { if (!(message.additionalBindings && message.additionalBindings.length)) message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -198014,9 +206522,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpRule.verify = function verify(message) { + HttpRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) @@ -198059,7 +206571,7 @@ return "pattern: multiple values"; properties.pattern = 1; { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); + var error = $root.google.api.CustomHttpPattern.verify(message.custom, long + 1); if (error) return "custom." + error; } @@ -198074,7 +206586,7 @@ if (!Array.isArray(message.additionalBindings)) return "additionalBindings: array expected"; for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i], long + 1); if (error) return "additionalBindings." + error; } @@ -198090,9 +206602,13 @@ * @param {Object.} object Plain object * @returns {google.api.HttpRule} HttpRule */ - HttpRule.fromObject = function fromObject(object) { + HttpRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.HttpRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.HttpRule(); if (object.selector != null) message.selector = String(object.selector); @@ -198109,7 +206625,7 @@ if (object.custom != null) { if (typeof object.custom !== "object") throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom, long + 1); } if (object.body != null) message.body = String(object.body); @@ -198122,7 +206638,7 @@ for (var i = 0; i < object.additionalBindings.length; ++i) { if (typeof object.additionalBindings[i] !== "object") throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i], long + 1); } } return message; @@ -198242,7 +206758,7 @@ function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -198317,9 +206833,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length, error) { + CustomHttpPattern.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); @@ -198335,7 +206855,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -198366,9 +206886,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) if (!$util.isString(message.kind)) return "kind: string expected"; @@ -198386,9 +206910,13 @@ * @param {Object.} object Plain object * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - CustomHttpPattern.fromObject = function fromObject(object) { + CustomHttpPattern.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CustomHttpPattern) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CustomHttpPattern(); if (object.kind != null) message.kind = String(object.kind); @@ -198473,7 +207001,7 @@ this.destinations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -198562,9 +207090,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CommonLanguageSettings.decode = function decode(reader, length, error) { + CommonLanguageSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CommonLanguageSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -198587,11 +207119,11 @@ break; } case 3: { - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32()); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -198622,9 +207154,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CommonLanguageSettings.verify = function verify(message) { + CommonLanguageSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.referenceDocsUri != null && message.hasOwnProperty("referenceDocsUri")) if (!$util.isString(message.referenceDocsUri)) return "referenceDocsUri: string expected"; @@ -198642,7 +207178,7 @@ } } if (message.selectiveGapicGeneration != null && message.hasOwnProperty("selectiveGapicGeneration")) { - var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration); + var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration, long + 1); if (error) return "selectiveGapicGeneration." + error; } @@ -198657,9 +207193,13 @@ * @param {Object.} object Plain object * @returns {google.api.CommonLanguageSettings} CommonLanguageSettings */ - CommonLanguageSettings.fromObject = function fromObject(object) { + CommonLanguageSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CommonLanguageSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CommonLanguageSettings(); if (object.referenceDocsUri != null) message.referenceDocsUri = String(object.referenceDocsUri); @@ -198691,7 +207231,7 @@ if (object.selectiveGapicGeneration != null) { if (typeof object.selectiveGapicGeneration !== "object") throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected"); - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration, long + 1); } return message; }; @@ -198786,7 +207326,7 @@ function ClientLibrarySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -198951,9 +207491,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClientLibrarySettings.decode = function decode(reader, length, error) { + ClientLibrarySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ClientLibrarySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -198973,39 +207517,39 @@ break; } case 21: { - message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32()); + message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32()); + message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { - message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32()); + message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32()); + message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32()); + message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { - message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32()); + message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32()); + message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32()); + message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -199036,9 +207580,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClientLibrarySettings.verify = function verify(message) { + ClientLibrarySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isString(message.version)) return "version: string expected"; @@ -199060,42 +207608,42 @@ if (typeof message.restNumericEnums !== "boolean") return "restNumericEnums: boolean expected"; if (message.javaSettings != null && message.hasOwnProperty("javaSettings")) { - var error = $root.google.api.JavaSettings.verify(message.javaSettings); + var error = $root.google.api.JavaSettings.verify(message.javaSettings, long + 1); if (error) return "javaSettings." + error; } if (message.cppSettings != null && message.hasOwnProperty("cppSettings")) { - var error = $root.google.api.CppSettings.verify(message.cppSettings); + var error = $root.google.api.CppSettings.verify(message.cppSettings, long + 1); if (error) return "cppSettings." + error; } if (message.phpSettings != null && message.hasOwnProperty("phpSettings")) { - var error = $root.google.api.PhpSettings.verify(message.phpSettings); + var error = $root.google.api.PhpSettings.verify(message.phpSettings, long + 1); if (error) return "phpSettings." + error; } if (message.pythonSettings != null && message.hasOwnProperty("pythonSettings")) { - var error = $root.google.api.PythonSettings.verify(message.pythonSettings); + var error = $root.google.api.PythonSettings.verify(message.pythonSettings, long + 1); if (error) return "pythonSettings." + error; } if (message.nodeSettings != null && message.hasOwnProperty("nodeSettings")) { - var error = $root.google.api.NodeSettings.verify(message.nodeSettings); + var error = $root.google.api.NodeSettings.verify(message.nodeSettings, long + 1); if (error) return "nodeSettings." + error; } if (message.dotnetSettings != null && message.hasOwnProperty("dotnetSettings")) { - var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings); + var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings, long + 1); if (error) return "dotnetSettings." + error; } if (message.rubySettings != null && message.hasOwnProperty("rubySettings")) { - var error = $root.google.api.RubySettings.verify(message.rubySettings); + var error = $root.google.api.RubySettings.verify(message.rubySettings, long + 1); if (error) return "rubySettings." + error; } if (message.goSettings != null && message.hasOwnProperty("goSettings")) { - var error = $root.google.api.GoSettings.verify(message.goSettings); + var error = $root.google.api.GoSettings.verify(message.goSettings, long + 1); if (error) return "goSettings." + error; } @@ -199110,9 +207658,13 @@ * @param {Object.} object Plain object * @returns {google.api.ClientLibrarySettings} ClientLibrarySettings */ - ClientLibrarySettings.fromObject = function fromObject(object) { + ClientLibrarySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ClientLibrarySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ClientLibrarySettings(); if (object.version != null) message.version = String(object.version); @@ -199161,42 +207713,42 @@ if (object.javaSettings != null) { if (typeof object.javaSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected"); - message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings); + message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings, long + 1); } if (object.cppSettings != null) { if (typeof object.cppSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected"); - message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings); + message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings, long + 1); } if (object.phpSettings != null) { if (typeof object.phpSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected"); - message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings); + message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings, long + 1); } if (object.pythonSettings != null) { if (typeof object.pythonSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected"); - message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings); + message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings, long + 1); } if (object.nodeSettings != null) { if (typeof object.nodeSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected"); - message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings); + message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings, long + 1); } if (object.dotnetSettings != null) { if (typeof object.dotnetSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected"); - message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings); + message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings, long + 1); } if (object.rubySettings != null) { if (typeof object.rubySettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected"); - message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings); + message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings, long + 1); } if (object.goSettings != null) { if (typeof object.goSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected"); - message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings); + message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings, long + 1); } return message; }; @@ -199314,7 +207866,7 @@ this.librarySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -199482,9 +208034,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Publishing.decode = function decode(reader, length, error) { + Publishing.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Publishing(); while (reader.pos < end) { var tag = reader.uint32(); @@ -199494,7 +208050,7 @@ case 2: { if (!(message.methodSettings && message.methodSettings.length)) message.methodSettings = []; - message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32())); + message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 101: { @@ -199530,7 +208086,7 @@ case 109: { if (!(message.librarySettings && message.librarySettings.length)) message.librarySettings = []; - message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32())); + message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 110: { @@ -199542,7 +208098,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -199573,14 +208129,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Publishing.verify = function verify(message) { + Publishing.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methodSettings != null && message.hasOwnProperty("methodSettings")) { if (!Array.isArray(message.methodSettings)) return "methodSettings: array expected"; for (var i = 0; i < message.methodSettings.length; ++i) { - var error = $root.google.api.MethodSettings.verify(message.methodSettings[i]); + var error = $root.google.api.MethodSettings.verify(message.methodSettings[i], long + 1); if (error) return "methodSettings." + error; } @@ -199625,7 +208185,7 @@ if (!Array.isArray(message.librarySettings)) return "librarySettings: array expected"; for (var i = 0; i < message.librarySettings.length; ++i) { - var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i]); + var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i], long + 1); if (error) return "librarySettings." + error; } @@ -199647,9 +208207,13 @@ * @param {Object.} object Plain object * @returns {google.api.Publishing} Publishing */ - Publishing.fromObject = function fromObject(object) { + Publishing.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Publishing) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Publishing(); if (object.methodSettings) { if (!Array.isArray(object.methodSettings)) @@ -199658,7 +208222,7 @@ for (var i = 0; i < object.methodSettings.length; ++i) { if (typeof object.methodSettings[i] !== "object") throw TypeError(".google.api.Publishing.methodSettings: object expected"); - message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i]); + message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i], long + 1); } } if (object.newIssueUri != null) @@ -199725,7 +208289,7 @@ for (var i = 0; i < object.librarySettings.length; ++i) { if (typeof object.librarySettings[i] !== "object") throw TypeError(".google.api.Publishing.librarySettings: object expected"); - message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]); + message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i], long + 1); } } if (object.protoReferenceDocumentationUri != null) @@ -199849,7 +208413,7 @@ this.serviceClassNames = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -199935,9 +208499,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - JavaSettings.decode = function decode(reader, length, error) { + JavaSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.JavaSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -199964,19 +208532,21 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.serviceClassNames, key); message.serviceClassNames[key] = value; break; } case 3: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -200007,9 +208577,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - JavaSettings.verify = function verify(message) { + JavaSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.libraryPackage != null && message.hasOwnProperty("libraryPackage")) if (!$util.isString(message.libraryPackage)) return "libraryPackage: string expected"; @@ -200022,7 +208596,7 @@ return "serviceClassNames: string{k:string} expected"; } if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -200037,9 +208611,13 @@ * @param {Object.} object Plain object * @returns {google.api.JavaSettings} JavaSettings */ - JavaSettings.fromObject = function fromObject(object) { + JavaSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.JavaSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.JavaSettings(); if (object.libraryPackage != null) message.libraryPackage = String(object.libraryPackage); @@ -200047,13 +208625,16 @@ if (typeof object.serviceClassNames !== "object") throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected"); message.serviceClassNames = {}; - for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.serviceClassNames, keys[i]); message.serviceClassNames[keys[i]] = String(object.serviceClassNames[keys[i]]); + } } if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.JavaSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -200082,8 +208663,11 @@ var keys2; if (message.serviceClassNames && (keys2 = Object.keys(message.serviceClassNames)).length) { object.serviceClassNames = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.serviceClassNames, keys2[j]); object.serviceClassNames[keys2[j]] = message.serviceClassNames[keys2[j]]; + } } if (message.common != null && message.hasOwnProperty("common")) object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options); @@ -200139,7 +208723,7 @@ function CppSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -200204,9 +208788,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CppSettings.decode = function decode(reader, length, error) { + CppSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CppSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -200214,11 +208802,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -200249,11 +208837,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CppSettings.verify = function verify(message) { + CppSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -200268,14 +208860,18 @@ * @param {Object.} object Plain object * @returns {google.api.CppSettings} CppSettings */ - CppSettings.fromObject = function fromObject(object) { + CppSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CppSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CppSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.CppSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -200349,7 +208945,7 @@ function PhpSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -200414,9 +209010,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PhpSettings.decode = function decode(reader, length, error) { + PhpSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PhpSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -200424,11 +209024,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -200459,11 +209059,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PhpSettings.verify = function verify(message) { + PhpSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -200478,14 +209082,18 @@ * @param {Object.} object Plain object * @returns {google.api.PhpSettings} PhpSettings */ - PhpSettings.fromObject = function fromObject(object) { + PhpSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PhpSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PhpSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PhpSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -200560,7 +209168,7 @@ function PythonSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -200635,9 +209243,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PythonSettings.decode = function decode(reader, length, error) { + PythonSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -200645,15 +209257,15 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32()); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -200684,16 +209296,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PythonSettings.verify = function verify(message) { + PythonSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } if (message.experimentalFeatures != null && message.hasOwnProperty("experimentalFeatures")) { - var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures); + var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures, long + 1); if (error) return "experimentalFeatures." + error; } @@ -200708,19 +209324,23 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings} PythonSettings */ - PythonSettings.fromObject = function fromObject(object) { + PythonSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PythonSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.experimentalFeatures != null) { if (typeof object.experimentalFeatures !== "object") throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected"); - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures, long + 1); } return message; }; @@ -200797,7 +209417,7 @@ function ExperimentalFeatures(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -200882,9 +209502,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentalFeatures.decode = function decode(reader, length, error) { + ExperimentalFeatures.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings.ExperimentalFeatures(); while (reader.pos < end) { var tag = reader.uint32(); @@ -200904,7 +209528,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -200935,9 +209559,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentalFeatures.verify = function verify(message) { + ExperimentalFeatures.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.restAsyncIoEnabled != null && message.hasOwnProperty("restAsyncIoEnabled")) if (typeof message.restAsyncIoEnabled !== "boolean") return "restAsyncIoEnabled: boolean expected"; @@ -200958,9 +209586,13 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings.ExperimentalFeatures} ExperimentalFeatures */ - ExperimentalFeatures.fromObject = function fromObject(object) { + ExperimentalFeatures.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings.ExperimentalFeatures) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings.ExperimentalFeatures(); if (object.restAsyncIoEnabled != null) message.restAsyncIoEnabled = Boolean(object.restAsyncIoEnabled); @@ -201050,7 +209682,7 @@ function NodeSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -201115,9 +209747,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeSettings.decode = function decode(reader, length, error) { + NodeSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.NodeSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -201125,11 +209761,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -201160,11 +209796,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeSettings.verify = function verify(message) { + NodeSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -201179,14 +209819,18 @@ * @param {Object.} object Plain object * @returns {google.api.NodeSettings} NodeSettings */ - NodeSettings.fromObject = function fromObject(object) { + NodeSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.NodeSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.NodeSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.NodeSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -201270,7 +209914,7 @@ this.handwrittenSignatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -201390,9 +210034,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DotnetSettings.decode = function decode(reader, length, error) { + DotnetSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -201400,7 +210048,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -201419,10 +210067,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } @@ -201442,10 +210092,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedResources, key); message.renamedResources[key] = value; break; } @@ -201468,7 +210120,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -201499,11 +210151,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DotnetSettings.verify = function verify(message) { + DotnetSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -201555,28 +210211,38 @@ * @param {Object.} object Plain object * @returns {google.api.DotnetSettings} DotnetSettings */ - DotnetSettings.fromObject = function fromObject(object) { + DotnetSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.DotnetSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.DotnetSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.DotnetSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.DotnetSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } if (object.renamedResources) { if (typeof object.renamedResources !== "object") throw TypeError(".google.api.DotnetSettings.renamedResources: object expected"); message.renamedResources = {}; - for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedResources, keys[i]); message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]); + } } if (object.ignoredResources) { if (!Array.isArray(object.ignoredResources)) @@ -201631,13 +210297,19 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) { object.renamedResources = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedResources, keys2[j]); object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]]; + } } if (message.ignoredResources && message.ignoredResources.length) { object.ignoredResources = []; @@ -201706,7 +210378,7 @@ function RubySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -201771,9 +210443,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RubySettings.decode = function decode(reader, length, error) { + RubySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RubySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -201781,11 +210457,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -201816,11 +210492,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RubySettings.verify = function verify(message) { + RubySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -201835,14 +210515,18 @@ * @param {Object.} object Plain object * @returns {google.api.RubySettings} RubySettings */ - RubySettings.fromObject = function fromObject(object) { + RubySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RubySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RubySettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.RubySettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -201918,7 +210602,7 @@ this.renamedServices = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -201994,9 +210678,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoSettings.decode = function decode(reader, length, error) { + GoSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.GoSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -202004,7 +210692,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -202023,15 +210711,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -202062,11 +210752,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoSettings.verify = function verify(message) { + GoSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -202089,21 +210783,28 @@ * @param {Object.} object Plain object * @returns {google.api.GoSettings} GoSettings */ - GoSettings.fromObject = function fromObject(object) { + GoSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.GoSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.GoSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.GoSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.GoSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } return message; }; @@ -202130,8 +210831,11 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } return object; }; @@ -202188,7 +210892,7 @@ this.autoPopulatedFields = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -202274,9 +210978,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodSettings.decode = function decode(reader, length, error) { + MethodSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -202288,7 +210996,7 @@ break; } case 2: { - message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32()); + message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -202298,7 +211006,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -202329,14 +211037,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodSettings.verify = function verify(message) { + MethodSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) return "selector: string expected"; if (message.longRunning != null && message.hasOwnProperty("longRunning")) { - var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning); + var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning, long + 1); if (error) return "longRunning." + error; } @@ -202358,16 +211070,20 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings} MethodSettings */ - MethodSettings.fromObject = function fromObject(object) { + MethodSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings(); if (object.selector != null) message.selector = String(object.selector); if (object.longRunning != null) { if (typeof object.longRunning !== "object") throw TypeError(".google.api.MethodSettings.longRunning: object expected"); - message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning); + message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning, long + 1); } if (object.autoPopulatedFields) { if (!Array.isArray(object.autoPopulatedFields)) @@ -202459,7 +211175,7 @@ function LongRunning(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -202554,9 +211270,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LongRunning.decode = function decode(reader, length, error) { + LongRunning.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings.LongRunning(); while (reader.pos < end) { var tag = reader.uint32(); @@ -202564,7 +211284,7 @@ break; switch (tag >>> 3) { case 1: { - message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -202572,15 +211292,15 @@ break; } case 3: { - message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -202611,11 +211331,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LongRunning.verify = function verify(message) { + LongRunning.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.initialPollDelay != null && message.hasOwnProperty("initialPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.initialPollDelay); + var error = $root.google.protobuf.Duration.verify(message.initialPollDelay, long + 1); if (error) return "initialPollDelay." + error; } @@ -202623,12 +211347,12 @@ if (typeof message.pollDelayMultiplier !== "number") return "pollDelayMultiplier: number expected"; if (message.maxPollDelay != null && message.hasOwnProperty("maxPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.maxPollDelay); + var error = $root.google.protobuf.Duration.verify(message.maxPollDelay, long + 1); if (error) return "maxPollDelay." + error; } if (message.totalPollTimeout != null && message.hasOwnProperty("totalPollTimeout")) { - var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout); + var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout, long + 1); if (error) return "totalPollTimeout." + error; } @@ -202643,26 +211367,30 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings.LongRunning} LongRunning */ - LongRunning.fromObject = function fromObject(object) { + LongRunning.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings.LongRunning) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings.LongRunning(); if (object.initialPollDelay != null) { if (typeof object.initialPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected"); - message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay); + message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay, long + 1); } if (object.pollDelayMultiplier != null) message.pollDelayMultiplier = Number(object.pollDelayMultiplier); if (object.maxPollDelay != null) { if (typeof object.maxPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected"); - message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay); + message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay, long + 1); } if (object.totalPollTimeout != null) { if (typeof object.totalPollTimeout !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected"); - message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout); + message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout, long + 1); } return message; }; @@ -202793,7 +211521,7 @@ this.methods = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -202869,9 +211597,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectiveGapicGeneration.decode = function decode(reader, length, error) { + SelectiveGapicGeneration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.SelectiveGapicGeneration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -202889,7 +211621,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -202920,9 +211652,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectiveGapicGeneration.verify = function verify(message) { + SelectiveGapicGeneration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methods != null && message.hasOwnProperty("methods")) { if (!Array.isArray(message.methods)) return "methods: array expected"; @@ -202944,9 +211680,13 @@ * @param {Object.} object Plain object * @returns {google.api.SelectiveGapicGeneration} SelectiveGapicGeneration */ - SelectiveGapicGeneration.fromObject = function fromObject(object) { + SelectiveGapicGeneration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.SelectiveGapicGeneration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.SelectiveGapicGeneration(); if (object.methods) { if (!Array.isArray(object.methods)) @@ -203098,7 +211838,7 @@ this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -203228,9 +211968,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length, error) { + ResourceDescriptor.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); @@ -203275,7 +212019,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -203306,9 +212050,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -203360,9 +212108,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - ResourceDescriptor.fromObject = function fromObject(object) { + ResourceDescriptor.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceDescriptor) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceDescriptor(); if (object.type != null) message.type = String(object.type); @@ -203550,7 +212302,7 @@ function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -203625,9 +212377,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length, error) { + ResourceReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -203643,7 +212399,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -203674,9 +212430,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + ResourceReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -203694,9 +212454,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceReference} ResourceReference */ - ResourceReference.fromObject = function fromObject(object) { + ResourceReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceReference(); if (object.type != null) message.type = String(object.type); @@ -203781,7 +212545,7 @@ this.extensions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -203867,9 +212631,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpBody.decode = function decode(reader, length, error) { + HttpBody.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpBody(); while (reader.pos < end) { var tag = reader.uint32(); @@ -203887,11 +212655,11 @@ case 3: { if (!(message.extensions && message.extensions.length)) message.extensions = []; - message.extensions.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.extensions.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -203922,9 +212690,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpBody.verify = function verify(message) { + HttpBody.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.contentType != null && message.hasOwnProperty("contentType")) if (!$util.isString(message.contentType)) return "contentType: string expected"; @@ -203935,7 +212707,7 @@ if (!Array.isArray(message.extensions)) return "extensions: array expected"; for (var i = 0; i < message.extensions.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.extensions[i]); + var error = $root.google.protobuf.Any.verify(message.extensions[i], long + 1); if (error) return "extensions." + error; } @@ -203951,9 +212723,13 @@ * @param {Object.} object Plain object * @returns {google.api.HttpBody} HttpBody */ - HttpBody.fromObject = function fromObject(object) { + HttpBody.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.HttpBody) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.HttpBody(); if (object.contentType != null) message.contentType = String(object.contentType); @@ -203969,7 +212745,7 @@ for (var i = 0; i < object.extensions.length; ++i) { if (typeof object.extensions[i] !== "object") throw TypeError(".google.api.HttpBody.extensions: object expected"); - message.extensions[i] = $root.google.protobuf.Any.fromObject(object.extensions[i]); + message.extensions[i] = $root.google.protobuf.Any.fromObject(object.extensions[i], long + 1); } } return message; @@ -204074,7 +212850,7 @@ this.file = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -204140,9 +212916,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorSet.decode = function decode(reader, length, error) { + FileDescriptorSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -204152,11 +212932,11 @@ case 1: { if (!(message.file && message.file.length)) message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -204187,14 +212967,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorSet.verify = function verify(message) { + FileDescriptorSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.file != null && message.hasOwnProperty("file")) { if (!Array.isArray(message.file)) return "file: array expected"; for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i], long + 1); if (error) return "file." + error; } @@ -204210,9 +212994,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet */ - FileDescriptorSet.fromObject = function fromObject(object) { + FileDescriptorSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorSet(); if (object.file) { if (!Array.isArray(object.file)) @@ -204221,7 +213009,7 @@ for (var i = 0; i < object.file.length; ++i) { if (typeof object.file[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i], long + 1); } } return message; @@ -204354,7 +213142,7 @@ this.extension = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -204557,9 +213345,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorProto.decode = function decode(reader, length, error) { + FileDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -204611,33 +213403,33 @@ case 4: { if (!(message.messageType && message.messageType.length)) message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.service && message.service.length)) message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -204649,7 +213441,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -204680,9 +213472,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorProto.verify = function verify(message) { + FileDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -204721,7 +213517,7 @@ if (!Array.isArray(message.messageType)) return "messageType: array expected"; for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i], long + 1); if (error) return "messageType." + error; } @@ -204730,7 +213526,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -204739,7 +213535,7 @@ if (!Array.isArray(message.service)) return "service: array expected"; for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i], long + 1); if (error) return "service." + error; } @@ -204748,18 +213544,18 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); + var error = $root.google.protobuf.FileOptions.verify(message.options, long + 1); if (error) return "options." + error; } if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo, long + 1); if (error) return "sourceCodeInfo." + error; } @@ -204795,9 +213591,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto */ - FileDescriptorProto.fromObject = function fromObject(object) { + FileDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -204838,7 +213638,7 @@ for (var i = 0; i < object.messageType.length; ++i) { if (typeof object.messageType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i], long + 1); } } if (object.enumType) { @@ -204848,7 +213648,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.service) { @@ -204858,7 +213658,7 @@ for (var i = 0; i < object.service.length; ++i) { if (typeof object.service[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i], long + 1); } } if (object.extension) { @@ -204868,18 +213668,18 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options, long + 1); } if (object.sourceCodeInfo != null) { if (typeof object.sourceCodeInfo !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo, long + 1); } if (object.syntax != null) message.syntax = String(object.syntax); @@ -205095,7 +213895,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -205268,9 +214068,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DescriptorProto.decode = function decode(reader, length, error) { + DescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -205284,47 +214088,47 @@ case 2: { if (!(message.field && message.field.length)) message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.nestedType && message.nestedType.length)) message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.extensionRange && message.extensionRange.length)) message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { if (!(message.oneofDecl && message.oneofDecl.length)) message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 10: { @@ -205338,7 +214142,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -205369,9 +214173,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DescriptorProto.verify = function verify(message) { + DescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -205379,7 +214187,7 @@ if (!Array.isArray(message.field)) return "field: array expected"; for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i], long + 1); if (error) return "field." + error; } @@ -205388,7 +214196,7 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } @@ -205397,7 +214205,7 @@ if (!Array.isArray(message.nestedType)) return "nestedType: array expected"; for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i], long + 1); if (error) return "nestedType." + error; } @@ -205406,7 +214214,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -205415,7 +214223,7 @@ if (!Array.isArray(message.extensionRange)) return "extensionRange: array expected"; for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i], long + 1); if (error) return "extensionRange." + error; } @@ -205424,13 +214232,13 @@ if (!Array.isArray(message.oneofDecl)) return "oneofDecl: array expected"; for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i], long + 1); if (error) return "oneofDecl." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); + var error = $root.google.protobuf.MessageOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -205438,7 +214246,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -205470,9 +214278,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto} DescriptorProto */ - DescriptorProto.fromObject = function fromObject(object) { + DescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -205483,7 +214295,7 @@ for (var i = 0; i < object.field.length; ++i) { if (typeof object.field[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i], long + 1); } } if (object.extension) { @@ -205493,7 +214305,7 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.nestedType) { @@ -205503,7 +214315,7 @@ for (var i = 0; i < object.nestedType.length; ++i) { if (typeof object.nestedType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i], long + 1); } } if (object.enumType) { @@ -205513,7 +214325,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.extensionRange) { @@ -205523,7 +214335,7 @@ for (var i = 0; i < object.extensionRange.length; ++i) { if (typeof object.extensionRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i], long + 1); } } if (object.oneofDecl) { @@ -205533,13 +214345,13 @@ for (var i = 0; i < object.oneofDecl.length; ++i) { if (typeof object.oneofDecl[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -205548,7 +214360,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -205706,7 +214518,7 @@ function ExtensionRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -205791,9 +214603,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRange.decode = function decode(reader, length, error) { + ExtensionRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -205809,11 +214625,11 @@ break; } case 3: { - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -205844,9 +214660,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRange.verify = function verify(message) { + ExtensionRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -205854,7 +214674,7 @@ if (!$util.isInteger(message.end)) return "end: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -205869,9 +214689,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange */ - ExtensionRange.fromObject = function fromObject(object) { + ExtensionRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); if (object.start != null) message.start = object.start | 0; @@ -205880,7 +214704,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options, long + 1); } return message; }; @@ -205962,7 +214786,7 @@ function ReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -206037,9 +214861,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReservedRange.decode = function decode(reader, length, error) { + ReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -206055,7 +214883,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -206086,9 +214914,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReservedRange.verify = function verify(message) { + ReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -206106,9 +214938,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange */ - ReservedRange.fromObject = function fromObject(object) { + ReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -206198,7 +215034,7 @@ this.declaration = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -206295,9 +215131,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRangeOptions.decode = function decode(reader, length, error) { + ExtensionRangeOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -206307,17 +215147,17 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.declaration && message.declaration.length)) message.declaration = []; - message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32())); + message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -206325,7 +215165,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -206356,14 +215196,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRangeOptions.verify = function verify(message) { + ExtensionRangeOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -206372,13 +215216,13 @@ if (!Array.isArray(message.declaration)) return "declaration: array expected"; for (var i = 0; i < message.declaration.length; ++i) { - var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]); + var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i], long + 1); if (error) return "declaration." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -206401,9 +215245,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions */ - ExtensionRangeOptions.fromObject = function fromObject(object) { + ExtensionRangeOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions(); if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -206412,7 +215260,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object.declaration) { @@ -206422,13 +215270,13 @@ for (var i = 0; i < object.declaration.length; ++i) { if (typeof object.declaration[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected"); - message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]); + message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } switch (object.verification) { case "DECLARATION": @@ -206537,7 +215385,7 @@ function Declaration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -206642,9 +215490,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Declaration.decode = function decode(reader, length, error) { + Declaration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -206672,7 +215524,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -206703,9 +215555,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Declaration.verify = function verify(message) { + Declaration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.number != null && message.hasOwnProperty("number")) if (!$util.isInteger(message.number)) return "number: integer expected"; @@ -206732,9 +215588,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration */ - Declaration.fromObject = function fromObject(object) { + Declaration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); if (object.number != null) message.number = object.number | 0; @@ -206858,7 +215718,7 @@ function FieldDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -207023,9 +215883,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldDescriptorProto.decode = function decode(reader, length, error) { + FieldDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -207069,7 +215933,7 @@ break; } case 8: { - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -207077,7 +215941,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -207108,9 +215972,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldDescriptorProto.verify = function verify(message) { + FieldDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -207166,7 +216034,7 @@ if (!$util.isString(message.jsonName)) return "jsonName: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); + var error = $root.google.protobuf.FieldOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -207184,9 +216052,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto */ - FieldDescriptorProto.fromObject = function fromObject(object) { + FieldDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -207305,7 +216177,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options, long + 1); } if (object.proto3Optional != null) message.proto3Optional = Boolean(object.proto3Optional); @@ -207475,7 +216347,7 @@ function OneofDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -207550,9 +216422,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofDescriptorProto.decode = function decode(reader, length, error) { + OneofDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -207564,11 +216440,11 @@ break; } case 2: { - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -207599,14 +216475,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofDescriptorProto.verify = function verify(message) { + OneofDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); + var error = $root.google.protobuf.OneofOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -207621,16 +216501,20 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto */ - OneofDescriptorProto.fromObject = function fromObject(object) { + OneofDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofDescriptorProto(); if (object.name != null) message.name = String(object.name); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options, long + 1); } return message; }; @@ -207716,7 +216600,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -207834,9 +216718,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumDescriptorProto.decode = function decode(reader, length, error) { + EnumDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -207850,17 +216738,17 @@ case 2: { if (!(message.value && message.value.length)) message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -207874,7 +216762,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -207905,9 +216793,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumDescriptorProto.verify = function verify(message) { + EnumDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -207915,13 +216807,13 @@ if (!Array.isArray(message.value)) return "value: array expected"; for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i], long + 1); if (error) return "value." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); + var error = $root.google.protobuf.EnumOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -207929,7 +216821,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -207961,9 +216853,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto */ - EnumDescriptorProto.fromObject = function fromObject(object) { + EnumDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -207974,13 +216870,13 @@ for (var i = 0; i < object.value.length; ++i) { if (typeof object.value[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -207989,7 +216885,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -208116,7 +217012,7 @@ function EnumReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -208191,9 +217087,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumReservedRange.decode = function decode(reader, length, error) { + EnumReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -208209,7 +217109,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -208240,9 +217140,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumReservedRange.verify = function verify(message) { + EnumReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -208260,9 +217164,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange */ - EnumReservedRange.fromObject = function fromObject(object) { + EnumReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -208349,7 +217257,7 @@ function EnumValueDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -208434,9 +217342,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueDescriptorProto.decode = function decode(reader, length, error) { + EnumValueDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -208452,11 +217364,11 @@ break; } case 3: { - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -208487,9 +217399,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueDescriptorProto.verify = function verify(message) { + EnumValueDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -208497,7 +217413,7 @@ if (!$util.isInteger(message.number)) return "number: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + var error = $root.google.protobuf.EnumValueOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -208512,9 +217428,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { + EnumValueDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -208523,7 +217443,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options, long + 1); } return message; }; @@ -208607,7 +217527,7 @@ this.method = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -208693,9 +217613,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceDescriptorProto.decode = function decode(reader, length, error) { + ServiceDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -208709,15 +217633,15 @@ case 2: { if (!(message.method && message.method.length)) message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -208748,9 +217672,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceDescriptorProto.verify = function verify(message) { + ServiceDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -208758,13 +217686,13 @@ if (!Array.isArray(message.method)) return "method: array expected"; for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i], long + 1); if (error) return "method." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); + var error = $root.google.protobuf.ServiceOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -208779,9 +217707,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto */ - ServiceDescriptorProto.fromObject = function fromObject(object) { + ServiceDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -208792,13 +217724,13 @@ for (var i = 0; i < object.method.length; ++i) { if (typeof object.method[i] !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options, long + 1); } return message; }; @@ -208888,7 +217820,7 @@ function MethodDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -209003,9 +217935,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodDescriptorProto.decode = function decode(reader, length, error) { + MethodDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -209025,7 +217961,7 @@ break; } case 4: { - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -209037,7 +217973,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -209068,9 +218004,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodDescriptorProto.verify = function verify(message) { + MethodDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -209081,7 +218021,7 @@ if (!$util.isString(message.outputType)) return "outputType: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); + var error = $root.google.protobuf.MethodOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -209102,9 +218042,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto */ - MethodDescriptorProto.fromObject = function fromObject(object) { + MethodDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -209115,7 +218059,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options, long + 1); } if (object.clientStreaming != null) message.clientStreaming = Boolean(object.clientStreaming); @@ -209232,7 +218176,7 @@ this[".google.api.resourceDefinition"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -209509,9 +218453,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileOptions.decode = function decode(reader, length, error) { + FileOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -209595,23 +218543,23 @@ break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -209642,9 +218590,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileOptions.verify = function verify(message) { + FileOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) if (!$util.isString(message.javaPackage)) return "javaPackage: string expected"; @@ -209709,7 +218661,7 @@ if (!$util.isString(message.rubyPackage)) return "rubyPackage: string expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -209717,7 +218669,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -209726,7 +218678,7 @@ if (!Array.isArray(message[".google.api.resourceDefinition"])) return ".google.api.resourceDefinition: array expected"; for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i], long + 1); if (error) return ".google.api.resourceDefinition." + error; } @@ -209742,9 +218694,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileOptions} FileOptions */ - FileOptions.fromObject = function fromObject(object) { + FileOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileOptions(); if (object.javaPackage != null) message.javaPackage = String(object.javaPackage); @@ -209805,7 +218761,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FileOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -209814,7 +218770,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resourceDefinition"]) { @@ -209824,7 +218780,7 @@ for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { if (typeof object[".google.api.resourceDefinition"][i] !== "object") throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i], long + 1); } } return message; @@ -209995,7 +218951,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -210131,9 +219087,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageOptions.decode = function decode(reader, length, error) { + MessageOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -210161,21 +219121,21 @@ break; } case 12: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -210206,9 +219166,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MessageOptions.verify = function verify(message) { + MessageOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) if (typeof message.messageSetWireFormat !== "boolean") return "messageSetWireFormat: boolean expected"; @@ -210225,7 +219189,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -210233,13 +219197,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"], long + 1); if (error) return ".google.api.resource." + error; } @@ -210254,9 +219218,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MessageOptions} MessageOptions */ - MessageOptions.fromObject = function fromObject(object) { + MessageOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MessageOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MessageOptions(); if (object.messageSetWireFormat != null) message.messageSetWireFormat = Boolean(object.messageSetWireFormat); @@ -210271,7 +219239,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MessageOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -210280,13 +219248,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resource"] != null) { if (typeof object[".google.api.resource"] !== "object") throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"], long + 1); } return message; }; @@ -210405,7 +219373,7 @@ this[".google.api.fieldBehavior"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -210624,9 +219592,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decode = function decode(reader, length, error) { + FieldOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -210683,21 +219655,21 @@ case 20: { if (!(message.editionDefaults && message.editionDefaults.length)) message.editionDefaults = []; - message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32())); + message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1052: { @@ -210712,11 +219684,11 @@ break; } case 1055: { - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -210747,9 +219719,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldOptions.verify = function verify(message) { + FieldOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ctype != null && message.hasOwnProperty("ctype")) switch (message.ctype) { default: @@ -210819,18 +219795,18 @@ if (!Array.isArray(message.editionDefaults)) return "editionDefaults: array expected"; for (var i = 0; i < message.editionDefaults.length; ++i) { - var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]); + var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i], long + 1); if (error) return "editionDefaults." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -210838,7 +219814,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -210863,7 +219839,7 @@ } } if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"], long + 1); if (error) return ".google.api.resourceReference." + error; } @@ -210878,9 +219854,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions} FieldOptions */ - FieldOptions.fromObject = function fromObject(object) { + FieldOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions(); switch (object.ctype) { default: @@ -211014,18 +219994,18 @@ for (var i = 0; i < object.editionDefaults.length; ++i) { if (typeof object.editionDefaults[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected"); - message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]); + message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FieldOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -211034,7 +220014,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.fieldBehavior"]) { @@ -211089,7 +220069,7 @@ if (object[".google.api.resourceReference"] != null) { if (typeof object[".google.api.resourceReference"] !== "object") throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"], long + 1); } return message; }; @@ -211299,7 +220279,7 @@ function EditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -211374,9 +220354,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EditionDefault.decode = function decode(reader, length, error) { + EditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -211392,7 +220376,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -211423,9 +220407,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EditionDefault.verify = function verify(message) { + EditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -211458,9 +220446,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault */ - EditionDefault.fromObject = function fromObject(object) { + EditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.EditionDefault(); switch (object.edition) { default: @@ -211599,7 +220591,7 @@ function FeatureSupport(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -211694,9 +220686,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSupport.decode = function decode(reader, length, error) { + FeatureSupport.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.FeatureSupport(); while (reader.pos < end) { var tag = reader.uint32(); @@ -211720,7 +220716,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -211751,9 +220747,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSupport.verify = function verify(message) { + FeatureSupport.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.editionIntroduced != null && message.hasOwnProperty("editionIntroduced")) switch (message.editionIntroduced) { default: @@ -211822,9 +220822,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.FeatureSupport} FeatureSupport */ - FeatureSupport.fromObject = function fromObject(object) { + FeatureSupport.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.FeatureSupport) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.FeatureSupport(); switch (object.editionIntroduced) { default: @@ -212083,7 +221087,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -212159,9 +221163,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decode = function decode(reader, length, error) { + OneofOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -212169,17 +221177,17 @@ break; switch (tag >>> 3) { case 1: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -212210,11 +221218,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofOptions.verify = function verify(message) { + OneofOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -212222,7 +221234,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -212238,14 +221250,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofOptions} OneofOptions */ - OneofOptions.fromObject = function fromObject(object) { + OneofOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.OneofOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -212254,7 +221270,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -212341,7 +221357,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -212447,9 +221463,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decode = function decode(reader, length, error) { + EnumOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -212469,17 +221489,17 @@ break; } case 7: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -212510,9 +221530,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumOptions.verify = function verify(message) { + EnumOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) if (typeof message.allowAlias !== "boolean") return "allowAlias: boolean expected"; @@ -212523,7 +221547,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -212531,7 +221555,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -212547,9 +221571,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumOptions} EnumOptions */ - EnumOptions.fromObject = function fromObject(object) { + EnumOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumOptions(); if (object.allowAlias != null) message.allowAlias = Boolean(object.allowAlias); @@ -212560,7 +221588,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -212569,7 +221597,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -212666,7 +221694,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -212772,9 +221800,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decode = function decode(reader, length, error) { + EnumValueOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -212786,7 +221818,7 @@ break; } case 2: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -212794,17 +221826,17 @@ break; } case 4: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -212835,14 +221867,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueOptions.verify = function verify(message) { + EnumValueOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -212850,7 +221886,7 @@ if (typeof message.debugRedact !== "boolean") return "debugRedact: boolean expected"; if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -212858,7 +221894,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -212874,23 +221910,27 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueOptions} EnumValueOptions */ - EnumValueOptions.fromObject = function fromObject(object) { + EnumValueOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumValueOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.debugRedact != null) message.debugRedact = Boolean(object.debugRedact); if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -212899,7 +221939,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -212997,7 +222037,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -213113,9 +222153,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decode = function decode(reader, length, error) { + ServiceOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -213123,7 +222167,7 @@ break; switch (tag >>> 3) { case 34: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 33: { @@ -213133,7 +222177,7 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1049: { @@ -213149,7 +222193,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -213180,11 +222224,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceOptions.verify = function verify(message) { + ServiceOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -213195,7 +222243,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -213220,14 +222268,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceOptions} ServiceOptions */ - ServiceOptions.fromObject = function fromObject(object) { + ServiceOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ServiceOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -213238,7 +222290,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.defaultHost"] != null) @@ -213347,7 +222399,7 @@ this[".google.api.methodSignature"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -213474,9 +222526,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decode = function decode(reader, length, error) { + MethodOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -213492,17 +222548,17 @@ break; } case 35: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 72295728: { - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1051: { @@ -213512,11 +222568,11 @@ break; } case 1049: { - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -213547,9 +222603,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodOptions.verify = function verify(message) { + MethodOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; @@ -213563,7 +222623,7 @@ break; } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -213571,13 +222631,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + var error = $root.google.api.HttpRule.verify(message[".google.api.http"], long + 1); if (error) return ".google.api.http." + error; } @@ -213589,7 +222649,7 @@ return ".google.api.methodSignature: string[] expected"; } if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { - var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); + var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"], long + 1); if (error) return ".google.longrunning.operationInfo." + error; } @@ -213604,9 +222664,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodOptions} MethodOptions */ - MethodOptions.fromObject = function fromObject(object) { + MethodOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -213633,7 +222697,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MethodOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -213642,13 +222706,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.http"] != null) { if (typeof object[".google.api.http"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"], long + 1); } if (object[".google.api.methodSignature"]) { if (!Array.isArray(object[".google.api.methodSignature"])) @@ -213660,7 +222724,7 @@ if (object[".google.longrunning.operationInfo"] != null) { if (typeof object[".google.longrunning.operationInfo"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"], long + 1); } return message; }; @@ -213784,7 +222848,7 @@ this.name = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -213910,9 +222974,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.decode = function decode(reader, length, error) { + UninterpretedOption.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); while (reader.pos < end) { var tag = reader.uint32(); @@ -213922,7 +222990,7 @@ case 2: { if (!(message.name && message.name.length)) message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -213950,7 +223018,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -213981,14 +223049,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UninterpretedOption.verify = function verify(message) { + UninterpretedOption.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) { if (!Array.isArray(message.name)) return "name: array expected"; for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i], long + 1); if (error) return "name." + error; } @@ -214022,9 +223094,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption} UninterpretedOption */ - UninterpretedOption.fromObject = function fromObject(object) { + UninterpretedOption.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption(); if (object.name) { if (!Array.isArray(object.name)) @@ -214033,7 +223109,7 @@ for (var i = 0; i < object.name.length; ++i) { if (typeof object.name[i] !== "object") throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i], long + 1); } } if (object.identifierValue != null) @@ -214178,7 +223254,7 @@ function NamePart(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -214251,9 +223327,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NamePart.decode = function decode(reader, length, error) { + NamePart.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); while (reader.pos < end) { var tag = reader.uint32(); @@ -214269,7 +223349,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -214304,9 +223384,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NamePart.verify = function verify(message) { + NamePart.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (!$util.isString(message.namePart)) return "namePart: string expected"; if (typeof message.isExtension !== "boolean") @@ -214322,9 +223406,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart */ - NamePart.fromObject = function fromObject(object) { + NamePart.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption.NamePart(); if (object.namePart != null) message.namePart = String(object.namePart); @@ -214416,7 +223504,7 @@ function FeatureSet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -214551,9 +223639,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSet.decode = function decode(reader, length, error) { + FeatureSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -214593,7 +223685,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -214624,9 +223716,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSet.verify = function verify(message) { + FeatureSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence")) switch (message.fieldPresence) { default: @@ -214713,9 +223809,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet} FeatureSet */ - FeatureSet.fromObject = function fromObject(object) { + FeatureSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSet(); switch (object.fieldPresence) { default: @@ -215093,7 +224193,7 @@ function VisibilityFeature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -215148,9 +224248,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VisibilityFeature.decode = function decode(reader, length, error) { + VisibilityFeature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet.VisibilityFeature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -215158,7 +224262,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -215189,9 +224293,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VisibilityFeature.verify = function verify(message) { + VisibilityFeature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -215203,9 +224311,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet.VisibilityFeature} VisibilityFeature */ - VisibilityFeature.fromObject = function fromObject(object) { + VisibilityFeature.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.FeatureSet.VisibilityFeature(); }; @@ -215297,7 +224409,7 @@ this.defaults = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -215383,9 +224495,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetDefaults.decode = function decode(reader, length, error) { + FeatureSetDefaults.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults(); while (reader.pos < end) { var tag = reader.uint32(); @@ -215395,7 +224511,7 @@ case 1: { if (!(message.defaults && message.defaults.length)) message.defaults = []; - message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32())); + message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -215407,7 +224523,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -215438,14 +224554,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetDefaults.verify = function verify(message) { + FeatureSetDefaults.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.defaults != null && message.hasOwnProperty("defaults")) { if (!Array.isArray(message.defaults)) return "defaults: array expected"; for (var i = 0; i < message.defaults.length; ++i) { - var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]); + var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i], long + 1); if (error) return "defaults." + error; } @@ -215497,9 +224617,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults */ - FeatureSetDefaults.fromObject = function fromObject(object) { + FeatureSetDefaults.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults(); if (object.defaults) { if (!Array.isArray(object.defaults)) @@ -215508,7 +224632,7 @@ for (var i = 0; i < object.defaults.length; ++i) { if (typeof object.defaults[i] !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected"); - message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]); + message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i], long + 1); } } switch (object.minimumEdition) { @@ -215705,7 +224829,7 @@ function FeatureSetEditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -215790,9 +224914,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetEditionDefault.decode = function decode(reader, length, error) { + FeatureSetEditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -215804,15 +224932,15 @@ break; } case 4: { - message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -215843,9 +224971,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetEditionDefault.verify = function verify(message) { + FeatureSetEditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -215865,12 +224997,12 @@ break; } if (message.overridableFeatures != null && message.hasOwnProperty("overridableFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures, long + 1); if (error) return "overridableFeatures." + error; } if (message.fixedFeatures != null && message.hasOwnProperty("fixedFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures, long + 1); if (error) return "fixedFeatures." + error; } @@ -215885,9 +225017,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault */ - FeatureSetEditionDefault.fromObject = function fromObject(object) { + FeatureSetEditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); switch (object.edition) { default: @@ -215948,12 +225084,12 @@ if (object.overridableFeatures != null) { if (typeof object.overridableFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected"); - message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures); + message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures, long + 1); } if (object.fixedFeatures != null) { if (typeof object.fixedFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected"); - message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures); + message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures, long + 1); } return message; }; @@ -216038,7 +225174,7 @@ this.location = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -216104,9 +225240,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decode = function decode(reader, length, error) { + SourceCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -216116,11 +225256,11 @@ case 1: { if (!(message.location && message.location.length)) message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -216151,14 +225291,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCodeInfo.verify = function verify(message) { + SourceCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.location != null && message.hasOwnProperty("location")) { if (!Array.isArray(message.location)) return "location: array expected"; for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i], long + 1); if (error) return "location." + error; } @@ -216174,9 +225318,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo */ - SourceCodeInfo.fromObject = function fromObject(object) { + SourceCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo(); if (object.location) { if (!Array.isArray(object.location)) @@ -216185,7 +225333,7 @@ for (var i = 0; i < object.location.length; ++i) { if (typeof object.location[i] !== "object") throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i], long + 1); } } return message; @@ -216267,7 +225415,7 @@ this.leadingDetachedComments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -216381,9 +225529,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Location.decode = function decode(reader, length, error) { + Location.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); while (reader.pos < end) { var tag = reader.uint32(); @@ -216427,7 +225579,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -216458,9 +225610,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Location.verify = function verify(message) { + Location.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -216499,9 +225655,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo.Location} Location */ - Location.fromObject = function fromObject(object) { + Location.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo.Location(); if (object.path) { if (!Array.isArray(object.path)) @@ -216628,7 +225788,7 @@ this.annotation = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -216694,9 +225854,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GeneratedCodeInfo.decode = function decode(reader, length, error) { + GeneratedCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -216706,11 +225870,11 @@ case 1: { if (!(message.annotation && message.annotation.length)) message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -216741,14 +225905,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GeneratedCodeInfo.verify = function verify(message) { + GeneratedCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.annotation != null && message.hasOwnProperty("annotation")) { if (!Array.isArray(message.annotation)) return "annotation: array expected"; for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i], long + 1); if (error) return "annotation." + error; } @@ -216764,9 +225932,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo */ - GeneratedCodeInfo.fromObject = function fromObject(object) { + GeneratedCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo(); if (object.annotation) { if (!Array.isArray(object.annotation)) @@ -216775,7 +225947,7 @@ for (var i = 0; i < object.annotation.length; ++i) { if (typeof object.annotation[i] !== "object") throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i], long + 1); } } return message; @@ -216855,7 +226027,7 @@ this.path = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -216964,9 +226136,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decode = function decode(reader, length, error) { + Annotation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -217001,7 +226177,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -217032,9 +226208,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Annotation.verify = function verify(message) { + Annotation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -217071,9 +226251,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation */ - Annotation.fromObject = function fromObject(object) { + Annotation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); if (object.path) { if (!Array.isArray(object.path)) @@ -217233,7 +226417,7 @@ function Duration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -217308,9 +226492,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decode = function decode(reader, length, error) { + Duration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Duration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -217326,7 +226514,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -217357,9 +226545,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Duration.verify = function verify(message) { + Duration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -217377,9 +226569,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Duration} Duration */ - Duration.fromObject = function fromObject(object) { + Duration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Duration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Duration(); if (object.seconds != null) if ($util.Long) @@ -217476,7 +226672,7 @@ function Timestamp(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -217551,9 +226747,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decode = function decode(reader, length, error) { + Timestamp.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); while (reader.pos < end) { var tag = reader.uint32(); @@ -217569,7 +226769,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -217600,9 +226800,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Timestamp.verify = function verify(message) { + Timestamp.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -217620,9 +226824,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Timestamp} Timestamp */ - Timestamp.fromObject = function fromObject(object) { + Timestamp.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Timestamp) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Timestamp(); if (object.seconds != null) if ($util.Long) @@ -217719,7 +226927,7 @@ function Any(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -217794,9 +227002,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decode = function decode(reader, length, error) { + Any.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any(); while (reader.pos < end) { var tag = reader.uint32(); @@ -217812,7 +227024,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -217843,9 +227055,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Any.verify = function verify(message) { + Any.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type_url != null && message.hasOwnProperty("type_url")) if (!$util.isString(message.type_url)) return "type_url: string expected"; @@ -217863,9 +227079,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Any} Any */ - Any.fromObject = function fromObject(object) { + Any.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Any) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Any(); if (object.type_url != null) message.type_url = String(object.type_url); @@ -217955,7 +227175,7 @@ function Empty(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -218010,9 +227230,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length, error) { + Empty.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); while (reader.pos < end) { var tag = reader.uint32(); @@ -218020,7 +227244,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -218051,9 +227275,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Empty.verify = function verify(message) { + Empty.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -218065,9 +227293,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Empty} Empty */ - Empty.fromObject = function fromObject(object) { + Empty.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Empty) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.Empty(); }; @@ -218134,7 +227366,7 @@ this.paths = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -218200,9 +227432,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decode = function decode(reader, length, error) { + FieldMask.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldMask(); while (reader.pos < end) { var tag = reader.uint32(); @@ -218216,7 +227452,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -218247,9 +227483,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldMask.verify = function verify(message) { + FieldMask.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.paths != null && message.hasOwnProperty("paths")) { if (!Array.isArray(message.paths)) return "paths: array expected"; @@ -218268,9 +227508,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldMask} FieldMask */ - FieldMask.fromObject = function fromObject(object) { + FieldMask.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldMask) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldMask(); if (object.paths) { if (!Array.isArray(object.paths)) @@ -218354,7 +227598,7 @@ function DoubleValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -218419,9 +227663,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DoubleValue.decode = function decode(reader, length, error) { + DoubleValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DoubleValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -218433,7 +227681,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -218464,9 +227712,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DoubleValue.verify = function verify(message) { + DoubleValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (typeof message.value !== "number") return "value: number expected"; @@ -218481,9 +227733,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DoubleValue} DoubleValue */ - DoubleValue.fromObject = function fromObject(object) { + DoubleValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DoubleValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DoubleValue(); if (object.value != null) message.value = Number(object.value); @@ -218559,7 +227815,7 @@ function FloatValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -218624,9 +227880,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FloatValue.decode = function decode(reader, length, error) { + FloatValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FloatValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -218638,7 +227898,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -218669,9 +227929,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FloatValue.verify = function verify(message) { + FloatValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (typeof message.value !== "number") return "value: number expected"; @@ -218686,9 +227950,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FloatValue} FloatValue */ - FloatValue.fromObject = function fromObject(object) { + FloatValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FloatValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FloatValue(); if (object.value != null) message.value = Number(object.value); @@ -218764,7 +228032,7 @@ function Int64Value(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -218829,9 +228097,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Int64Value.decode = function decode(reader, length, error) { + Int64Value.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Int64Value(); while (reader.pos < end) { var tag = reader.uint32(); @@ -218843,7 +228115,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -218874,9 +228146,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Int64Value.verify = function verify(message) { + Int64Value.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!$util.isInteger(message.value) && !(message.value && $util.isInteger(message.value.low) && $util.isInteger(message.value.high))) return "value: integer|Long expected"; @@ -218891,9 +228167,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Int64Value} Int64Value */ - Int64Value.fromObject = function fromObject(object) { + Int64Value.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Int64Value) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Int64Value(); if (object.value != null) if ($util.Long) @@ -218983,7 +228263,7 @@ function UInt64Value(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -219048,9 +228328,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UInt64Value.decode = function decode(reader, length, error) { + UInt64Value.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UInt64Value(); while (reader.pos < end) { var tag = reader.uint32(); @@ -219062,7 +228346,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -219093,9 +228377,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UInt64Value.verify = function verify(message) { + UInt64Value.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!$util.isInteger(message.value) && !(message.value && $util.isInteger(message.value.low) && $util.isInteger(message.value.high))) return "value: integer|Long expected"; @@ -219110,9 +228398,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UInt64Value} UInt64Value */ - UInt64Value.fromObject = function fromObject(object) { + UInt64Value.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UInt64Value) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UInt64Value(); if (object.value != null) if ($util.Long) @@ -219202,7 +228494,7 @@ function Int32Value(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -219267,9 +228559,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Int32Value.decode = function decode(reader, length, error) { + Int32Value.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Int32Value(); while (reader.pos < end) { var tag = reader.uint32(); @@ -219281,7 +228577,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -219312,9 +228608,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Int32Value.verify = function verify(message) { + Int32Value.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!$util.isInteger(message.value)) return "value: integer expected"; @@ -219329,9 +228629,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Int32Value} Int32Value */ - Int32Value.fromObject = function fromObject(object) { + Int32Value.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Int32Value) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Int32Value(); if (object.value != null) message.value = object.value | 0; @@ -219407,7 +228711,7 @@ function UInt32Value(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -219472,9 +228776,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UInt32Value.decode = function decode(reader, length, error) { + UInt32Value.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UInt32Value(); while (reader.pos < end) { var tag = reader.uint32(); @@ -219486,7 +228794,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -219517,9 +228825,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UInt32Value.verify = function verify(message) { + UInt32Value.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!$util.isInteger(message.value)) return "value: integer expected"; @@ -219534,9 +228846,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UInt32Value} UInt32Value */ - UInt32Value.fromObject = function fromObject(object) { + UInt32Value.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UInt32Value) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UInt32Value(); if (object.value != null) message.value = object.value >>> 0; @@ -219612,7 +228928,7 @@ function BoolValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -219677,9 +228993,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BoolValue.decode = function decode(reader, length, error) { + BoolValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.BoolValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -219691,7 +229011,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -219722,9 +229042,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BoolValue.verify = function verify(message) { + BoolValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (typeof message.value !== "boolean") return "value: boolean expected"; @@ -219739,9 +229063,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.BoolValue} BoolValue */ - BoolValue.fromObject = function fromObject(object) { + BoolValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.BoolValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.BoolValue(); if (object.value != null) message.value = Boolean(object.value); @@ -219817,7 +229145,7 @@ function StringValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -219882,9 +229210,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StringValue.decode = function decode(reader, length, error) { + StringValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.StringValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -219896,7 +229228,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -219927,9 +229259,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StringValue.verify = function verify(message) { + StringValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!$util.isString(message.value)) return "value: string expected"; @@ -219944,9 +229280,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.StringValue} StringValue */ - StringValue.fromObject = function fromObject(object) { + StringValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.StringValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.StringValue(); if (object.value != null) message.value = String(object.value); @@ -220022,7 +229362,7 @@ function BytesValue(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -220087,9 +229427,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BytesValue.decode = function decode(reader, length, error) { + BytesValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.BytesValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -220101,7 +229445,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -220132,9 +229476,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BytesValue.verify = function verify(message) { + BytesValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.value != null && message.hasOwnProperty("value")) if (!(message.value && typeof message.value.length === "number" || $util.isString(message.value))) return "value: buffer expected"; @@ -220149,9 +229497,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.BytesValue} BytesValue */ - BytesValue.fromObject = function fromObject(object) { + BytesValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.BytesValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.BytesValue(); if (object.value != null) if (typeof object.value === "string") @@ -220237,7 +229589,7 @@ this.fields = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -220305,9 +229657,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Struct.decode = function decode(reader, length, error) { + Struct.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Struct(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -220327,18 +229683,20 @@ key = reader.string(); break; case 2: - value = $root.google.protobuf.Value.decode(reader, reader.uint32()); + value = $root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.fields, key); message.fields[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -220369,15 +229727,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Struct.verify = function verify(message) { + Struct.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fields != null && message.hasOwnProperty("fields")) { if (!$util.isObject(message.fields)) return "fields: object expected"; var key = Object.keys(message.fields); for (var i = 0; i < key.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.fields[key[i]]); + var error = $root.google.protobuf.Value.verify(message.fields[key[i]], long + 1); if (error) return "fields." + error; } @@ -220393,18 +229755,24 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Struct} Struct */ - Struct.fromObject = function fromObject(object) { + Struct.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Struct) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Struct(); if (object.fields) { if (typeof object.fields !== "object") throw TypeError(".google.protobuf.Struct.fields: object expected"); message.fields = {}; for (var keys = Object.keys(object.fields), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.fields, keys[i]); if (typeof object.fields[keys[i]] !== "object") throw TypeError(".google.protobuf.Struct.fields: object expected"); - message.fields[keys[i]] = $root.google.protobuf.Value.fromObject(object.fields[keys[i]]); + message.fields[keys[i]] = $root.google.protobuf.Value.fromObject(object.fields[keys[i]], long + 1); } } return message; @@ -220428,8 +229796,11 @@ var keys2; if (message.fields && (keys2 = Object.keys(message.fields)).length) { object.fields = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.fields, keys2[j]); object.fields[keys2[j]] = $root.google.protobuf.Value.toObject(message.fields[keys2[j]], options); + } } return object; }; @@ -220488,7 +229859,7 @@ function Value(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -220617,9 +229988,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Value.decode = function decode(reader, length, error) { + Value.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Value(); while (reader.pos < end) { var tag = reader.uint32(); @@ -220643,15 +230018,15 @@ break; } case 5: { - message.structValue = $root.google.protobuf.Struct.decode(reader, reader.uint32()); + message.structValue = $root.google.protobuf.Struct.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.listValue = $root.google.protobuf.ListValue.decode(reader, reader.uint32()); + message.listValue = $root.google.protobuf.ListValue.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -220682,9 +230057,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Value.verify = function verify(message) { + Value.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.nullValue != null && message.hasOwnProperty("nullValue")) { properties.kind = 1; @@ -220721,7 +230100,7 @@ return "kind: multiple values"; properties.kind = 1; { - var error = $root.google.protobuf.Struct.verify(message.structValue); + var error = $root.google.protobuf.Struct.verify(message.structValue, long + 1); if (error) return "structValue." + error; } @@ -220731,7 +230110,7 @@ return "kind: multiple values"; properties.kind = 1; { - var error = $root.google.protobuf.ListValue.verify(message.listValue); + var error = $root.google.protobuf.ListValue.verify(message.listValue, long + 1); if (error) return "listValue." + error; } @@ -220747,9 +230126,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Value} Value */ - Value.fromObject = function fromObject(object) { + Value.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Value) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Value(); switch (object.nullValue) { default: @@ -220772,12 +230155,12 @@ if (object.structValue != null) { if (typeof object.structValue !== "object") throw TypeError(".google.protobuf.Value.structValue: object expected"); - message.structValue = $root.google.protobuf.Struct.fromObject(object.structValue); + message.structValue = $root.google.protobuf.Struct.fromObject(object.structValue, long + 1); } if (object.listValue != null) { if (typeof object.listValue !== "object") throw TypeError(".google.protobuf.Value.listValue: object expected"); - message.listValue = $root.google.protobuf.ListValue.fromObject(object.listValue); + message.listValue = $root.google.protobuf.ListValue.fromObject(object.listValue, long + 1); } return message; }; @@ -220890,7 +230273,7 @@ this.values = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -220956,9 +230339,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListValue.decode = function decode(reader, length, error) { + ListValue.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ListValue(); while (reader.pos < end) { var tag = reader.uint32(); @@ -220968,11 +230355,11 @@ case 1: { if (!(message.values && message.values.length)) message.values = []; - message.values.push($root.google.protobuf.Value.decode(reader, reader.uint32())); + message.values.push($root.google.protobuf.Value.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -221003,14 +230390,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListValue.verify = function verify(message) { + ListValue.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.values != null && message.hasOwnProperty("values")) { if (!Array.isArray(message.values)) return "values: array expected"; for (var i = 0; i < message.values.length; ++i) { - var error = $root.google.protobuf.Value.verify(message.values[i]); + var error = $root.google.protobuf.Value.verify(message.values[i], long + 1); if (error) return "values." + error; } @@ -221026,9 +230417,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ListValue} ListValue */ - ListValue.fromObject = function fromObject(object) { + ListValue.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ListValue) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ListValue(); if (object.values) { if (!Array.isArray(object.values)) @@ -221037,7 +230432,7 @@ for (var i = 0; i < object.values.length; ++i) { if (typeof object.values[i] !== "object") throw TypeError(".google.protobuf.ListValue.values: object expected"); - message.values[i] = $root.google.protobuf.Value.fromObject(object.values[i]); + message.values[i] = $root.google.protobuf.Value.fromObject(object.values[i], long + 1); } } return message; @@ -221130,7 +230525,7 @@ this.details = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -221216,9 +230611,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Status.decode = function decode(reader, length, error) { + Status.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.rpc.Status(); while (reader.pos < end) { var tag = reader.uint32(); @@ -221236,11 +230635,11 @@ case 3: { if (!(message.details && message.details.length)) message.details = []; - message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -221271,9 +230670,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Status.verify = function verify(message) { + Status.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isInteger(message.code)) return "code: integer expected"; @@ -221284,7 +230687,7 @@ if (!Array.isArray(message.details)) return "details: array expected"; for (var i = 0; i < message.details.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.details[i]); + var error = $root.google.protobuf.Any.verify(message.details[i], long + 1); if (error) return "details." + error; } @@ -221300,9 +230703,13 @@ * @param {Object.} object Plain object * @returns {google.rpc.Status} Status */ - Status.fromObject = function fromObject(object) { + Status.fromObject = function fromObject(object, long) { if (object instanceof $root.google.rpc.Status) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.rpc.Status(); if (object.code != null) message.code = object.code | 0; @@ -221315,7 +230722,7 @@ for (var i = 0; i < object.details.length; ++i) { if (typeof object.details[i] !== "object") throw TypeError(".google.rpc.Status.details: object expected"); - message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]); + message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i], long + 1); } } return message; @@ -221617,7 +231024,7 @@ function Operation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -221736,9 +231143,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Operation.decode = function decode(reader, length, error) { + Operation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.Operation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -221750,7 +231161,7 @@ break; } case 2: { - message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -221758,15 +231169,15 @@ break; } case 4: { - message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.error = $root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.response = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -221797,15 +231208,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Operation.verify = function verify(message) { + Operation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.google.protobuf.Any.verify(message.metadata); + var error = $root.google.protobuf.Any.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -221815,7 +231230,7 @@ if (message.error != null && message.hasOwnProperty("error")) { properties.result = 1; { - var error = $root.google.rpc.Status.verify(message.error); + var error = $root.google.rpc.Status.verify(message.error, long + 1); if (error) return "error." + error; } @@ -221825,7 +231240,7 @@ return "result: multiple values"; properties.result = 1; { - var error = $root.google.protobuf.Any.verify(message.response); + var error = $root.google.protobuf.Any.verify(message.response, long + 1); if (error) return "response." + error; } @@ -221841,28 +231256,32 @@ * @param {Object.} object Plain object * @returns {google.longrunning.Operation} Operation */ - Operation.fromObject = function fromObject(object) { + Operation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.Operation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.Operation(); if (object.name != null) message.name = String(object.name); if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".google.longrunning.Operation.metadata: object expected"); - message.metadata = $root.google.protobuf.Any.fromObject(object.metadata); + message.metadata = $root.google.protobuf.Any.fromObject(object.metadata, long + 1); } if (object.done != null) message.done = Boolean(object.done); if (object.error != null) { if (typeof object.error !== "object") throw TypeError(".google.longrunning.Operation.error: object expected"); - message.error = $root.google.rpc.Status.fromObject(object.error); + message.error = $root.google.rpc.Status.fromObject(object.error, long + 1); } if (object.response != null) { if (typeof object.response !== "object") throw TypeError(".google.longrunning.Operation.response: object expected"); - message.response = $root.google.protobuf.Any.fromObject(object.response); + message.response = $root.google.protobuf.Any.fromObject(object.response, long + 1); } return message; }; @@ -221953,7 +231372,7 @@ function GetOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -222018,9 +231437,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOperationRequest.decode = function decode(reader, length, error) { + GetOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.GetOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -222032,7 +231455,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -222063,9 +231486,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOperationRequest.verify = function verify(message) { + GetOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -222080,9 +231507,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.GetOperationRequest} GetOperationRequest */ - GetOperationRequest.fromObject = function fromObject(object) { + GetOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.GetOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.GetOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -222161,7 +231592,7 @@ function ListOperationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -222256,9 +231687,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsRequest.decode = function decode(reader, length, error) { + ListOperationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -222282,7 +231717,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -222313,9 +231748,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsRequest.verify = function verify(message) { + ListOperationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -222339,9 +231778,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest */ - ListOperationsRequest.fromObject = function fromObject(object) { + ListOperationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsRequest(); if (object.name != null) message.name = String(object.name); @@ -222435,7 +231878,7 @@ this.operations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -222511,9 +231954,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsResponse.decode = function decode(reader, length, error) { + ListOperationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -222523,7 +231970,7 @@ case 1: { if (!(message.operations && message.operations.length)) message.operations = []; - message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); + message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -222531,7 +231978,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -222562,14 +232009,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsResponse.verify = function verify(message) { + ListOperationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.operations != null && message.hasOwnProperty("operations")) { if (!Array.isArray(message.operations)) return "operations: array expected"; for (var i = 0; i < message.operations.length; ++i) { - var error = $root.google.longrunning.Operation.verify(message.operations[i]); + var error = $root.google.longrunning.Operation.verify(message.operations[i], long + 1); if (error) return "operations." + error; } @@ -222588,9 +232039,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse */ - ListOperationsResponse.fromObject = function fromObject(object) { + ListOperationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsResponse(); if (object.operations) { if (!Array.isArray(object.operations)) @@ -222599,7 +232054,7 @@ for (var i = 0; i < object.operations.length; ++i) { if (typeof object.operations[i] !== "object") throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected"); - message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i]); + message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i], long + 1); } } if (object.nextPageToken != null) @@ -222683,7 +232138,7 @@ function CancelOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -222748,9 +232203,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CancelOperationRequest.decode = function decode(reader, length, error) { + CancelOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.CancelOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -222762,7 +232221,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -222793,9 +232252,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CancelOperationRequest.verify = function verify(message) { + CancelOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -222810,9 +232273,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest */ - CancelOperationRequest.fromObject = function fromObject(object) { + CancelOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.CancelOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.CancelOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -222888,7 +232355,7 @@ function DeleteOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -222953,9 +232420,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteOperationRequest.decode = function decode(reader, length, error) { + DeleteOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.DeleteOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -222967,7 +232438,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -222998,9 +232469,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteOperationRequest.verify = function verify(message) { + DeleteOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -223015,9 +232490,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest */ - DeleteOperationRequest.fromObject = function fromObject(object) { + DeleteOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.DeleteOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.DeleteOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -223094,7 +232573,7 @@ function WaitOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -223169,9 +232648,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WaitOperationRequest.decode = function decode(reader, length, error) { + WaitOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.WaitOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -223183,11 +232666,11 @@ break; } case 2: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -223218,14 +232701,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WaitOperationRequest.verify = function verify(message) { + WaitOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -223240,16 +232727,20 @@ * @param {Object.} object Plain object * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest */ - WaitOperationRequest.fromObject = function fromObject(object) { + WaitOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.WaitOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.WaitOperationRequest(); if (object.name != null) message.name = String(object.name); if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } return message; }; @@ -223328,7 +232819,7 @@ function OperationInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -223403,9 +232894,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationInfo.decode = function decode(reader, length, error) { + OperationInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.OperationInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -223421,7 +232916,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -223452,9 +232947,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationInfo.verify = function verify(message) { + OperationInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.responseType != null && message.hasOwnProperty("responseType")) if (!$util.isString(message.responseType)) return "responseType: string expected"; @@ -223472,9 +232971,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.OperationInfo} OperationInfo */ - OperationInfo.fromObject = function fromObject(object) { + OperationInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.OperationInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.OperationInfo(); if (object.responseType != null) message.responseType = String(object.responseType); @@ -223570,7 +233073,7 @@ function Date(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -223655,9 +233158,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Date.decode = function decode(reader, length, error) { + Date.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.type.Date(); while (reader.pos < end) { var tag = reader.uint32(); @@ -223677,7 +233184,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -223708,9 +233215,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Date.verify = function verify(message) { + Date.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.year != null && message.hasOwnProperty("year")) if (!$util.isInteger(message.year)) return "year: integer expected"; @@ -223731,9 +233242,13 @@ * @param {Object.} object Plain object * @returns {google.type.Date} Date */ - Date.fromObject = function fromObject(object) { + Date.fromObject = function fromObject(object, long) { if (object instanceof $root.google.type.Date) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.type.Date(); if (object.year != null) message.year = object.year | 0; diff --git a/packages/google-cloud-run/README.md b/packages/google-cloud-run/README.md index af199e3b6603..f763f40717c1 100644 --- a/packages/google-cloud-run/README.md +++ b/packages/google-cloud-run/README.md @@ -89,7 +89,6 @@ Samples are in the [`samples/`][homepage_samples] directory. Each sample's `READ | set iam policy | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-run/samples/generated/v2/services.set_iam_policy.js) | | test iam permissions | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-run/samples/generated/v2/services.test_iam_permissions.js) | | update service | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-run/samples/generated/v2/services.update_service.js) | -| cloud | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-run/samples/generated/v2/snippet_metadata_google.cloud.run.v2.json) | | get task | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-run/samples/generated/v2/tasks.get_task.js) | | list tasks | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-run/samples/generated/v2/tasks.list_tasks.js) | | create worker pool | [source code](https://github.com/googleapis/google-cloud-node/blob/main/packages/google-cloud-run/samples/generated/v2/worker_pools.create_worker_pool.js) | diff --git a/packages/google-cloud-run/protos/protos.js b/packages/google-cloud-run/protos/protos.js index 7a69c1951e71..1d6497357696 100644 --- a/packages/google-cloud-run/protos/protos.js +++ b/packages/google-cloud-run/protos/protos.js @@ -165,7 +165,7 @@ this.tags = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -356,9 +356,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SubmitBuildRequest.decode = function decode(reader, length, error) { + SubmitBuildRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.SubmitBuildRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -370,7 +374,7 @@ break; } case 2: { - message.storageSource = $root.google.cloud.run.v2.StorageSource.decode(reader, reader.uint32()); + message.storageSource = $root.google.cloud.run.v2.StorageSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -378,11 +382,11 @@ break; } case 4: { - message.buildpackBuild = $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild.decode(reader, reader.uint32()); + message.buildpackBuild = $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.dockerBuild = $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild.decode(reader, reader.uint32()); + message.dockerBuild = $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { @@ -412,7 +416,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -443,9 +447,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SubmitBuildRequest.verify = function verify(message) { + SubmitBuildRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) @@ -453,7 +461,7 @@ if (message.storageSource != null && message.hasOwnProperty("storageSource")) { properties.source = 1; { - var error = $root.google.cloud.run.v2.StorageSource.verify(message.storageSource); + var error = $root.google.cloud.run.v2.StorageSource.verify(message.storageSource, long + 1); if (error) return "storageSource." + error; } @@ -464,7 +472,7 @@ if (message.buildpackBuild != null && message.hasOwnProperty("buildpackBuild")) { properties.buildType = 1; { - var error = $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild.verify(message.buildpackBuild); + var error = $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild.verify(message.buildpackBuild, long + 1); if (error) return "buildpackBuild." + error; } @@ -474,7 +482,7 @@ return "buildType: multiple values"; properties.buildType = 1; { - var error = $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild.verify(message.dockerBuild); + var error = $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild.verify(message.dockerBuild, long + 1); if (error) return "dockerBuild." + error; } @@ -523,28 +531,32 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.SubmitBuildRequest} SubmitBuildRequest */ - SubmitBuildRequest.fromObject = function fromObject(object) { + SubmitBuildRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.SubmitBuildRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.SubmitBuildRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.storageSource != null) { if (typeof object.storageSource !== "object") throw TypeError(".google.cloud.run.v2.SubmitBuildRequest.storageSource: object expected"); - message.storageSource = $root.google.cloud.run.v2.StorageSource.fromObject(object.storageSource); + message.storageSource = $root.google.cloud.run.v2.StorageSource.fromObject(object.storageSource, long + 1); } if (object.imageUri != null) message.imageUri = String(object.imageUri); if (object.buildpackBuild != null) { if (typeof object.buildpackBuild !== "object") throw TypeError(".google.cloud.run.v2.SubmitBuildRequest.buildpackBuild: object expected"); - message.buildpackBuild = $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild.fromObject(object.buildpackBuild); + message.buildpackBuild = $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild.fromObject(object.buildpackBuild, long + 1); } if (object.dockerBuild != null) { if (typeof object.dockerBuild !== "object") throw TypeError(".google.cloud.run.v2.SubmitBuildRequest.dockerBuild: object expected"); - message.dockerBuild = $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild.fromObject(object.dockerBuild); + message.dockerBuild = $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild.fromObject(object.dockerBuild, long + 1); } if (object.serviceAccount != null) message.serviceAccount = String(object.serviceAccount); @@ -710,7 +722,7 @@ function DockerBuild(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -765,9 +777,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DockerBuild.decode = function decode(reader, length, error) { + DockerBuild.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild(); while (reader.pos < end) { var tag = reader.uint32(); @@ -775,7 +791,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -806,9 +822,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DockerBuild.verify = function verify(message) { + DockerBuild.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -820,9 +840,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.SubmitBuildRequest.DockerBuild} DockerBuild */ - DockerBuild.fromObject = function fromObject(object) { + DockerBuild.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.cloud.run.v2.SubmitBuildRequest.DockerBuild(); }; @@ -895,7 +919,7 @@ this.environmentVariables = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1021,9 +1045,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuildpacksBuild.decode = function decode(reader, length, error) { + BuildpacksBuild.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -1062,10 +1090,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.environmentVariables, key); message.environmentVariables[key] = value; break; } @@ -1078,7 +1108,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1109,9 +1139,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuildpacksBuild.verify = function verify(message) { + BuildpacksBuild.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.runtime != null && message.hasOwnProperty("runtime")) if (!$util.isString(message.runtime)) return "runtime: string expected"; @@ -1149,9 +1183,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild} BuildpacksBuild */ - BuildpacksBuild.fromObject = function fromObject(object) { + BuildpacksBuild.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild(); if (object.runtime != null) message.runtime = String(object.runtime); @@ -1165,8 +1203,11 @@ if (typeof object.environmentVariables !== "object") throw TypeError(".google.cloud.run.v2.SubmitBuildRequest.BuildpacksBuild.environmentVariables: object expected"); message.environmentVariables = {}; - for (var keys = Object.keys(object.environmentVariables), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.environmentVariables), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.environmentVariables, keys[i]); message.environmentVariables[keys[i]] = String(object.environmentVariables[keys[i]]); + } } if (object.enableAutomaticUpdates != null) message.enableAutomaticUpdates = Boolean(object.enableAutomaticUpdates); @@ -1209,8 +1250,11 @@ var keys2; if (message.environmentVariables && (keys2 = Object.keys(message.environmentVariables)).length) { object.environmentVariables = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.environmentVariables, keys2[j]); object.environmentVariables[keys2[j]] = message.environmentVariables[keys2[j]]; + } } if (message.enableAutomaticUpdates != null && message.hasOwnProperty("enableAutomaticUpdates")) object.enableAutomaticUpdates = message.enableAutomaticUpdates; @@ -1273,7 +1317,7 @@ function SubmitBuildResponse(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1358,9 +1402,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SubmitBuildResponse.decode = function decode(reader, length, error) { + SubmitBuildResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.SubmitBuildResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1368,7 +1416,7 @@ break; switch (tag >>> 3) { case 1: { - message.buildOperation = $root.google.longrunning.Operation.decode(reader, reader.uint32()); + message.buildOperation = $root.google.longrunning.Operation.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -1380,7 +1428,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1411,11 +1459,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SubmitBuildResponse.verify = function verify(message) { + SubmitBuildResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.buildOperation != null && message.hasOwnProperty("buildOperation")) { - var error = $root.google.longrunning.Operation.verify(message.buildOperation); + var error = $root.google.longrunning.Operation.verify(message.buildOperation, long + 1); if (error) return "buildOperation." + error; } @@ -1436,14 +1488,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.SubmitBuildResponse} SubmitBuildResponse */ - SubmitBuildResponse.fromObject = function fromObject(object) { + SubmitBuildResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.SubmitBuildResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.SubmitBuildResponse(); if (object.buildOperation != null) { if (typeof object.buildOperation !== "object") throw TypeError(".google.cloud.run.v2.SubmitBuildResponse.buildOperation: object expected"); - message.buildOperation = $root.google.longrunning.Operation.fromObject(object.buildOperation); + message.buildOperation = $root.google.longrunning.Operation.fromObject(object.buildOperation, long + 1); } if (object.baseImageUri != null) message.baseImageUri = String(object.baseImageUri); @@ -1530,7 +1586,7 @@ function StorageSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1615,9 +1671,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StorageSource.decode = function decode(reader, length, error) { + StorageSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.StorageSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1637,7 +1697,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -1668,9 +1728,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StorageSource.verify = function verify(message) { + StorageSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.bucket != null && message.hasOwnProperty("bucket")) if (!$util.isString(message.bucket)) return "bucket: string expected"; @@ -1691,9 +1755,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.StorageSource} StorageSource */ - StorageSource.fromObject = function fromObject(object) { + StorageSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.StorageSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.StorageSource(); if (object.bucket != null) message.bucket = String(object.bucket); @@ -1801,7 +1869,7 @@ function Condition(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -1950,9 +2018,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Condition.decode = function decode(reader, length, error) { + Condition.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Condition(); while (reader.pos < end) { var tag = reader.uint32(); @@ -1972,7 +2044,7 @@ break; } case 4: { - message.lastTransitionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.lastTransitionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -1992,7 +2064,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2023,9 +2095,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Condition.verify = function verify(message) { + Condition.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) @@ -2045,7 +2121,7 @@ if (!$util.isString(message.message)) return "message: string expected"; if (message.lastTransitionTime != null && message.hasOwnProperty("lastTransitionTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.lastTransitionTime); + var error = $root.google.protobuf.Timestamp.verify(message.lastTransitionTime, long + 1); if (error) return "lastTransitionTime." + error; } @@ -2134,9 +2210,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Condition} Condition */ - Condition.fromObject = function fromObject(object) { + Condition.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Condition) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Condition(); if (object.type != null) message.type = String(object.type); @@ -2173,7 +2253,7 @@ if (object.lastTransitionTime != null) { if (typeof object.lastTransitionTime !== "object") throw TypeError(".google.cloud.run.v2.Condition.lastTransitionTime: object expected"); - message.lastTransitionTime = $root.google.protobuf.Timestamp.fromObject(object.lastTransitionTime); + message.lastTransitionTime = $root.google.protobuf.Timestamp.fromObject(object.lastTransitionTime, long + 1); } switch (object.severity) { default: @@ -2608,7 +2688,7 @@ function ContainerStatus(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -2683,9 +2763,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ContainerStatus.decode = function decode(reader, length, error) { + ContainerStatus.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ContainerStatus(); while (reader.pos < end) { var tag = reader.uint32(); @@ -2701,7 +2785,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -2732,9 +2816,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ContainerStatus.verify = function verify(message) { + ContainerStatus.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -2752,9 +2840,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ContainerStatus} ContainerStatus */ - ContainerStatus.fromObject = function fromObject(object) { + ContainerStatus.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ContainerStatus) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ContainerStatus(); if (object.name != null) message.name = String(object.name); @@ -3003,7 +3095,7 @@ function GetExecutionRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3068,9 +3160,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetExecutionRequest.decode = function decode(reader, length, error) { + GetExecutionRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GetExecutionRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3082,7 +3178,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3113,9 +3209,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetExecutionRequest.verify = function verify(message) { + GetExecutionRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -3130,9 +3230,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GetExecutionRequest} GetExecutionRequest */ - GetExecutionRequest.fromObject = function fromObject(object) { + GetExecutionRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GetExecutionRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GetExecutionRequest(); if (object.name != null) message.name = String(object.name); @@ -3211,7 +3315,7 @@ function ListExecutionsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3306,9 +3410,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListExecutionsRequest.decode = function decode(reader, length, error) { + ListExecutionsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListExecutionsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3332,7 +3440,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3363,9 +3471,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListExecutionsRequest.verify = function verify(message) { + ListExecutionsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -3389,9 +3501,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListExecutionsRequest} ListExecutionsRequest */ - ListExecutionsRequest.fromObject = function fromObject(object) { + ListExecutionsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListExecutionsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListExecutionsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -3485,7 +3601,7 @@ this.executions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3561,9 +3677,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListExecutionsResponse.decode = function decode(reader, length, error) { + ListExecutionsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListExecutionsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3573,7 +3693,7 @@ case 1: { if (!(message.executions && message.executions.length)) message.executions = []; - message.executions.push($root.google.cloud.run.v2.Execution.decode(reader, reader.uint32())); + message.executions.push($root.google.cloud.run.v2.Execution.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -3581,7 +3701,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3612,14 +3732,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListExecutionsResponse.verify = function verify(message) { + ListExecutionsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.executions != null && message.hasOwnProperty("executions")) { if (!Array.isArray(message.executions)) return "executions: array expected"; for (var i = 0; i < message.executions.length; ++i) { - var error = $root.google.cloud.run.v2.Execution.verify(message.executions[i]); + var error = $root.google.cloud.run.v2.Execution.verify(message.executions[i], long + 1); if (error) return "executions." + error; } @@ -3638,9 +3762,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListExecutionsResponse} ListExecutionsResponse */ - ListExecutionsResponse.fromObject = function fromObject(object) { + ListExecutionsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListExecutionsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListExecutionsResponse(); if (object.executions) { if (!Array.isArray(object.executions)) @@ -3649,7 +3777,7 @@ for (var i = 0; i < object.executions.length; ++i) { if (typeof object.executions[i] !== "object") throw TypeError(".google.cloud.run.v2.ListExecutionsResponse.executions: object expected"); - message.executions[i] = $root.google.cloud.run.v2.Execution.fromObject(object.executions[i]); + message.executions[i] = $root.google.cloud.run.v2.Execution.fromObject(object.executions[i], long + 1); } } if (object.nextPageToken != null) @@ -3735,7 +3863,7 @@ function DeleteExecutionRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -3820,9 +3948,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteExecutionRequest.decode = function decode(reader, length, error) { + DeleteExecutionRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.DeleteExecutionRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -3842,7 +3974,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -3873,9 +4005,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteExecutionRequest.verify = function verify(message) { + DeleteExecutionRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -3896,9 +4032,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.DeleteExecutionRequest} DeleteExecutionRequest */ - DeleteExecutionRequest.fromObject = function fromObject(object) { + DeleteExecutionRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.DeleteExecutionRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.DeleteExecutionRequest(); if (object.name != null) message.name = String(object.name); @@ -3987,7 +4127,7 @@ function CancelExecutionRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4072,9 +4212,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CancelExecutionRequest.decode = function decode(reader, length, error) { + CancelExecutionRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.CancelExecutionRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -4094,7 +4238,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4125,9 +4269,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CancelExecutionRequest.verify = function verify(message) { + CancelExecutionRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -4148,9 +4296,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.CancelExecutionRequest} CancelExecutionRequest */ - CancelExecutionRequest.fromObject = function fromObject(object) { + CancelExecutionRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.CancelExecutionRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.CancelExecutionRequest(); if (object.name != null) message.name = String(object.name); @@ -4267,7 +4419,7 @@ this.conditions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -4605,9 +4757,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Execution.decode = function decode(reader, length, error) { + Execution.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Execution(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -4646,10 +4802,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -4669,35 +4827,37 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 6: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.completionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.completionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { @@ -4717,7 +4877,7 @@ break; } case 15: { - message.template = $root.google.cloud.run.v2.TaskTemplate.decode(reader, reader.uint32()); + message.template = $root.google.cloud.run.v2.TaskTemplate.decode(reader, reader.uint32(), undefined, long + 1); break; } case 16: { @@ -4727,7 +4887,7 @@ case 17: { if (!(message.conditions && message.conditions.length)) message.conditions = []; - message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32())); + message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 18: { @@ -4767,7 +4927,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -4798,9 +4958,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Execution.verify = function verify(message) { + Execution.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -4830,32 +4994,32 @@ return "annotations: string{k:string} expected"; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.completionTime != null && message.hasOwnProperty("completionTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.completionTime); + var error = $root.google.protobuf.Timestamp.verify(message.completionTime, long + 1); if (error) return "completionTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -4883,7 +5047,7 @@ if (!$util.isInteger(message.taskCount)) return "taskCount: integer expected"; if (message.template != null && message.hasOwnProperty("template")) { - var error = $root.google.cloud.run.v2.TaskTemplate.verify(message.template); + var error = $root.google.cloud.run.v2.TaskTemplate.verify(message.template, long + 1); if (error) return "template." + error; } @@ -4894,7 +5058,7 @@ if (!Array.isArray(message.conditions)) return "conditions: array expected"; for (var i = 0; i < message.conditions.length; ++i) { - var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i]); + var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i], long + 1); if (error) return "conditions." + error; } @@ -4937,9 +5101,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Execution} Execution */ - Execution.fromObject = function fromObject(object) { + Execution.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Execution) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Execution(); if (object.name != null) message.name = String(object.name); @@ -4960,45 +5128,51 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.Execution.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.Execution.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.run.v2.Execution.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.run.v2.Execution.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.completionTime != null) { if (typeof object.completionTime !== "object") throw TypeError(".google.cloud.run.v2.Execution.completionTime: object expected"); - message.completionTime = $root.google.protobuf.Timestamp.fromObject(object.completionTime); + message.completionTime = $root.google.protobuf.Timestamp.fromObject(object.completionTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.run.v2.Execution.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.run.v2.Execution.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.run.v2.Execution.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } switch (object.launchStage) { default: @@ -5049,7 +5223,7 @@ if (object.template != null) { if (typeof object.template !== "object") throw TypeError(".google.cloud.run.v2.Execution.template: object expected"); - message.template = $root.google.cloud.run.v2.TaskTemplate.fromObject(object.template); + message.template = $root.google.cloud.run.v2.TaskTemplate.fromObject(object.template, long + 1); } if (object.reconciling != null) message.reconciling = Boolean(object.reconciling); @@ -5060,7 +5234,7 @@ for (var i = 0; i < object.conditions.length; ++i) { if (typeof object.conditions[i] !== "object") throw TypeError(".google.cloud.run.v2.Execution.conditions: object expected"); - message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i]); + message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i], long + 1); } } if (object.observedGeneration != null) @@ -5157,13 +5331,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.createTime != null && message.hasOwnProperty("createTime")) object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); @@ -5280,7 +5460,7 @@ this.volumes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -5457,9 +5637,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TaskTemplate.decode = function decode(reader, length, error) { + TaskTemplate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.TaskTemplate(); while (reader.pos < end) { var tag = reader.uint32(); @@ -5469,13 +5653,13 @@ case 1: { if (!(message.containers && message.containers.length)) message.containers = []; - message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32())); + message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.volumes && message.volumes.length)) message.volumes = []; - message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32())); + message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -5483,7 +5667,7 @@ break; } case 4: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -5499,11 +5683,11 @@ break; } case 8: { - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32()); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32()); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -5511,7 +5695,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -5542,15 +5726,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TaskTemplate.verify = function verify(message) { + TaskTemplate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.containers != null && message.hasOwnProperty("containers")) { if (!Array.isArray(message.containers)) return "containers: array expected"; for (var i = 0; i < message.containers.length; ++i) { - var error = $root.google.cloud.run.v2.Container.verify(message.containers[i]); + var error = $root.google.cloud.run.v2.Container.verify(message.containers[i], long + 1); if (error) return "containers." + error; } @@ -5559,7 +5747,7 @@ if (!Array.isArray(message.volumes)) return "volumes: array expected"; for (var i = 0; i < message.volumes.length; ++i) { - var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i]); + var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i], long + 1); if (error) return "volumes." + error; } @@ -5570,7 +5758,7 @@ return "maxRetries: integer expected"; } if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -5590,12 +5778,12 @@ if (!$util.isString(message.encryptionKey)) return "encryptionKey: string expected"; if (message.vpcAccess != null && message.hasOwnProperty("vpcAccess")) { - var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess); + var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess, long + 1); if (error) return "vpcAccess." + error; } if (message.nodeSelector != null && message.hasOwnProperty("nodeSelector")) { - var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector); + var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector, long + 1); if (error) return "nodeSelector." + error; } @@ -5615,9 +5803,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.TaskTemplate} TaskTemplate */ - TaskTemplate.fromObject = function fromObject(object) { + TaskTemplate.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.TaskTemplate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.TaskTemplate(); if (object.containers) { if (!Array.isArray(object.containers)) @@ -5626,7 +5818,7 @@ for (var i = 0; i < object.containers.length; ++i) { if (typeof object.containers[i] !== "object") throw TypeError(".google.cloud.run.v2.TaskTemplate.containers: object expected"); - message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i]); + message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i], long + 1); } } if (object.volumes) { @@ -5636,7 +5828,7 @@ for (var i = 0; i < object.volumes.length; ++i) { if (typeof object.volumes[i] !== "object") throw TypeError(".google.cloud.run.v2.TaskTemplate.volumes: object expected"); - message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i]); + message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i], long + 1); } } if (object.maxRetries != null) @@ -5644,7 +5836,7 @@ if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.cloud.run.v2.TaskTemplate.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } if (object.serviceAccount != null) message.serviceAccount = String(object.serviceAccount); @@ -5673,12 +5865,12 @@ if (object.vpcAccess != null) { if (typeof object.vpcAccess !== "object") throw TypeError(".google.cloud.run.v2.TaskTemplate.vpcAccess: object expected"); - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess, long + 1); } if (object.nodeSelector != null) { if (typeof object.nodeSelector !== "object") throw TypeError(".google.cloud.run.v2.TaskTemplate.nodeSelector: object expected"); - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector, long + 1); } if (object.gpuZonalRedundancyDisabled != null) message.gpuZonalRedundancyDisabled = Boolean(object.gpuZonalRedundancyDisabled); @@ -5815,7 +6007,7 @@ this.dependsOn = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6036,9 +6228,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Container.decode = function decode(reader, length, error) { + Container.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Container(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6054,7 +6250,7 @@ break; } case 17: { - message.sourceCode = $root.google.cloud.run.v2.SourceCode.decode(reader, reader.uint32()); + message.sourceCode = $root.google.cloud.run.v2.SourceCode.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -6072,23 +6268,23 @@ case 5: { if (!(message.env && message.env.length)) message.env = []; - message.env.push($root.google.cloud.run.v2.EnvVar.decode(reader, reader.uint32())); + message.env.push($root.google.cloud.run.v2.EnvVar.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { - message.resources = $root.google.cloud.run.v2.ResourceRequirements.decode(reader, reader.uint32()); + message.resources = $root.google.cloud.run.v2.ResourceRequirements.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { if (!(message.ports && message.ports.length)) message.ports = []; - message.ports.push($root.google.cloud.run.v2.ContainerPort.decode(reader, reader.uint32())); + message.ports.push($root.google.cloud.run.v2.ContainerPort.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { if (!(message.volumeMounts && message.volumeMounts.length)) message.volumeMounts = []; - message.volumeMounts.push($root.google.cloud.run.v2.VolumeMount.decode(reader, reader.uint32())); + message.volumeMounts.push($root.google.cloud.run.v2.VolumeMount.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 9: { @@ -6096,15 +6292,15 @@ break; } case 10: { - message.livenessProbe = $root.google.cloud.run.v2.Probe.decode(reader, reader.uint32()); + message.livenessProbe = $root.google.cloud.run.v2.Probe.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.startupProbe = $root.google.cloud.run.v2.Probe.decode(reader, reader.uint32()); + message.startupProbe = $root.google.cloud.run.v2.Probe.decode(reader, reader.uint32(), undefined, long + 1); break; } case 14: { - message.readinessProbe = $root.google.cloud.run.v2.Probe.decode(reader, reader.uint32()); + message.readinessProbe = $root.google.cloud.run.v2.Probe.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -6118,11 +6314,11 @@ break; } case 15: { - message.buildInfo = $root.google.cloud.run.v2.BuildInfo.decode(reader, reader.uint32()); + message.buildInfo = $root.google.cloud.run.v2.BuildInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6153,9 +6349,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Container.verify = function verify(message) { + Container.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -6163,7 +6363,7 @@ if (!$util.isString(message.image)) return "image: string expected"; if (message.sourceCode != null && message.hasOwnProperty("sourceCode")) { - var error = $root.google.cloud.run.v2.SourceCode.verify(message.sourceCode); + var error = $root.google.cloud.run.v2.SourceCode.verify(message.sourceCode, long + 1); if (error) return "sourceCode." + error; } @@ -6185,13 +6385,13 @@ if (!Array.isArray(message.env)) return "env: array expected"; for (var i = 0; i < message.env.length; ++i) { - var error = $root.google.cloud.run.v2.EnvVar.verify(message.env[i]); + var error = $root.google.cloud.run.v2.EnvVar.verify(message.env[i], long + 1); if (error) return "env." + error; } } if (message.resources != null && message.hasOwnProperty("resources")) { - var error = $root.google.cloud.run.v2.ResourceRequirements.verify(message.resources); + var error = $root.google.cloud.run.v2.ResourceRequirements.verify(message.resources, long + 1); if (error) return "resources." + error; } @@ -6199,7 +6399,7 @@ if (!Array.isArray(message.ports)) return "ports: array expected"; for (var i = 0; i < message.ports.length; ++i) { - var error = $root.google.cloud.run.v2.ContainerPort.verify(message.ports[i]); + var error = $root.google.cloud.run.v2.ContainerPort.verify(message.ports[i], long + 1); if (error) return "ports." + error; } @@ -6208,7 +6408,7 @@ if (!Array.isArray(message.volumeMounts)) return "volumeMounts: array expected"; for (var i = 0; i < message.volumeMounts.length; ++i) { - var error = $root.google.cloud.run.v2.VolumeMount.verify(message.volumeMounts[i]); + var error = $root.google.cloud.run.v2.VolumeMount.verify(message.volumeMounts[i], long + 1); if (error) return "volumeMounts." + error; } @@ -6217,17 +6417,17 @@ if (!$util.isString(message.workingDir)) return "workingDir: string expected"; if (message.livenessProbe != null && message.hasOwnProperty("livenessProbe")) { - var error = $root.google.cloud.run.v2.Probe.verify(message.livenessProbe); + var error = $root.google.cloud.run.v2.Probe.verify(message.livenessProbe, long + 1); if (error) return "livenessProbe." + error; } if (message.startupProbe != null && message.hasOwnProperty("startupProbe")) { - var error = $root.google.cloud.run.v2.Probe.verify(message.startupProbe); + var error = $root.google.cloud.run.v2.Probe.verify(message.startupProbe, long + 1); if (error) return "startupProbe." + error; } if (message.readinessProbe != null && message.hasOwnProperty("readinessProbe")) { - var error = $root.google.cloud.run.v2.Probe.verify(message.readinessProbe); + var error = $root.google.cloud.run.v2.Probe.verify(message.readinessProbe, long + 1); if (error) return "readinessProbe." + error; } @@ -6242,7 +6442,7 @@ if (!$util.isString(message.baseImageUri)) return "baseImageUri: string expected"; if (message.buildInfo != null && message.hasOwnProperty("buildInfo")) { - var error = $root.google.cloud.run.v2.BuildInfo.verify(message.buildInfo); + var error = $root.google.cloud.run.v2.BuildInfo.verify(message.buildInfo, long + 1); if (error) return "buildInfo." + error; } @@ -6257,9 +6457,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Container} Container */ - Container.fromObject = function fromObject(object) { + Container.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Container) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Container(); if (object.name != null) message.name = String(object.name); @@ -6268,7 +6472,7 @@ if (object.sourceCode != null) { if (typeof object.sourceCode !== "object") throw TypeError(".google.cloud.run.v2.Container.sourceCode: object expected"); - message.sourceCode = $root.google.cloud.run.v2.SourceCode.fromObject(object.sourceCode); + message.sourceCode = $root.google.cloud.run.v2.SourceCode.fromObject(object.sourceCode, long + 1); } if (object.command) { if (!Array.isArray(object.command)) @@ -6291,13 +6495,13 @@ for (var i = 0; i < object.env.length; ++i) { if (typeof object.env[i] !== "object") throw TypeError(".google.cloud.run.v2.Container.env: object expected"); - message.env[i] = $root.google.cloud.run.v2.EnvVar.fromObject(object.env[i]); + message.env[i] = $root.google.cloud.run.v2.EnvVar.fromObject(object.env[i], long + 1); } } if (object.resources != null) { if (typeof object.resources !== "object") throw TypeError(".google.cloud.run.v2.Container.resources: object expected"); - message.resources = $root.google.cloud.run.v2.ResourceRequirements.fromObject(object.resources); + message.resources = $root.google.cloud.run.v2.ResourceRequirements.fromObject(object.resources, long + 1); } if (object.ports) { if (!Array.isArray(object.ports)) @@ -6306,7 +6510,7 @@ for (var i = 0; i < object.ports.length; ++i) { if (typeof object.ports[i] !== "object") throw TypeError(".google.cloud.run.v2.Container.ports: object expected"); - message.ports[i] = $root.google.cloud.run.v2.ContainerPort.fromObject(object.ports[i]); + message.ports[i] = $root.google.cloud.run.v2.ContainerPort.fromObject(object.ports[i], long + 1); } } if (object.volumeMounts) { @@ -6316,7 +6520,7 @@ for (var i = 0; i < object.volumeMounts.length; ++i) { if (typeof object.volumeMounts[i] !== "object") throw TypeError(".google.cloud.run.v2.Container.volumeMounts: object expected"); - message.volumeMounts[i] = $root.google.cloud.run.v2.VolumeMount.fromObject(object.volumeMounts[i]); + message.volumeMounts[i] = $root.google.cloud.run.v2.VolumeMount.fromObject(object.volumeMounts[i], long + 1); } } if (object.workingDir != null) @@ -6324,17 +6528,17 @@ if (object.livenessProbe != null) { if (typeof object.livenessProbe !== "object") throw TypeError(".google.cloud.run.v2.Container.livenessProbe: object expected"); - message.livenessProbe = $root.google.cloud.run.v2.Probe.fromObject(object.livenessProbe); + message.livenessProbe = $root.google.cloud.run.v2.Probe.fromObject(object.livenessProbe, long + 1); } if (object.startupProbe != null) { if (typeof object.startupProbe !== "object") throw TypeError(".google.cloud.run.v2.Container.startupProbe: object expected"); - message.startupProbe = $root.google.cloud.run.v2.Probe.fromObject(object.startupProbe); + message.startupProbe = $root.google.cloud.run.v2.Probe.fromObject(object.startupProbe, long + 1); } if (object.readinessProbe != null) { if (typeof object.readinessProbe !== "object") throw TypeError(".google.cloud.run.v2.Container.readinessProbe: object expected"); - message.readinessProbe = $root.google.cloud.run.v2.Probe.fromObject(object.readinessProbe); + message.readinessProbe = $root.google.cloud.run.v2.Probe.fromObject(object.readinessProbe, long + 1); } if (object.dependsOn) { if (!Array.isArray(object.dependsOn)) @@ -6348,7 +6552,7 @@ if (object.buildInfo != null) { if (typeof object.buildInfo !== "object") throw TypeError(".google.cloud.run.v2.Container.buildInfo: object expected"); - message.buildInfo = $root.google.cloud.run.v2.BuildInfo.fromObject(object.buildInfo); + message.buildInfo = $root.google.cloud.run.v2.BuildInfo.fromObject(object.buildInfo, long + 1); } return message; }; @@ -6491,7 +6695,7 @@ this.limits = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6577,9 +6781,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceRequirements.decode = function decode(reader, length, error) { + ResourceRequirements.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ResourceRequirements(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -6602,10 +6810,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.limits, key); message.limits[key] = value; break; } @@ -6618,7 +6828,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6649,9 +6859,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceRequirements.verify = function verify(message) { + ResourceRequirements.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.limits != null && message.hasOwnProperty("limits")) { if (!$util.isObject(message.limits)) return "limits: object expected"; @@ -6677,16 +6891,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ResourceRequirements} ResourceRequirements */ - ResourceRequirements.fromObject = function fromObject(object) { + ResourceRequirements.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ResourceRequirements) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ResourceRequirements(); if (object.limits) { if (typeof object.limits !== "object") throw TypeError(".google.cloud.run.v2.ResourceRequirements.limits: object expected"); message.limits = {}; - for (var keys = Object.keys(object.limits), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.limits), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.limits, keys[i]); message.limits[keys[i]] = String(object.limits[keys[i]]); + } } if (object.cpuIdle != null) message.cpuIdle = Boolean(object.cpuIdle); @@ -6717,8 +6938,11 @@ var keys2; if (message.limits && (keys2 = Object.keys(message.limits)).length) { object.limits = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.limits, keys2[j]); object.limits[keys2[j]] = message.limits[keys2[j]]; + } } if (message.cpuIdle != null && message.hasOwnProperty("cpuIdle")) object.cpuIdle = message.cpuIdle; @@ -6778,7 +7002,7 @@ function EnvVar(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -6877,9 +7101,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnvVar.decode = function decode(reader, length, error) { + EnvVar.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.EnvVar(); while (reader.pos < end) { var tag = reader.uint32(); @@ -6895,11 +7123,11 @@ break; } case 3: { - message.valueSource = $root.google.cloud.run.v2.EnvVarSource.decode(reader, reader.uint32()); + message.valueSource = $root.google.cloud.run.v2.EnvVarSource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -6930,9 +7158,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnvVar.verify = function verify(message) { + EnvVar.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -6947,7 +7179,7 @@ return "values: multiple values"; properties.values = 1; { - var error = $root.google.cloud.run.v2.EnvVarSource.verify(message.valueSource); + var error = $root.google.cloud.run.v2.EnvVarSource.verify(message.valueSource, long + 1); if (error) return "valueSource." + error; } @@ -6963,9 +7195,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.EnvVar} EnvVar */ - EnvVar.fromObject = function fromObject(object) { + EnvVar.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.EnvVar) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.EnvVar(); if (object.name != null) message.name = String(object.name); @@ -6974,7 +7210,7 @@ if (object.valueSource != null) { if (typeof object.valueSource !== "object") throw TypeError(".google.cloud.run.v2.EnvVar.valueSource: object expected"); - message.valueSource = $root.google.cloud.run.v2.EnvVarSource.fromObject(object.valueSource); + message.valueSource = $root.google.cloud.run.v2.EnvVarSource.fromObject(object.valueSource, long + 1); } return message; }; @@ -7058,7 +7294,7 @@ function EnvVarSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7123,9 +7359,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnvVarSource.decode = function decode(reader, length, error) { + EnvVarSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.EnvVarSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7133,11 +7373,11 @@ break; switch (tag >>> 3) { case 1: { - message.secretKeyRef = $root.google.cloud.run.v2.SecretKeySelector.decode(reader, reader.uint32()); + message.secretKeyRef = $root.google.cloud.run.v2.SecretKeySelector.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7168,11 +7408,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnvVarSource.verify = function verify(message) { + EnvVarSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.secretKeyRef != null && message.hasOwnProperty("secretKeyRef")) { - var error = $root.google.cloud.run.v2.SecretKeySelector.verify(message.secretKeyRef); + var error = $root.google.cloud.run.v2.SecretKeySelector.verify(message.secretKeyRef, long + 1); if (error) return "secretKeyRef." + error; } @@ -7187,14 +7431,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.EnvVarSource} EnvVarSource */ - EnvVarSource.fromObject = function fromObject(object) { + EnvVarSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.EnvVarSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.EnvVarSource(); if (object.secretKeyRef != null) { if (typeof object.secretKeyRef !== "object") throw TypeError(".google.cloud.run.v2.EnvVarSource.secretKeyRef: object expected"); - message.secretKeyRef = $root.google.cloud.run.v2.SecretKeySelector.fromObject(object.secretKeyRef); + message.secretKeyRef = $root.google.cloud.run.v2.SecretKeySelector.fromObject(object.secretKeyRef, long + 1); } return message; }; @@ -7269,7 +7517,7 @@ function SecretKeySelector(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7344,9 +7592,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SecretKeySelector.decode = function decode(reader, length, error) { + SecretKeySelector.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.SecretKeySelector(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7362,7 +7614,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7393,9 +7645,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SecretKeySelector.verify = function verify(message) { + SecretKeySelector.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.secret != null && message.hasOwnProperty("secret")) if (!$util.isString(message.secret)) return "secret: string expected"; @@ -7413,9 +7669,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.SecretKeySelector} SecretKeySelector */ - SecretKeySelector.fromObject = function fromObject(object) { + SecretKeySelector.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.SecretKeySelector) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.SecretKeySelector(); if (object.secret != null) message.secret = String(object.secret); @@ -7498,7 +7758,7 @@ function ContainerPort(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7573,9 +7833,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ContainerPort.decode = function decode(reader, length, error) { + ContainerPort.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ContainerPort(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7591,7 +7855,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7622,9 +7886,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ContainerPort.verify = function verify(message) { + ContainerPort.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -7642,9 +7910,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ContainerPort} ContainerPort */ - ContainerPort.fromObject = function fromObject(object) { + ContainerPort.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ContainerPort) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ContainerPort(); if (object.name != null) message.name = String(object.name); @@ -7728,7 +8000,7 @@ function VolumeMount(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -7813,9 +8085,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VolumeMount.decode = function decode(reader, length, error) { + VolumeMount.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.VolumeMount(); while (reader.pos < end) { var tag = reader.uint32(); @@ -7835,7 +8111,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -7866,9 +8142,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VolumeMount.verify = function verify(message) { + VolumeMount.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -7889,9 +8169,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.VolumeMount} VolumeMount */ - VolumeMount.fromObject = function fromObject(object) { + VolumeMount.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.VolumeMount) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.VolumeMount(); if (object.name != null) message.name = String(object.name); @@ -7983,7 +8267,7 @@ function Volume(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8112,9 +8396,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Volume.decode = function decode(reader, length, error) { + Volume.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Volume(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8126,27 +8414,27 @@ break; } case 2: { - message.secret = $root.google.cloud.run.v2.SecretVolumeSource.decode(reader, reader.uint32()); + message.secret = $root.google.cloud.run.v2.SecretVolumeSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.cloudSqlInstance = $root.google.cloud.run.v2.CloudSqlInstance.decode(reader, reader.uint32()); + message.cloudSqlInstance = $root.google.cloud.run.v2.CloudSqlInstance.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.emptyDir = $root.google.cloud.run.v2.EmptyDirVolumeSource.decode(reader, reader.uint32()); + message.emptyDir = $root.google.cloud.run.v2.EmptyDirVolumeSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.nfs = $root.google.cloud.run.v2.NFSVolumeSource.decode(reader, reader.uint32()); + message.nfs = $root.google.cloud.run.v2.NFSVolumeSource.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.gcs = $root.google.cloud.run.v2.GCSVolumeSource.decode(reader, reader.uint32()); + message.gcs = $root.google.cloud.run.v2.GCSVolumeSource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8177,9 +8465,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Volume.verify = function verify(message) { + Volume.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -8187,7 +8479,7 @@ if (message.secret != null && message.hasOwnProperty("secret")) { properties.volumeType = 1; { - var error = $root.google.cloud.run.v2.SecretVolumeSource.verify(message.secret); + var error = $root.google.cloud.run.v2.SecretVolumeSource.verify(message.secret, long + 1); if (error) return "secret." + error; } @@ -8197,7 +8489,7 @@ return "volumeType: multiple values"; properties.volumeType = 1; { - var error = $root.google.cloud.run.v2.CloudSqlInstance.verify(message.cloudSqlInstance); + var error = $root.google.cloud.run.v2.CloudSqlInstance.verify(message.cloudSqlInstance, long + 1); if (error) return "cloudSqlInstance." + error; } @@ -8207,7 +8499,7 @@ return "volumeType: multiple values"; properties.volumeType = 1; { - var error = $root.google.cloud.run.v2.EmptyDirVolumeSource.verify(message.emptyDir); + var error = $root.google.cloud.run.v2.EmptyDirVolumeSource.verify(message.emptyDir, long + 1); if (error) return "emptyDir." + error; } @@ -8217,7 +8509,7 @@ return "volumeType: multiple values"; properties.volumeType = 1; { - var error = $root.google.cloud.run.v2.NFSVolumeSource.verify(message.nfs); + var error = $root.google.cloud.run.v2.NFSVolumeSource.verify(message.nfs, long + 1); if (error) return "nfs." + error; } @@ -8227,7 +8519,7 @@ return "volumeType: multiple values"; properties.volumeType = 1; { - var error = $root.google.cloud.run.v2.GCSVolumeSource.verify(message.gcs); + var error = $root.google.cloud.run.v2.GCSVolumeSource.verify(message.gcs, long + 1); if (error) return "gcs." + error; } @@ -8243,36 +8535,40 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Volume} Volume */ - Volume.fromObject = function fromObject(object) { + Volume.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Volume) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Volume(); if (object.name != null) message.name = String(object.name); if (object.secret != null) { if (typeof object.secret !== "object") throw TypeError(".google.cloud.run.v2.Volume.secret: object expected"); - message.secret = $root.google.cloud.run.v2.SecretVolumeSource.fromObject(object.secret); + message.secret = $root.google.cloud.run.v2.SecretVolumeSource.fromObject(object.secret, long + 1); } if (object.cloudSqlInstance != null) { if (typeof object.cloudSqlInstance !== "object") throw TypeError(".google.cloud.run.v2.Volume.cloudSqlInstance: object expected"); - message.cloudSqlInstance = $root.google.cloud.run.v2.CloudSqlInstance.fromObject(object.cloudSqlInstance); + message.cloudSqlInstance = $root.google.cloud.run.v2.CloudSqlInstance.fromObject(object.cloudSqlInstance, long + 1); } if (object.emptyDir != null) { if (typeof object.emptyDir !== "object") throw TypeError(".google.cloud.run.v2.Volume.emptyDir: object expected"); - message.emptyDir = $root.google.cloud.run.v2.EmptyDirVolumeSource.fromObject(object.emptyDir); + message.emptyDir = $root.google.cloud.run.v2.EmptyDirVolumeSource.fromObject(object.emptyDir, long + 1); } if (object.nfs != null) { if (typeof object.nfs !== "object") throw TypeError(".google.cloud.run.v2.Volume.nfs: object expected"); - message.nfs = $root.google.cloud.run.v2.NFSVolumeSource.fromObject(object.nfs); + message.nfs = $root.google.cloud.run.v2.NFSVolumeSource.fromObject(object.nfs, long + 1); } if (object.gcs != null) { if (typeof object.gcs !== "object") throw TypeError(".google.cloud.run.v2.Volume.gcs: object expected"); - message.gcs = $root.google.cloud.run.v2.GCSVolumeSource.fromObject(object.gcs); + message.gcs = $root.google.cloud.run.v2.GCSVolumeSource.fromObject(object.gcs, long + 1); } return message; }; @@ -8374,7 +8670,7 @@ this.items = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8460,9 +8756,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SecretVolumeSource.decode = function decode(reader, length, error) { + SecretVolumeSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.SecretVolumeSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8476,7 +8776,7 @@ case 2: { if (!(message.items && message.items.length)) message.items = []; - message.items.push($root.google.cloud.run.v2.VersionToPath.decode(reader, reader.uint32())); + message.items.push($root.google.cloud.run.v2.VersionToPath.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -8484,7 +8784,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8515,9 +8815,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SecretVolumeSource.verify = function verify(message) { + SecretVolumeSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.secret != null && message.hasOwnProperty("secret")) if (!$util.isString(message.secret)) return "secret: string expected"; @@ -8525,7 +8829,7 @@ if (!Array.isArray(message.items)) return "items: array expected"; for (var i = 0; i < message.items.length; ++i) { - var error = $root.google.cloud.run.v2.VersionToPath.verify(message.items[i]); + var error = $root.google.cloud.run.v2.VersionToPath.verify(message.items[i], long + 1); if (error) return "items." + error; } @@ -8544,9 +8848,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.SecretVolumeSource} SecretVolumeSource */ - SecretVolumeSource.fromObject = function fromObject(object) { + SecretVolumeSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.SecretVolumeSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.SecretVolumeSource(); if (object.secret != null) message.secret = String(object.secret); @@ -8557,7 +8865,7 @@ for (var i = 0; i < object.items.length; ++i) { if (typeof object.items[i] !== "object") throw TypeError(".google.cloud.run.v2.SecretVolumeSource.items: object expected"); - message.items[i] = $root.google.cloud.run.v2.VersionToPath.fromObject(object.items[i]); + message.items[i] = $root.google.cloud.run.v2.VersionToPath.fromObject(object.items[i], long + 1); } } if (object.defaultMode != null) @@ -8647,7 +8955,7 @@ function VersionToPath(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8732,9 +9040,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VersionToPath.decode = function decode(reader, length, error) { + VersionToPath.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.VersionToPath(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8754,7 +9066,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -8785,9 +9097,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VersionToPath.verify = function verify(message) { + VersionToPath.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) if (!$util.isString(message.path)) return "path: string expected"; @@ -8808,9 +9124,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.VersionToPath} VersionToPath */ - VersionToPath.fromObject = function fromObject(object) { + VersionToPath.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.VersionToPath) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.VersionToPath(); if (object.path != null) message.path = String(object.path); @@ -8898,7 +9218,7 @@ this.instances = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -8964,9 +9284,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CloudSqlInstance.decode = function decode(reader, length, error) { + CloudSqlInstance.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.CloudSqlInstance(); while (reader.pos < end) { var tag = reader.uint32(); @@ -8980,7 +9304,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9011,9 +9335,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CloudSqlInstance.verify = function verify(message) { + CloudSqlInstance.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.instances != null && message.hasOwnProperty("instances")) { if (!Array.isArray(message.instances)) return "instances: array expected"; @@ -9032,9 +9360,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.CloudSqlInstance} CloudSqlInstance */ - CloudSqlInstance.fromObject = function fromObject(object) { + CloudSqlInstance.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.CloudSqlInstance) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.CloudSqlInstance(); if (object.instances) { if (!Array.isArray(object.instances)) @@ -9119,7 +9451,7 @@ function EmptyDirVolumeSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9194,9 +9526,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EmptyDirVolumeSource.decode = function decode(reader, length, error) { + EmptyDirVolumeSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.EmptyDirVolumeSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9212,7 +9548,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9243,9 +9579,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EmptyDirVolumeSource.verify = function verify(message) { + EmptyDirVolumeSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.medium != null && message.hasOwnProperty("medium")) switch (message.medium) { default: @@ -9268,9 +9608,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.EmptyDirVolumeSource} EmptyDirVolumeSource */ - EmptyDirVolumeSource.fromObject = function fromObject(object) { + EmptyDirVolumeSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.EmptyDirVolumeSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.EmptyDirVolumeSource(); switch (object.medium) { default: @@ -9382,7 +9726,7 @@ function NFSVolumeSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9467,9 +9811,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NFSVolumeSource.decode = function decode(reader, length, error) { + NFSVolumeSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.NFSVolumeSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9489,7 +9837,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9520,9 +9868,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NFSVolumeSource.verify = function verify(message) { + NFSVolumeSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.server != null && message.hasOwnProperty("server")) if (!$util.isString(message.server)) return "server: string expected"; @@ -9543,9 +9895,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.NFSVolumeSource} NFSVolumeSource */ - NFSVolumeSource.fromObject = function fromObject(object) { + NFSVolumeSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.NFSVolumeSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.NFSVolumeSource(); if (object.server != null) message.server = String(object.server); @@ -9635,7 +9991,7 @@ this.mountOptions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -9721,9 +10077,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GCSVolumeSource.decode = function decode(reader, length, error) { + GCSVolumeSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GCSVolumeSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -9745,7 +10105,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -9776,9 +10136,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GCSVolumeSource.verify = function verify(message) { + GCSVolumeSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.bucket != null && message.hasOwnProperty("bucket")) if (!$util.isString(message.bucket)) return "bucket: string expected"; @@ -9803,9 +10167,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GCSVolumeSource} GCSVolumeSource */ - GCSVolumeSource.fromObject = function fromObject(object) { + GCSVolumeSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GCSVolumeSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GCSVolumeSource(); if (object.bucket != null) message.bucket = String(object.bucket); @@ -9907,7 +10275,7 @@ function Probe(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10046,9 +10414,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Probe.decode = function decode(reader, length, error) { + Probe.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Probe(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10072,19 +10444,19 @@ break; } case 5: { - message.httpGet = $root.google.cloud.run.v2.HTTPGetAction.decode(reader, reader.uint32()); + message.httpGet = $root.google.cloud.run.v2.HTTPGetAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.tcpSocket = $root.google.cloud.run.v2.TCPSocketAction.decode(reader, reader.uint32()); + message.tcpSocket = $root.google.cloud.run.v2.TCPSocketAction.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.grpc = $root.google.cloud.run.v2.GRPCAction.decode(reader, reader.uint32()); + message.grpc = $root.google.cloud.run.v2.GRPCAction.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10115,9 +10487,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Probe.verify = function verify(message) { + Probe.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.initialDelaySeconds != null && message.hasOwnProperty("initialDelaySeconds")) if (!$util.isInteger(message.initialDelaySeconds)) @@ -10134,7 +10510,7 @@ if (message.httpGet != null && message.hasOwnProperty("httpGet")) { properties.probeType = 1; { - var error = $root.google.cloud.run.v2.HTTPGetAction.verify(message.httpGet); + var error = $root.google.cloud.run.v2.HTTPGetAction.verify(message.httpGet, long + 1); if (error) return "httpGet." + error; } @@ -10144,7 +10520,7 @@ return "probeType: multiple values"; properties.probeType = 1; { - var error = $root.google.cloud.run.v2.TCPSocketAction.verify(message.tcpSocket); + var error = $root.google.cloud.run.v2.TCPSocketAction.verify(message.tcpSocket, long + 1); if (error) return "tcpSocket." + error; } @@ -10154,7 +10530,7 @@ return "probeType: multiple values"; properties.probeType = 1; { - var error = $root.google.cloud.run.v2.GRPCAction.verify(message.grpc); + var error = $root.google.cloud.run.v2.GRPCAction.verify(message.grpc, long + 1); if (error) return "grpc." + error; } @@ -10170,9 +10546,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Probe} Probe */ - Probe.fromObject = function fromObject(object) { + Probe.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Probe) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Probe(); if (object.initialDelaySeconds != null) message.initialDelaySeconds = object.initialDelaySeconds | 0; @@ -10185,17 +10565,17 @@ if (object.httpGet != null) { if (typeof object.httpGet !== "object") throw TypeError(".google.cloud.run.v2.Probe.httpGet: object expected"); - message.httpGet = $root.google.cloud.run.v2.HTTPGetAction.fromObject(object.httpGet); + message.httpGet = $root.google.cloud.run.v2.HTTPGetAction.fromObject(object.httpGet, long + 1); } if (object.tcpSocket != null) { if (typeof object.tcpSocket !== "object") throw TypeError(".google.cloud.run.v2.Probe.tcpSocket: object expected"); - message.tcpSocket = $root.google.cloud.run.v2.TCPSocketAction.fromObject(object.tcpSocket); + message.tcpSocket = $root.google.cloud.run.v2.TCPSocketAction.fromObject(object.tcpSocket, long + 1); } if (object.grpc != null) { if (typeof object.grpc !== "object") throw TypeError(".google.cloud.run.v2.Probe.grpc: object expected"); - message.grpc = $root.google.cloud.run.v2.GRPCAction.fromObject(object.grpc); + message.grpc = $root.google.cloud.run.v2.GRPCAction.fromObject(object.grpc, long + 1); } return message; }; @@ -10297,7 +10677,7 @@ this.httpHeaders = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10383,9 +10763,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HTTPGetAction.decode = function decode(reader, length, error) { + HTTPGetAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.HTTPGetAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10399,7 +10783,7 @@ case 4: { if (!(message.httpHeaders && message.httpHeaders.length)) message.httpHeaders = []; - message.httpHeaders.push($root.google.cloud.run.v2.HTTPHeader.decode(reader, reader.uint32())); + message.httpHeaders.push($root.google.cloud.run.v2.HTTPHeader.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -10407,7 +10791,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10438,9 +10822,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HTTPGetAction.verify = function verify(message) { + HTTPGetAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) if (!$util.isString(message.path)) return "path: string expected"; @@ -10448,7 +10836,7 @@ if (!Array.isArray(message.httpHeaders)) return "httpHeaders: array expected"; for (var i = 0; i < message.httpHeaders.length; ++i) { - var error = $root.google.cloud.run.v2.HTTPHeader.verify(message.httpHeaders[i]); + var error = $root.google.cloud.run.v2.HTTPHeader.verify(message.httpHeaders[i], long + 1); if (error) return "httpHeaders." + error; } @@ -10467,9 +10855,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.HTTPGetAction} HTTPGetAction */ - HTTPGetAction.fromObject = function fromObject(object) { + HTTPGetAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.HTTPGetAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.HTTPGetAction(); if (object.path != null) message.path = String(object.path); @@ -10480,7 +10872,7 @@ for (var i = 0; i < object.httpHeaders.length; ++i) { if (typeof object.httpHeaders[i] !== "object") throw TypeError(".google.cloud.run.v2.HTTPGetAction.httpHeaders: object expected"); - message.httpHeaders[i] = $root.google.cloud.run.v2.HTTPHeader.fromObject(object.httpHeaders[i]); + message.httpHeaders[i] = $root.google.cloud.run.v2.HTTPHeader.fromObject(object.httpHeaders[i], long + 1); } } if (object.port != null) @@ -10569,7 +10961,7 @@ function HTTPHeader(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10644,9 +11036,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HTTPHeader.decode = function decode(reader, length, error) { + HTTPHeader.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.HTTPHeader(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10662,7 +11058,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10693,9 +11089,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HTTPHeader.verify = function verify(message) { + HTTPHeader.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -10713,9 +11113,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.HTTPHeader} HTTPHeader */ - HTTPHeader.fromObject = function fromObject(object) { + HTTPHeader.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.HTTPHeader) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.HTTPHeader(); if (object.name != null) message.name = String(object.name); @@ -10797,7 +11201,7 @@ function TCPSocketAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -10862,9 +11266,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TCPSocketAction.decode = function decode(reader, length, error) { + TCPSocketAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.TCPSocketAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -10876,7 +11284,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -10907,9 +11315,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TCPSocketAction.verify = function verify(message) { + TCPSocketAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.port != null && message.hasOwnProperty("port")) if (!$util.isInteger(message.port)) return "port: integer expected"; @@ -10924,9 +11336,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.TCPSocketAction} TCPSocketAction */ - TCPSocketAction.fromObject = function fromObject(object) { + TCPSocketAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.TCPSocketAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.TCPSocketAction(); if (object.port != null) message.port = object.port | 0; @@ -11003,7 +11419,7 @@ function GRPCAction(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11078,9 +11494,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GRPCAction.decode = function decode(reader, length, error) { + GRPCAction.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GRPCAction(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11096,7 +11516,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11127,9 +11547,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GRPCAction.verify = function verify(message) { + GRPCAction.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.port != null && message.hasOwnProperty("port")) if (!$util.isInteger(message.port)) return "port: integer expected"; @@ -11147,9 +11571,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GRPCAction} GRPCAction */ - GRPCAction.fromObject = function fromObject(object) { + GRPCAction.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GRPCAction) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GRPCAction(); if (object.port != null) message.port = object.port | 0; @@ -11232,7 +11660,7 @@ function BuildInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11307,9 +11735,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuildInfo.decode = function decode(reader, length, error) { + BuildInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.BuildInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11325,7 +11757,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11356,9 +11788,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuildInfo.verify = function verify(message) { + BuildInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.functionTarget != null && message.hasOwnProperty("functionTarget")) if (!$util.isString(message.functionTarget)) return "functionTarget: string expected"; @@ -11376,9 +11812,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.BuildInfo} BuildInfo */ - BuildInfo.fromObject = function fromObject(object) { + BuildInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.BuildInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.BuildInfo(); if (object.functionTarget != null) message.functionTarget = String(object.functionTarget); @@ -11460,7 +11900,7 @@ function SourceCode(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11539,9 +11979,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCode.decode = function decode(reader, length, error) { + SourceCode.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.SourceCode(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11549,11 +11993,11 @@ break; switch (tag >>> 3) { case 1: { - message.cloudStorageSource = $root.google.cloud.run.v2.SourceCode.CloudStorageSource.decode(reader, reader.uint32()); + message.cloudStorageSource = $root.google.cloud.run.v2.SourceCode.CloudStorageSource.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11584,14 +12028,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCode.verify = function verify(message) { + SourceCode.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.cloudStorageSource != null && message.hasOwnProperty("cloudStorageSource")) { properties.sourceType = 1; { - var error = $root.google.cloud.run.v2.SourceCode.CloudStorageSource.verify(message.cloudStorageSource); + var error = $root.google.cloud.run.v2.SourceCode.CloudStorageSource.verify(message.cloudStorageSource, long + 1); if (error) return "cloudStorageSource." + error; } @@ -11607,14 +12055,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.SourceCode} SourceCode */ - SourceCode.fromObject = function fromObject(object) { + SourceCode.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.SourceCode) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.SourceCode(); if (object.cloudStorageSource != null) { if (typeof object.cloudStorageSource !== "object") throw TypeError(".google.cloud.run.v2.SourceCode.cloudStorageSource: object expected"); - message.cloudStorageSource = $root.google.cloud.run.v2.SourceCode.CloudStorageSource.fromObject(object.cloudStorageSource); + message.cloudStorageSource = $root.google.cloud.run.v2.SourceCode.CloudStorageSource.fromObject(object.cloudStorageSource, long + 1); } return message; }; @@ -11688,7 +12140,7 @@ function CloudStorageSource(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -11773,9 +12225,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CloudStorageSource.decode = function decode(reader, length, error) { + CloudStorageSource.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.SourceCode.CloudStorageSource(); while (reader.pos < end) { var tag = reader.uint32(); @@ -11795,7 +12251,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -11826,9 +12282,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CloudStorageSource.verify = function verify(message) { + CloudStorageSource.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.bucket != null && message.hasOwnProperty("bucket")) if (!$util.isString(message.bucket)) return "bucket: string expected"; @@ -11849,9 +12309,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.SourceCode.CloudStorageSource} CloudStorageSource */ - CloudStorageSource.fromObject = function fromObject(object) { + CloudStorageSource.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.SourceCode.CloudStorageSource) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.SourceCode.CloudStorageSource(); if (object.bucket != null) message.bucket = String(object.bucket); @@ -11958,7 +12422,7 @@ this.networkInterfaces = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12044,9 +12508,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VpcAccess.decode = function decode(reader, length, error) { + VpcAccess.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.VpcAccess(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12064,11 +12532,11 @@ case 3: { if (!(message.networkInterfaces && message.networkInterfaces.length)) message.networkInterfaces = []; - message.networkInterfaces.push($root.google.cloud.run.v2.VpcAccess.NetworkInterface.decode(reader, reader.uint32())); + message.networkInterfaces.push($root.google.cloud.run.v2.VpcAccess.NetworkInterface.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12099,9 +12567,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VpcAccess.verify = function verify(message) { + VpcAccess.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.connector != null && message.hasOwnProperty("connector")) if (!$util.isString(message.connector)) return "connector: string expected"; @@ -12118,7 +12590,7 @@ if (!Array.isArray(message.networkInterfaces)) return "networkInterfaces: array expected"; for (var i = 0; i < message.networkInterfaces.length; ++i) { - var error = $root.google.cloud.run.v2.VpcAccess.NetworkInterface.verify(message.networkInterfaces[i]); + var error = $root.google.cloud.run.v2.VpcAccess.NetworkInterface.verify(message.networkInterfaces[i], long + 1); if (error) return "networkInterfaces." + error; } @@ -12134,9 +12606,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.VpcAccess} VpcAccess */ - VpcAccess.fromObject = function fromObject(object) { + VpcAccess.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.VpcAccess) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.VpcAccess(); if (object.connector != null) message.connector = String(object.connector); @@ -12167,7 +12643,7 @@ for (var i = 0; i < object.networkInterfaces.length; ++i) { if (typeof object.networkInterfaces[i] !== "object") throw TypeError(".google.cloud.run.v2.VpcAccess.networkInterfaces: object expected"); - message.networkInterfaces[i] = $root.google.cloud.run.v2.VpcAccess.NetworkInterface.fromObject(object.networkInterfaces[i]); + message.networkInterfaces[i] = $root.google.cloud.run.v2.VpcAccess.NetworkInterface.fromObject(object.networkInterfaces[i], long + 1); } } return message; @@ -12269,7 +12745,7 @@ this.tags = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12355,9 +12831,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NetworkInterface.decode = function decode(reader, length, error) { + NetworkInterface.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.VpcAccess.NetworkInterface(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12379,7 +12859,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12410,9 +12890,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NetworkInterface.verify = function verify(message) { + NetworkInterface.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.network != null && message.hasOwnProperty("network")) if (!$util.isString(message.network)) return "network: string expected"; @@ -12437,9 +12921,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.VpcAccess.NetworkInterface} NetworkInterface */ - NetworkInterface.fromObject = function fromObject(object) { + NetworkInterface.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.VpcAccess.NetworkInterface) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.VpcAccess.NetworkInterface(); if (object.network != null) message.network = String(object.network); @@ -12540,7 +13028,7 @@ function BinaryAuthorization(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12639,9 +13127,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BinaryAuthorization.decode = function decode(reader, length, error) { + BinaryAuthorization.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.BinaryAuthorization(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12661,7 +13153,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12692,9 +13184,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BinaryAuthorization.verify = function verify(message) { + BinaryAuthorization.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.useDefault != null && message.hasOwnProperty("useDefault")) { properties.binauthzMethod = 1; @@ -12722,9 +13218,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.BinaryAuthorization} BinaryAuthorization */ - BinaryAuthorization.fromObject = function fromObject(object) { + BinaryAuthorization.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.BinaryAuthorization) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.BinaryAuthorization(); if (object.useDefault != null) message.useDefault = Boolean(object.useDefault); @@ -12815,7 +13315,7 @@ function RevisionScaling(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -12890,9 +13390,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RevisionScaling.decode = function decode(reader, length, error) { + RevisionScaling.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.RevisionScaling(); while (reader.pos < end) { var tag = reader.uint32(); @@ -12908,7 +13412,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -12939,9 +13443,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RevisionScaling.verify = function verify(message) { + RevisionScaling.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.minInstanceCount != null && message.hasOwnProperty("minInstanceCount")) if (!$util.isInteger(message.minInstanceCount)) return "minInstanceCount: integer expected"; @@ -12959,9 +13467,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.RevisionScaling} RevisionScaling */ - RevisionScaling.fromObject = function fromObject(object) { + RevisionScaling.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.RevisionScaling) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.RevisionScaling(); if (object.minInstanceCount != null) message.minInstanceCount = object.minInstanceCount | 0; @@ -13043,7 +13555,7 @@ function ServiceMesh(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13108,9 +13620,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceMesh.decode = function decode(reader, length, error) { + ServiceMesh.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ServiceMesh(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13122,7 +13638,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13153,9 +13669,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceMesh.verify = function verify(message) { + ServiceMesh.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.mesh != null && message.hasOwnProperty("mesh")) if (!$util.isString(message.mesh)) return "mesh: string expected"; @@ -13170,9 +13690,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ServiceMesh} ServiceMesh */ - ServiceMesh.fromObject = function fromObject(object) { + ServiceMesh.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ServiceMesh) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ServiceMesh(); if (object.mesh != null) message.mesh = String(object.mesh); @@ -13251,7 +13775,7 @@ function ServiceScaling(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13355,9 +13879,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceScaling.decode = function decode(reader, length, error) { + ServiceScaling.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ServiceScaling(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13381,7 +13909,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13412,9 +13940,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceScaling.verify = function verify(message) { + ServiceScaling.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.minInstanceCount != null && message.hasOwnProperty("minInstanceCount")) if (!$util.isInteger(message.minInstanceCount)) @@ -13447,9 +13979,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ServiceScaling} ServiceScaling */ - ServiceScaling.fromObject = function fromObject(object) { + ServiceScaling.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ServiceScaling) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ServiceScaling(); if (object.minInstanceCount != null) message.minInstanceCount = object.minInstanceCount | 0; @@ -13577,7 +14113,7 @@ function WorkerPoolScaling(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13651,9 +14187,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WorkerPoolScaling.decode = function decode(reader, length, error) { + WorkerPoolScaling.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.WorkerPoolScaling(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13665,7 +14205,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13696,9 +14236,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WorkerPoolScaling.verify = function verify(message) { + WorkerPoolScaling.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.manualInstanceCount != null && message.hasOwnProperty("manualInstanceCount")) { properties._manualInstanceCount = 1; @@ -13716,9 +14260,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.WorkerPoolScaling} WorkerPoolScaling */ - WorkerPoolScaling.fromObject = function fromObject(object) { + WorkerPoolScaling.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.WorkerPoolScaling) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.WorkerPoolScaling(); if (object.manualInstanceCount != null) message.manualInstanceCount = object.manualInstanceCount | 0; @@ -13795,7 +14343,7 @@ function NodeSelector(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -13860,9 +14408,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeSelector.decode = function decode(reader, length, error) { + NodeSelector.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.NodeSelector(); while (reader.pos < end) { var tag = reader.uint32(); @@ -13874,7 +14426,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -13905,9 +14457,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeSelector.verify = function verify(message) { + NodeSelector.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.accelerator != null && message.hasOwnProperty("accelerator")) if (!$util.isString(message.accelerator)) return "accelerator: string expected"; @@ -13922,9 +14478,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.NodeSelector} NodeSelector */ - NodeSelector.fromObject = function fromObject(object) { + NodeSelector.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.NodeSelector) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.NodeSelector(); if (object.accelerator != null) message.accelerator = String(object.accelerator); @@ -14009,7 +14569,7 @@ this.environmentVariables = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14155,9 +14715,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BuildConfig.decode = function decode(reader, length, error) { + BuildConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.BuildConfig(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -14208,10 +14772,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.environmentVariables, key); message.environmentVariables[key] = value; break; } @@ -14220,7 +14786,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14251,9 +14817,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BuildConfig.verify = function verify(message) { + BuildConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -14297,9 +14867,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.BuildConfig} BuildConfig */ - BuildConfig.fromObject = function fromObject(object) { + BuildConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.BuildConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.BuildConfig(); if (object.name != null) message.name = String(object.name); @@ -14319,8 +14893,11 @@ if (typeof object.environmentVariables !== "object") throw TypeError(".google.cloud.run.v2.BuildConfig.environmentVariables: object expected"); message.environmentVariables = {}; - for (var keys = Object.keys(object.environmentVariables), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.environmentVariables), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.environmentVariables, keys[i]); message.environmentVariables[keys[i]] = String(object.environmentVariables[keys[i]]); + } } if (object.serviceAccount != null) message.serviceAccount = String(object.serviceAccount); @@ -14369,8 +14946,11 @@ var keys2; if (message.environmentVariables && (keys2 = Object.keys(message.environmentVariables)).length) { object.environmentVariables = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.environmentVariables, keys2[j]); object.environmentVariables[keys2[j]] = message.environmentVariables[keys2[j]]; + } } if (message.serviceAccount != null && message.hasOwnProperty("serviceAccount")) object.serviceAccount = message.serviceAccount; @@ -14484,7 +15064,7 @@ this.annotations = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -14591,9 +15171,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExecutionTemplate.decode = function decode(reader, length, error) { + ExecutionTemplate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ExecutionTemplate(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -14616,10 +15200,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -14639,10 +15225,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } @@ -14655,11 +15243,11 @@ break; } case 5: { - message.template = $root.google.cloud.run.v2.TaskTemplate.decode(reader, reader.uint32()); + message.template = $root.google.cloud.run.v2.TaskTemplate.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -14690,9 +15278,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExecutionTemplate.verify = function verify(message) { + ExecutionTemplate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.labels != null && message.hasOwnProperty("labels")) { if (!$util.isObject(message.labels)) return "labels: object expected"; @@ -14716,7 +15308,7 @@ if (!$util.isInteger(message.taskCount)) return "taskCount: integer expected"; if (message.template != null && message.hasOwnProperty("template")) { - var error = $root.google.cloud.run.v2.TaskTemplate.verify(message.template); + var error = $root.google.cloud.run.v2.TaskTemplate.verify(message.template, long + 1); if (error) return "template." + error; } @@ -14731,23 +15323,33 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ExecutionTemplate} ExecutionTemplate */ - ExecutionTemplate.fromObject = function fromObject(object) { + ExecutionTemplate.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ExecutionTemplate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ExecutionTemplate(); if (object.labels) { if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.ExecutionTemplate.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.ExecutionTemplate.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.parallelism != null) message.parallelism = object.parallelism | 0; @@ -14756,7 +15358,7 @@ if (object.template != null) { if (typeof object.template !== "object") throw TypeError(".google.cloud.run.v2.ExecutionTemplate.template: object expected"); - message.template = $root.google.cloud.run.v2.TaskTemplate.fromObject(object.template); + message.template = $root.google.cloud.run.v2.TaskTemplate.fromObject(object.template, long + 1); } return message; }; @@ -14786,13 +15388,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.parallelism != null && message.hasOwnProperty("parallelism")) object.parallelism = message.parallelism; @@ -15088,7 +15696,7 @@ function CreateInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15183,9 +15791,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateInstanceRequest.decode = function decode(reader, length, error) { + CreateInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.CreateInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15197,7 +15809,7 @@ break; } case 2: { - message.instance = $root.google.cloud.run.v2.Instance.decode(reader, reader.uint32()); + message.instance = $root.google.cloud.run.v2.Instance.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -15209,7 +15821,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15240,14 +15852,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateInstanceRequest.verify = function verify(message) { + CreateInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.instance != null && message.hasOwnProperty("instance")) { - var error = $root.google.cloud.run.v2.Instance.verify(message.instance); + var error = $root.google.cloud.run.v2.Instance.verify(message.instance, long + 1); if (error) return "instance." + error; } @@ -15268,16 +15884,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.CreateInstanceRequest} CreateInstanceRequest */ - CreateInstanceRequest.fromObject = function fromObject(object) { + CreateInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.CreateInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.CreateInstanceRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.instance != null) { if (typeof object.instance !== "object") throw TypeError(".google.cloud.run.v2.CreateInstanceRequest.instance: object expected"); - message.instance = $root.google.cloud.run.v2.Instance.fromObject(object.instance); + message.instance = $root.google.cloud.run.v2.Instance.fromObject(object.instance, long + 1); } if (object.instanceId != null) message.instanceId = String(object.instanceId); @@ -15365,7 +15985,7 @@ function GetInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15430,9 +16050,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetInstanceRequest.decode = function decode(reader, length, error) { + GetInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GetInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15444,7 +16068,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15475,9 +16099,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetInstanceRequest.verify = function verify(message) { + GetInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -15492,9 +16120,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GetInstanceRequest} GetInstanceRequest */ - GetInstanceRequest.fromObject = function fromObject(object) { + GetInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GetInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GetInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -15572,7 +16204,7 @@ function DeleteInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15657,9 +16289,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteInstanceRequest.decode = function decode(reader, length, error) { + DeleteInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.DeleteInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15679,7 +16315,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15710,9 +16346,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteInstanceRequest.verify = function verify(message) { + DeleteInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -15733,9 +16373,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.DeleteInstanceRequest} DeleteInstanceRequest */ - DeleteInstanceRequest.fromObject = function fromObject(object) { + DeleteInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.DeleteInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.DeleteInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -15825,7 +16469,7 @@ function ListInstancesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -15920,9 +16564,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListInstancesRequest.decode = function decode(reader, length, error) { + ListInstancesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListInstancesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -15946,7 +16594,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -15977,9 +16625,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListInstancesRequest.verify = function verify(message) { + ListInstancesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -16003,9 +16655,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListInstancesRequest} ListInstancesRequest */ - ListInstancesRequest.fromObject = function fromObject(object) { + ListInstancesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListInstancesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListInstancesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -16099,7 +16755,7 @@ this.instances = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16175,9 +16831,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListInstancesResponse.decode = function decode(reader, length, error) { + ListInstancesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListInstancesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16187,7 +16847,7 @@ case 1: { if (!(message.instances && message.instances.length)) message.instances = []; - message.instances.push($root.google.cloud.run.v2.Instance.decode(reader, reader.uint32())); + message.instances.push($root.google.cloud.run.v2.Instance.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -16195,7 +16855,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16226,14 +16886,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListInstancesResponse.verify = function verify(message) { + ListInstancesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.instances != null && message.hasOwnProperty("instances")) { if (!Array.isArray(message.instances)) return "instances: array expected"; for (var i = 0; i < message.instances.length; ++i) { - var error = $root.google.cloud.run.v2.Instance.verify(message.instances[i]); + var error = $root.google.cloud.run.v2.Instance.verify(message.instances[i], long + 1); if (error) return "instances." + error; } @@ -16252,9 +16916,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListInstancesResponse} ListInstancesResponse */ - ListInstancesResponse.fromObject = function fromObject(object) { + ListInstancesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListInstancesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListInstancesResponse(); if (object.instances) { if (!Array.isArray(object.instances)) @@ -16263,7 +16931,7 @@ for (var i = 0; i < object.instances.length; ++i) { if (typeof object.instances[i] !== "object") throw TypeError(".google.cloud.run.v2.ListInstancesResponse.instances: object expected"); - message.instances[i] = $root.google.cloud.run.v2.Instance.fromObject(object.instances[i]); + message.instances[i] = $root.google.cloud.run.v2.Instance.fromObject(object.instances[i], long + 1); } } if (object.nextPageToken != null) @@ -16349,7 +17017,7 @@ function StopInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16434,9 +17102,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StopInstanceRequest.decode = function decode(reader, length, error) { + StopInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.StopInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16456,7 +17128,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16487,9 +17159,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StopInstanceRequest.verify = function verify(message) { + StopInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -16510,9 +17186,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.StopInstanceRequest} StopInstanceRequest */ - StopInstanceRequest.fromObject = function fromObject(object) { + StopInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.StopInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.StopInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -16601,7 +17281,7 @@ function StartInstanceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -16686,9 +17366,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - StartInstanceRequest.decode = function decode(reader, length, error) { + StartInstanceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.StartInstanceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -16708,7 +17392,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -16739,9 +17423,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - StartInstanceRequest.verify = function verify(message) { + StartInstanceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -16762,9 +17450,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.StartInstanceRequest} StartInstanceRequest */ - StartInstanceRequest.fromObject = function fromObject(object) { + StartInstanceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.StartInstanceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.StartInstanceRequest(); if (object.name != null) message.name = String(object.name); @@ -16894,7 +17586,7 @@ this.urls = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -17335,9 +18027,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Instance.decode = function decode(reader, length, error) { + Instance.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Instance(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -17376,10 +18072,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -17399,27 +18097,29 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 8: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -17443,11 +18143,11 @@ break; } case 17: { - message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.decode(reader, reader.uint32()); + message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32()); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -17457,13 +18157,13 @@ case 20: { if (!(message.containers && message.containers.length)) message.containers = []; - message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32())); + message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { if (!(message.volumes && message.volumes.length)) message.volumes = []; - message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32())); + message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 22: { @@ -17475,11 +18175,11 @@ break; } case 25: { - message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32()); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { @@ -17507,19 +18207,19 @@ break; } case 42: { - message.terminalCondition = $root.google.cloud.run.v2.Condition.decode(reader, reader.uint32()); + message.terminalCondition = $root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1); break; } case 43: { if (!(message.conditions && message.conditions.length)) message.conditions = []; - message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32())); + message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 44: { if (!(message.containerStatuses && message.containerStatuses.length)) message.containerStatuses = []; - message.containerStatuses.push($root.google.cloud.run.v2.ContainerStatus.decode(reader, reader.uint32())); + message.containerStatuses.push($root.google.cloud.run.v2.ContainerStatus.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 46: { @@ -17541,7 +18241,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -17572,9 +18272,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Instance.verify = function verify(message) { + Instance.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -17605,22 +18309,22 @@ return "annotations: string{k:string} expected"; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -17651,12 +18355,12 @@ break; } if (message.binaryAuthorization != null && message.hasOwnProperty("binaryAuthorization")) { - var error = $root.google.cloud.run.v2.BinaryAuthorization.verify(message.binaryAuthorization); + var error = $root.google.cloud.run.v2.BinaryAuthorization.verify(message.binaryAuthorization, long + 1); if (error) return "binaryAuthorization." + error; } if (message.vpcAccess != null && message.hasOwnProperty("vpcAccess")) { - var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess); + var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess, long + 1); if (error) return "vpcAccess." + error; } @@ -17667,7 +18371,7 @@ if (!Array.isArray(message.containers)) return "containers: array expected"; for (var i = 0; i < message.containers.length; ++i) { - var error = $root.google.cloud.run.v2.Container.verify(message.containers[i]); + var error = $root.google.cloud.run.v2.Container.verify(message.containers[i], long + 1); if (error) return "containers." + error; } @@ -17676,7 +18380,7 @@ if (!Array.isArray(message.volumes)) return "volumes: array expected"; for (var i = 0; i < message.volumes.length; ++i) { - var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i]); + var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i], long + 1); if (error) return "volumes." + error; } @@ -17694,12 +18398,12 @@ break; } if (message.encryptionKeyShutdownDuration != null && message.hasOwnProperty("encryptionKeyShutdownDuration")) { - var error = $root.google.protobuf.Duration.verify(message.encryptionKeyShutdownDuration); + var error = $root.google.protobuf.Duration.verify(message.encryptionKeyShutdownDuration, long + 1); if (error) return "encryptionKeyShutdownDuration." + error; } if (message.nodeSelector != null && message.hasOwnProperty("nodeSelector")) { - var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector); + var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector, long + 1); if (error) return "nodeSelector." + error; } @@ -17732,7 +18436,7 @@ if (!$util.isString(message.logUri)) return "logUri: string expected"; if (message.terminalCondition != null && message.hasOwnProperty("terminalCondition")) { - var error = $root.google.cloud.run.v2.Condition.verify(message.terminalCondition); + var error = $root.google.cloud.run.v2.Condition.verify(message.terminalCondition, long + 1); if (error) return "terminalCondition." + error; } @@ -17740,7 +18444,7 @@ if (!Array.isArray(message.conditions)) return "conditions: array expected"; for (var i = 0; i < message.conditions.length; ++i) { - var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i]); + var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i], long + 1); if (error) return "conditions." + error; } @@ -17749,7 +18453,7 @@ if (!Array.isArray(message.containerStatuses)) return "containerStatuses: array expected"; for (var i = 0; i < message.containerStatuses.length; ++i) { - var error = $root.google.cloud.run.v2.ContainerStatus.verify(message.containerStatuses[i]); + var error = $root.google.cloud.run.v2.ContainerStatus.verify(message.containerStatuses[i], long + 1); if (error) return "containerStatuses." + error; } @@ -17781,9 +18485,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Instance} Instance */ - Instance.fromObject = function fromObject(object) { + Instance.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Instance) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Instance(); if (object.name != null) message.name = String(object.name); @@ -17804,35 +18512,41 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.Instance.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.Instance.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.run.v2.Instance.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.run.v2.Instance.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.run.v2.Instance.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.run.v2.Instance.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.creator != null) message.creator = String(object.creator); @@ -17885,12 +18599,12 @@ if (object.binaryAuthorization != null) { if (typeof object.binaryAuthorization !== "object") throw TypeError(".google.cloud.run.v2.Instance.binaryAuthorization: object expected"); - message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.fromObject(object.binaryAuthorization); + message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.fromObject(object.binaryAuthorization, long + 1); } if (object.vpcAccess != null) { if (typeof object.vpcAccess !== "object") throw TypeError(".google.cloud.run.v2.Instance.vpcAccess: object expected"); - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess, long + 1); } if (object.serviceAccount != null) message.serviceAccount = String(object.serviceAccount); @@ -17901,7 +18615,7 @@ for (var i = 0; i < object.containers.length; ++i) { if (typeof object.containers[i] !== "object") throw TypeError(".google.cloud.run.v2.Instance.containers: object expected"); - message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i]); + message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i], long + 1); } } if (object.volumes) { @@ -17911,7 +18625,7 @@ for (var i = 0; i < object.volumes.length; ++i) { if (typeof object.volumes[i] !== "object") throw TypeError(".google.cloud.run.v2.Instance.volumes: object expected"); - message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i]); + message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i], long + 1); } } if (object.encryptionKey != null) @@ -17939,12 +18653,12 @@ if (object.encryptionKeyShutdownDuration != null) { if (typeof object.encryptionKeyShutdownDuration !== "object") throw TypeError(".google.cloud.run.v2.Instance.encryptionKeyShutdownDuration: object expected"); - message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.fromObject(object.encryptionKeyShutdownDuration); + message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.fromObject(object.encryptionKeyShutdownDuration, long + 1); } if (object.nodeSelector != null) { if (typeof object.nodeSelector !== "object") throw TypeError(".google.cloud.run.v2.Instance.nodeSelector: object expected"); - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector, long + 1); } if (object.gpuZonalRedundancyDisabled != null) message.gpuZonalRedundancyDisabled = Boolean(object.gpuZonalRedundancyDisabled); @@ -17994,7 +18708,7 @@ if (object.terminalCondition != null) { if (typeof object.terminalCondition !== "object") throw TypeError(".google.cloud.run.v2.Instance.terminalCondition: object expected"); - message.terminalCondition = $root.google.cloud.run.v2.Condition.fromObject(object.terminalCondition); + message.terminalCondition = $root.google.cloud.run.v2.Condition.fromObject(object.terminalCondition, long + 1); } if (object.conditions) { if (!Array.isArray(object.conditions)) @@ -18003,7 +18717,7 @@ for (var i = 0; i < object.conditions.length; ++i) { if (typeof object.conditions[i] !== "object") throw TypeError(".google.cloud.run.v2.Instance.conditions: object expected"); - message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i]); + message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i], long + 1); } } if (object.containerStatuses) { @@ -18013,7 +18727,7 @@ for (var i = 0; i < object.containerStatuses.length; ++i) { if (typeof object.containerStatuses[i] !== "object") throw TypeError(".google.cloud.run.v2.Instance.containerStatuses: object expected"); - message.containerStatuses[i] = $root.google.cloud.run.v2.ContainerStatus.fromObject(object.containerStatuses[i]); + message.containerStatuses[i] = $root.google.cloud.run.v2.ContainerStatus.fromObject(object.containerStatuses[i], long + 1); } } if (object.satisfiesPzs != null) @@ -18109,13 +18823,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.createTime != null && message.hasOwnProperty("createTime")) object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); @@ -18254,7 +18974,7 @@ function InstanceSplit(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18339,9 +19059,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InstanceSplit.decode = function decode(reader, length, error) { + InstanceSplit.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.InstanceSplit(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18361,7 +19085,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18392,9 +19116,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InstanceSplit.verify = function verify(message) { + InstanceSplit.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) switch (message.type) { default: @@ -18421,9 +19149,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.InstanceSplit} InstanceSplit */ - InstanceSplit.fromObject = function fromObject(object) { + InstanceSplit.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.InstanceSplit) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.InstanceSplit(); switch (object.type) { default: @@ -18530,7 +19262,7 @@ function InstanceSplitStatus(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -18615,9 +19347,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - InstanceSplitStatus.decode = function decode(reader, length, error) { + InstanceSplitStatus.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.InstanceSplitStatus(); while (reader.pos < end) { var tag = reader.uint32(); @@ -18637,7 +19373,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -18668,9 +19404,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - InstanceSplitStatus.verify = function verify(message) { + InstanceSplitStatus.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) switch (message.type) { default: @@ -18697,9 +19437,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.InstanceSplitStatus} InstanceSplitStatus */ - InstanceSplitStatus.fromObject = function fromObject(object) { + InstanceSplitStatus.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.InstanceSplitStatus) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.InstanceSplitStatus(); switch (object.type) { default: @@ -19155,7 +19899,7 @@ function CreateJobRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19250,9 +19994,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateJobRequest.decode = function decode(reader, length, error) { + CreateJobRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.CreateJobRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19264,7 +20012,7 @@ break; } case 2: { - message.job = $root.google.cloud.run.v2.Job.decode(reader, reader.uint32()); + message.job = $root.google.cloud.run.v2.Job.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -19276,7 +20024,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19307,14 +20055,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateJobRequest.verify = function verify(message) { + CreateJobRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.job != null && message.hasOwnProperty("job")) { - var error = $root.google.cloud.run.v2.Job.verify(message.job); + var error = $root.google.cloud.run.v2.Job.verify(message.job, long + 1); if (error) return "job." + error; } @@ -19335,16 +20087,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.CreateJobRequest} CreateJobRequest */ - CreateJobRequest.fromObject = function fromObject(object) { + CreateJobRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.CreateJobRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.CreateJobRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.job != null) { if (typeof object.job !== "object") throw TypeError(".google.cloud.run.v2.CreateJobRequest.job: object expected"); - message.job = $root.google.cloud.run.v2.Job.fromObject(object.job); + message.job = $root.google.cloud.run.v2.Job.fromObject(object.job, long + 1); } if (object.jobId != null) message.jobId = String(object.jobId); @@ -19432,7 +20188,7 @@ function GetJobRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19497,9 +20253,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetJobRequest.decode = function decode(reader, length, error) { + GetJobRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GetJobRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19511,7 +20271,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19542,9 +20302,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetJobRequest.verify = function verify(message) { + GetJobRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -19559,9 +20323,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GetJobRequest} GetJobRequest */ - GetJobRequest.fromObject = function fromObject(object) { + GetJobRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GetJobRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GetJobRequest(); if (object.name != null) message.name = String(object.name); @@ -19639,7 +20407,7 @@ function UpdateJobRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19724,9 +20492,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateJobRequest.decode = function decode(reader, length, error) { + UpdateJobRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.UpdateJobRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -19734,7 +20506,7 @@ break; switch (tag >>> 3) { case 1: { - message.job = $root.google.cloud.run.v2.Job.decode(reader, reader.uint32()); + message.job = $root.google.cloud.run.v2.Job.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -19746,7 +20518,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -19777,11 +20549,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateJobRequest.verify = function verify(message) { + UpdateJobRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.job != null && message.hasOwnProperty("job")) { - var error = $root.google.cloud.run.v2.Job.verify(message.job); + var error = $root.google.cloud.run.v2.Job.verify(message.job, long + 1); if (error) return "job." + error; } @@ -19802,14 +20578,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.UpdateJobRequest} UpdateJobRequest */ - UpdateJobRequest.fromObject = function fromObject(object) { + UpdateJobRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.UpdateJobRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.UpdateJobRequest(); if (object.job != null) { if (typeof object.job !== "object") throw TypeError(".google.cloud.run.v2.UpdateJobRequest.job: object expected"); - message.job = $root.google.cloud.run.v2.Job.fromObject(object.job); + message.job = $root.google.cloud.run.v2.Job.fromObject(object.job, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -19897,7 +20677,7 @@ function ListJobsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -19992,9 +20772,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListJobsRequest.decode = function decode(reader, length, error) { + ListJobsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListJobsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20018,7 +20802,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20049,9 +20833,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListJobsRequest.verify = function verify(message) { + ListJobsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -20075,9 +20863,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListJobsRequest} ListJobsRequest */ - ListJobsRequest.fromObject = function fromObject(object) { + ListJobsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListJobsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListJobsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -20171,7 +20963,7 @@ this.jobs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20247,9 +21039,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListJobsResponse.decode = function decode(reader, length, error) { + ListJobsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListJobsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20259,7 +21055,7 @@ case 1: { if (!(message.jobs && message.jobs.length)) message.jobs = []; - message.jobs.push($root.google.cloud.run.v2.Job.decode(reader, reader.uint32())); + message.jobs.push($root.google.cloud.run.v2.Job.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -20267,7 +21063,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20298,14 +21094,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListJobsResponse.verify = function verify(message) { + ListJobsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.jobs != null && message.hasOwnProperty("jobs")) { if (!Array.isArray(message.jobs)) return "jobs: array expected"; for (var i = 0; i < message.jobs.length; ++i) { - var error = $root.google.cloud.run.v2.Job.verify(message.jobs[i]); + var error = $root.google.cloud.run.v2.Job.verify(message.jobs[i], long + 1); if (error) return "jobs." + error; } @@ -20324,9 +21124,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListJobsResponse} ListJobsResponse */ - ListJobsResponse.fromObject = function fromObject(object) { + ListJobsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListJobsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListJobsResponse(); if (object.jobs) { if (!Array.isArray(object.jobs)) @@ -20335,7 +21139,7 @@ for (var i = 0; i < object.jobs.length; ++i) { if (typeof object.jobs[i] !== "object") throw TypeError(".google.cloud.run.v2.ListJobsResponse.jobs: object expected"); - message.jobs[i] = $root.google.cloud.run.v2.Job.fromObject(object.jobs[i]); + message.jobs[i] = $root.google.cloud.run.v2.Job.fromObject(object.jobs[i], long + 1); } } if (object.nextPageToken != null) @@ -20421,7 +21225,7 @@ function DeleteJobRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20506,9 +21310,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteJobRequest.decode = function decode(reader, length, error) { + DeleteJobRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.DeleteJobRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20528,7 +21336,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20559,9 +21367,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteJobRequest.verify = function verify(message) { + DeleteJobRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -20582,9 +21394,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.DeleteJobRequest} DeleteJobRequest */ - DeleteJobRequest.fromObject = function fromObject(object) { + DeleteJobRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.DeleteJobRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.DeleteJobRequest(); if (object.name != null) message.name = String(object.name); @@ -20674,7 +21490,7 @@ function RunJobRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -20769,9 +21585,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RunJobRequest.decode = function decode(reader, length, error) { + RunJobRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.RunJobRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -20791,11 +21611,11 @@ break; } case 4: { - message.overrides = $root.google.cloud.run.v2.RunJobRequest.Overrides.decode(reader, reader.uint32()); + message.overrides = $root.google.cloud.run.v2.RunJobRequest.Overrides.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -20826,9 +21646,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RunJobRequest.verify = function verify(message) { + RunJobRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -20839,7 +21663,7 @@ if (!$util.isString(message.etag)) return "etag: string expected"; if (message.overrides != null && message.hasOwnProperty("overrides")) { - var error = $root.google.cloud.run.v2.RunJobRequest.Overrides.verify(message.overrides); + var error = $root.google.cloud.run.v2.RunJobRequest.Overrides.verify(message.overrides, long + 1); if (error) return "overrides." + error; } @@ -20854,9 +21678,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.RunJobRequest} RunJobRequest */ - RunJobRequest.fromObject = function fromObject(object) { + RunJobRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.RunJobRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.RunJobRequest(); if (object.name != null) message.name = String(object.name); @@ -20867,7 +21695,7 @@ if (object.overrides != null) { if (typeof object.overrides !== "object") throw TypeError(".google.cloud.run.v2.RunJobRequest.overrides: object expected"); - message.overrides = $root.google.cloud.run.v2.RunJobRequest.Overrides.fromObject(object.overrides); + message.overrides = $root.google.cloud.run.v2.RunJobRequest.Overrides.fromObject(object.overrides, long + 1); } return message; }; @@ -20951,7 +21779,7 @@ this.containerOverrides = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21037,9 +21865,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Overrides.decode = function decode(reader, length, error) { + Overrides.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.RunJobRequest.Overrides(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21049,7 +21881,7 @@ case 1: { if (!(message.containerOverrides && message.containerOverrides.length)) message.containerOverrides = []; - message.containerOverrides.push($root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride.decode(reader, reader.uint32())); + message.containerOverrides.push($root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -21057,11 +21889,11 @@ break; } case 4: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21092,14 +21924,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Overrides.verify = function verify(message) { + Overrides.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.containerOverrides != null && message.hasOwnProperty("containerOverrides")) { if (!Array.isArray(message.containerOverrides)) return "containerOverrides: array expected"; for (var i = 0; i < message.containerOverrides.length; ++i) { - var error = $root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride.verify(message.containerOverrides[i]); + var error = $root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride.verify(message.containerOverrides[i], long + 1); if (error) return "containerOverrides." + error; } @@ -21108,7 +21944,7 @@ if (!$util.isInteger(message.taskCount)) return "taskCount: integer expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -21123,9 +21959,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.RunJobRequest.Overrides} Overrides */ - Overrides.fromObject = function fromObject(object) { + Overrides.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.RunJobRequest.Overrides) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.RunJobRequest.Overrides(); if (object.containerOverrides) { if (!Array.isArray(object.containerOverrides)) @@ -21134,7 +21974,7 @@ for (var i = 0; i < object.containerOverrides.length; ++i) { if (typeof object.containerOverrides[i] !== "object") throw TypeError(".google.cloud.run.v2.RunJobRequest.Overrides.containerOverrides: object expected"); - message.containerOverrides[i] = $root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride.fromObject(object.containerOverrides[i]); + message.containerOverrides[i] = $root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride.fromObject(object.containerOverrides[i], long + 1); } } if (object.taskCount != null) @@ -21142,7 +21982,7 @@ if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.cloud.run.v2.RunJobRequest.Overrides.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } return message; }; @@ -21229,7 +22069,7 @@ this.env = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21326,9 +22166,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ContainerOverride.decode = function decode(reader, length, error) { + ContainerOverride.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride(); while (reader.pos < end) { var tag = reader.uint32(); @@ -21348,7 +22192,7 @@ case 3: { if (!(message.env && message.env.length)) message.env = []; - message.env.push($root.google.cloud.run.v2.EnvVar.decode(reader, reader.uint32())); + message.env.push($root.google.cloud.run.v2.EnvVar.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -21356,7 +22200,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -21387,9 +22231,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ContainerOverride.verify = function verify(message) { + ContainerOverride.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -21404,7 +22252,7 @@ if (!Array.isArray(message.env)) return "env: array expected"; for (var i = 0; i < message.env.length; ++i) { - var error = $root.google.cloud.run.v2.EnvVar.verify(message.env[i]); + var error = $root.google.cloud.run.v2.EnvVar.verify(message.env[i], long + 1); if (error) return "env." + error; } @@ -21423,9 +22271,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride} ContainerOverride */ - ContainerOverride.fromObject = function fromObject(object) { + ContainerOverride.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride(); if (object.name != null) message.name = String(object.name); @@ -21443,7 +22295,7 @@ for (var i = 0; i < object.env.length; ++i) { if (typeof object.env[i] !== "object") throw TypeError(".google.cloud.run.v2.RunJobRequest.Overrides.ContainerOverride.env: object expected"); - message.env[i] = $root.google.cloud.run.v2.EnvVar.fromObject(object.env[i]); + message.env[i] = $root.google.cloud.run.v2.EnvVar.fromObject(object.env[i], long + 1); } } if (object.clearArgs != null) @@ -21572,7 +22424,7 @@ this.conditions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -21904,9 +22756,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Job.decode = function decode(reader, length, error) { + Job.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Job(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -21941,10 +22797,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -21964,27 +22822,29 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 6: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -22008,11 +22868,11 @@ break; } case 15: { - message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.decode(reader, reader.uint32()); + message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.decode(reader, reader.uint32(), undefined, long + 1); break; } case 16: { - message.template = $root.google.cloud.run.v2.ExecutionTemplate.decode(reader, reader.uint32()); + message.template = $root.google.cloud.run.v2.ExecutionTemplate.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -22020,13 +22880,13 @@ break; } case 18: { - message.terminalCondition = $root.google.cloud.run.v2.Condition.decode(reader, reader.uint32()); + message.terminalCondition = $root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { if (!(message.conditions && message.conditions.length)) message.conditions = []; - message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32())); + message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 20: { @@ -22034,7 +22894,7 @@ break; } case 22: { - message.latestCreatedExecution = $root.google.cloud.run.v2.ExecutionReference.decode(reader, reader.uint32()); + message.latestCreatedExecution = $root.google.cloud.run.v2.ExecutionReference.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { @@ -22058,7 +22918,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22089,9 +22949,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Job.verify = function verify(message) { + Job.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -22119,22 +22983,22 @@ return "annotations: string{k:string} expected"; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -22165,12 +23029,12 @@ break; } if (message.binaryAuthorization != null && message.hasOwnProperty("binaryAuthorization")) { - var error = $root.google.cloud.run.v2.BinaryAuthorization.verify(message.binaryAuthorization); + var error = $root.google.cloud.run.v2.BinaryAuthorization.verify(message.binaryAuthorization, long + 1); if (error) return "binaryAuthorization." + error; } if (message.template != null && message.hasOwnProperty("template")) { - var error = $root.google.cloud.run.v2.ExecutionTemplate.verify(message.template); + var error = $root.google.cloud.run.v2.ExecutionTemplate.verify(message.template, long + 1); if (error) return "template." + error; } @@ -22178,7 +23042,7 @@ if (!$util.isInteger(message.observedGeneration) && !(message.observedGeneration && $util.isInteger(message.observedGeneration.low) && $util.isInteger(message.observedGeneration.high))) return "observedGeneration: integer|Long expected"; if (message.terminalCondition != null && message.hasOwnProperty("terminalCondition")) { - var error = $root.google.cloud.run.v2.Condition.verify(message.terminalCondition); + var error = $root.google.cloud.run.v2.Condition.verify(message.terminalCondition, long + 1); if (error) return "terminalCondition." + error; } @@ -22186,7 +23050,7 @@ if (!Array.isArray(message.conditions)) return "conditions: array expected"; for (var i = 0; i < message.conditions.length; ++i) { - var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i]); + var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i], long + 1); if (error) return "conditions." + error; } @@ -22195,7 +23059,7 @@ if (!$util.isInteger(message.executionCount)) return "executionCount: integer expected"; if (message.latestCreatedExecution != null && message.hasOwnProperty("latestCreatedExecution")) { - var error = $root.google.cloud.run.v2.ExecutionReference.verify(message.latestCreatedExecution); + var error = $root.google.cloud.run.v2.ExecutionReference.verify(message.latestCreatedExecution, long + 1); if (error) return "latestCreatedExecution." + error; } @@ -22231,9 +23095,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Job} Job */ - Job.fromObject = function fromObject(object) { + Job.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Job) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Job(); if (object.name != null) message.name = String(object.name); @@ -22252,35 +23120,41 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.Job.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.Job.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.run.v2.Job.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.run.v2.Job.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.run.v2.Job.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.run.v2.Job.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.creator != null) message.creator = String(object.creator); @@ -22333,12 +23207,12 @@ if (object.binaryAuthorization != null) { if (typeof object.binaryAuthorization !== "object") throw TypeError(".google.cloud.run.v2.Job.binaryAuthorization: object expected"); - message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.fromObject(object.binaryAuthorization); + message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.fromObject(object.binaryAuthorization, long + 1); } if (object.template != null) { if (typeof object.template !== "object") throw TypeError(".google.cloud.run.v2.Job.template: object expected"); - message.template = $root.google.cloud.run.v2.ExecutionTemplate.fromObject(object.template); + message.template = $root.google.cloud.run.v2.ExecutionTemplate.fromObject(object.template, long + 1); } if (object.observedGeneration != null) if ($util.Long) @@ -22352,7 +23226,7 @@ if (object.terminalCondition != null) { if (typeof object.terminalCondition !== "object") throw TypeError(".google.cloud.run.v2.Job.terminalCondition: object expected"); - message.terminalCondition = $root.google.cloud.run.v2.Condition.fromObject(object.terminalCondition); + message.terminalCondition = $root.google.cloud.run.v2.Condition.fromObject(object.terminalCondition, long + 1); } if (object.conditions) { if (!Array.isArray(object.conditions)) @@ -22361,7 +23235,7 @@ for (var i = 0; i < object.conditions.length; ++i) { if (typeof object.conditions[i] !== "object") throw TypeError(".google.cloud.run.v2.Job.conditions: object expected"); - message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i]); + message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i], long + 1); } } if (object.executionCount != null) @@ -22369,7 +23243,7 @@ if (object.latestCreatedExecution != null) { if (typeof object.latestCreatedExecution !== "object") throw TypeError(".google.cloud.run.v2.Job.latestCreatedExecution: object expected"); - message.latestCreatedExecution = $root.google.cloud.run.v2.ExecutionReference.fromObject(object.latestCreatedExecution); + message.latestCreatedExecution = $root.google.cloud.run.v2.ExecutionReference.fromObject(object.latestCreatedExecution, long + 1); } if (object.reconciling != null) message.reconciling = Boolean(object.reconciling); @@ -22446,13 +23320,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.createTime != null && message.hasOwnProperty("createTime")) object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); @@ -22564,7 +23444,7 @@ function ExecutionReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -22669,9 +23549,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExecutionReference.decode = function decode(reader, length, error) { + ExecutionReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ExecutionReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -22683,15 +23567,15 @@ break; } case 2: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.completionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.completionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { @@ -22699,7 +23583,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -22730,24 +23614,28 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExecutionReference.verify = function verify(message) { + ExecutionReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.completionTime != null && message.hasOwnProperty("completionTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.completionTime); + var error = $root.google.protobuf.Timestamp.verify(message.completionTime, long + 1); if (error) return "completionTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } @@ -22774,26 +23662,30 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ExecutionReference} ExecutionReference */ - ExecutionReference.fromObject = function fromObject(object) { + ExecutionReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ExecutionReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ExecutionReference(); if (object.name != null) message.name = String(object.name); if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.run.v2.ExecutionReference.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.completionTime != null) { if (typeof object.completionTime !== "object") throw TypeError(".google.cloud.run.v2.ExecutionReference.completionTime: object expected"); - message.completionTime = $root.google.protobuf.Timestamp.fromObject(object.completionTime); + message.completionTime = $root.google.protobuf.Timestamp.fromObject(object.completionTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.run.v2.ExecutionReference.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } switch (object.completionStatus) { default: @@ -23068,7 +23960,7 @@ function GetRevisionRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23133,9 +24025,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetRevisionRequest.decode = function decode(reader, length, error) { + GetRevisionRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GetRevisionRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23147,7 +24043,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23178,9 +24074,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetRevisionRequest.verify = function verify(message) { + GetRevisionRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -23195,9 +24095,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GetRevisionRequest} GetRevisionRequest */ - GetRevisionRequest.fromObject = function fromObject(object) { + GetRevisionRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GetRevisionRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GetRevisionRequest(); if (object.name != null) message.name = String(object.name); @@ -23276,7 +24180,7 @@ function ListRevisionsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23371,9 +24275,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListRevisionsRequest.decode = function decode(reader, length, error) { + ListRevisionsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListRevisionsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23397,7 +24305,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23428,9 +24336,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListRevisionsRequest.verify = function verify(message) { + ListRevisionsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -23454,9 +24366,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListRevisionsRequest} ListRevisionsRequest */ - ListRevisionsRequest.fromObject = function fromObject(object) { + ListRevisionsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListRevisionsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListRevisionsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -23550,7 +24466,7 @@ this.revisions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23626,9 +24542,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListRevisionsResponse.decode = function decode(reader, length, error) { + ListRevisionsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListRevisionsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23638,7 +24558,7 @@ case 1: { if (!(message.revisions && message.revisions.length)) message.revisions = []; - message.revisions.push($root.google.cloud.run.v2.Revision.decode(reader, reader.uint32())); + message.revisions.push($root.google.cloud.run.v2.Revision.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -23646,7 +24566,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23677,14 +24597,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListRevisionsResponse.verify = function verify(message) { + ListRevisionsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.revisions != null && message.hasOwnProperty("revisions")) { if (!Array.isArray(message.revisions)) return "revisions: array expected"; for (var i = 0; i < message.revisions.length; ++i) { - var error = $root.google.cloud.run.v2.Revision.verify(message.revisions[i]); + var error = $root.google.cloud.run.v2.Revision.verify(message.revisions[i], long + 1); if (error) return "revisions." + error; } @@ -23703,9 +24627,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListRevisionsResponse} ListRevisionsResponse */ - ListRevisionsResponse.fromObject = function fromObject(object) { + ListRevisionsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListRevisionsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListRevisionsResponse(); if (object.revisions) { if (!Array.isArray(object.revisions)) @@ -23714,7 +24642,7 @@ for (var i = 0; i < object.revisions.length; ++i) { if (typeof object.revisions[i] !== "object") throw TypeError(".google.cloud.run.v2.ListRevisionsResponse.revisions: object expected"); - message.revisions[i] = $root.google.cloud.run.v2.Revision.fromObject(object.revisions[i]); + message.revisions[i] = $root.google.cloud.run.v2.Revision.fromObject(object.revisions[i], long + 1); } } if (object.nextPageToken != null) @@ -23800,7 +24728,7 @@ function DeleteRevisionRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -23885,9 +24813,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteRevisionRequest.decode = function decode(reader, length, error) { + DeleteRevisionRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.DeleteRevisionRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -23907,7 +24839,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -23938,9 +24870,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteRevisionRequest.verify = function verify(message) { + DeleteRevisionRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -23961,9 +24897,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.DeleteRevisionRequest} DeleteRevisionRequest */ - DeleteRevisionRequest.fromObject = function fromObject(object) { + DeleteRevisionRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.DeleteRevisionRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.DeleteRevisionRequest(); if (object.name != null) message.name = String(object.name); @@ -24088,7 +25028,7 @@ this.conditions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -24497,9 +25437,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Revision.decode = function decode(reader, length, error) { + Revision.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Revision(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -24534,10 +25478,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -24557,27 +25503,29 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 6: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -24589,11 +25537,11 @@ break; } case 12: { - message.scaling = $root.google.cloud.run.v2.RevisionScaling.decode(reader, reader.uint32()); + message.scaling = $root.google.cloud.run.v2.RevisionScaling.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32()); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32(), undefined, long + 1); break; } case 34: { @@ -24601,7 +25549,7 @@ break; } case 15: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 16: { @@ -24611,13 +25559,13 @@ case 17: { if (!(message.containers && message.containers.length)) message.containers = []; - message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32())); + message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 18: { if (!(message.volumes && message.volumes.length)) message.volumes = []; - message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32())); + message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 20: { @@ -24629,7 +25577,7 @@ break; } case 22: { - message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.decode(reader, reader.uint32()); + message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { @@ -24637,7 +25585,7 @@ break; } case 24: { - message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 30: { @@ -24647,7 +25595,7 @@ case 31: { if (!(message.conditions && message.conditions.length)) message.conditions = []; - message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32())); + message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 32: { @@ -24667,11 +25615,11 @@ break; } case 39: { - message.scalingStatus = $root.google.cloud.run.v2.RevisionScalingStatus.decode(reader, reader.uint32()); + message.scalingStatus = $root.google.cloud.run.v2.RevisionScalingStatus.decode(reader, reader.uint32(), undefined, long + 1); break; } case 40: { - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32()); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32(), undefined, long + 1); break; } case 48: { @@ -24687,7 +25635,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -24718,9 +25666,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Revision.verify = function verify(message) { + Revision.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -24748,22 +25700,22 @@ return "annotations: string{k:string} expected"; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -24785,12 +25737,12 @@ if (!$util.isString(message.service)) return "service: string expected"; if (message.scaling != null && message.hasOwnProperty("scaling")) { - var error = $root.google.cloud.run.v2.RevisionScaling.verify(message.scaling); + var error = $root.google.cloud.run.v2.RevisionScaling.verify(message.scaling, long + 1); if (error) return "scaling." + error; } if (message.vpcAccess != null && message.hasOwnProperty("vpcAccess")) { - var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess); + var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess, long + 1); if (error) return "vpcAccess." + error; } @@ -24798,7 +25750,7 @@ if (!$util.isInteger(message.maxInstanceRequestConcurrency)) return "maxInstanceRequestConcurrency: integer expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -24809,7 +25761,7 @@ if (!Array.isArray(message.containers)) return "containers: array expected"; for (var i = 0; i < message.containers.length; ++i) { - var error = $root.google.cloud.run.v2.Container.verify(message.containers[i]); + var error = $root.google.cloud.run.v2.Container.verify(message.containers[i], long + 1); if (error) return "containers." + error; } @@ -24818,7 +25770,7 @@ if (!Array.isArray(message.volumes)) return "volumes: array expected"; for (var i = 0; i < message.volumes.length; ++i) { - var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i]); + var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i], long + 1); if (error) return "volumes." + error; } @@ -24836,7 +25788,7 @@ if (!$util.isString(message.encryptionKey)) return "encryptionKey: string expected"; if (message.serviceMesh != null && message.hasOwnProperty("serviceMesh")) { - var error = $root.google.cloud.run.v2.ServiceMesh.verify(message.serviceMesh); + var error = $root.google.cloud.run.v2.ServiceMesh.verify(message.serviceMesh, long + 1); if (error) return "serviceMesh." + error; } @@ -24850,7 +25802,7 @@ break; } if (message.encryptionKeyShutdownDuration != null && message.hasOwnProperty("encryptionKeyShutdownDuration")) { - var error = $root.google.protobuf.Duration.verify(message.encryptionKeyShutdownDuration); + var error = $root.google.protobuf.Duration.verify(message.encryptionKeyShutdownDuration, long + 1); if (error) return "encryptionKeyShutdownDuration." + error; } @@ -24861,7 +25813,7 @@ if (!Array.isArray(message.conditions)) return "conditions: array expected"; for (var i = 0; i < message.conditions.length; ++i) { - var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i]); + var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i], long + 1); if (error) return "conditions." + error; } @@ -24879,12 +25831,12 @@ if (typeof message.sessionAffinity !== "boolean") return "sessionAffinity: boolean expected"; if (message.scalingStatus != null && message.hasOwnProperty("scalingStatus")) { - var error = $root.google.cloud.run.v2.RevisionScalingStatus.verify(message.scalingStatus); + var error = $root.google.cloud.run.v2.RevisionScalingStatus.verify(message.scalingStatus, long + 1); if (error) return "scalingStatus." + error; } if (message.nodeSelector != null && message.hasOwnProperty("nodeSelector")) { - var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector); + var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector, long + 1); if (error) return "nodeSelector." + error; } @@ -24910,9 +25862,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Revision} Revision */ - Revision.fromObject = function fromObject(object) { + Revision.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Revision) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Revision(); if (object.name != null) message.name = String(object.name); @@ -24931,35 +25887,41 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.Revision.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.Revision.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.run.v2.Revision.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.run.v2.Revision.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.run.v2.Revision.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.run.v2.Revision.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } switch (object.launchStage) { default: @@ -25006,19 +25968,19 @@ if (object.scaling != null) { if (typeof object.scaling !== "object") throw TypeError(".google.cloud.run.v2.Revision.scaling: object expected"); - message.scaling = $root.google.cloud.run.v2.RevisionScaling.fromObject(object.scaling); + message.scaling = $root.google.cloud.run.v2.RevisionScaling.fromObject(object.scaling, long + 1); } if (object.vpcAccess != null) { if (typeof object.vpcAccess !== "object") throw TypeError(".google.cloud.run.v2.Revision.vpcAccess: object expected"); - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess, long + 1); } if (object.maxInstanceRequestConcurrency != null) message.maxInstanceRequestConcurrency = object.maxInstanceRequestConcurrency | 0; if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.cloud.run.v2.Revision.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } if (object.serviceAccount != null) message.serviceAccount = String(object.serviceAccount); @@ -25029,7 +25991,7 @@ for (var i = 0; i < object.containers.length; ++i) { if (typeof object.containers[i] !== "object") throw TypeError(".google.cloud.run.v2.Revision.containers: object expected"); - message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i]); + message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i], long + 1); } } if (object.volumes) { @@ -25039,7 +26001,7 @@ for (var i = 0; i < object.volumes.length; ++i) { if (typeof object.volumes[i] !== "object") throw TypeError(".google.cloud.run.v2.Revision.volumes: object expected"); - message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i]); + message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i], long + 1); } } switch (object.executionEnvironment) { @@ -25067,7 +26029,7 @@ if (object.serviceMesh != null) { if (typeof object.serviceMesh !== "object") throw TypeError(".google.cloud.run.v2.Revision.serviceMesh: object expected"); - message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.fromObject(object.serviceMesh); + message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.fromObject(object.serviceMesh, long + 1); } switch (object.encryptionKeyRevocationAction) { default: @@ -25092,7 +26054,7 @@ if (object.encryptionKeyShutdownDuration != null) { if (typeof object.encryptionKeyShutdownDuration !== "object") throw TypeError(".google.cloud.run.v2.Revision.encryptionKeyShutdownDuration: object expected"); - message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.fromObject(object.encryptionKeyShutdownDuration); + message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.fromObject(object.encryptionKeyShutdownDuration, long + 1); } if (object.reconciling != null) message.reconciling = Boolean(object.reconciling); @@ -25103,7 +26065,7 @@ for (var i = 0; i < object.conditions.length; ++i) { if (typeof object.conditions[i] !== "object") throw TypeError(".google.cloud.run.v2.Revision.conditions: object expected"); - message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i]); + message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i], long + 1); } } if (object.observedGeneration != null) @@ -25124,12 +26086,12 @@ if (object.scalingStatus != null) { if (typeof object.scalingStatus !== "object") throw TypeError(".google.cloud.run.v2.Revision.scalingStatus: object expected"); - message.scalingStatus = $root.google.cloud.run.v2.RevisionScalingStatus.fromObject(object.scalingStatus); + message.scalingStatus = $root.google.cloud.run.v2.RevisionScalingStatus.fromObject(object.scalingStatus, long + 1); } if (object.nodeSelector != null) { if (typeof object.nodeSelector !== "object") throw TypeError(".google.cloud.run.v2.Revision.nodeSelector: object expected"); - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector, long + 1); } if (object.gpuZonalRedundancyDisabled != null) message.gpuZonalRedundancyDisabled = Boolean(object.gpuZonalRedundancyDisabled); @@ -25212,13 +26174,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.createTime != null && message.hasOwnProperty("createTime")) object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); @@ -25345,7 +26313,7 @@ function RevisionScalingStatus(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25410,9 +26378,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RevisionScalingStatus.decode = function decode(reader, length, error) { + RevisionScalingStatus.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.RevisionScalingStatus(); while (reader.pos < end) { var tag = reader.uint32(); @@ -25424,7 +26396,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25455,9 +26427,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RevisionScalingStatus.verify = function verify(message) { + RevisionScalingStatus.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.desiredMinInstanceCount != null && message.hasOwnProperty("desiredMinInstanceCount")) if (!$util.isInteger(message.desiredMinInstanceCount)) return "desiredMinInstanceCount: integer expected"; @@ -25472,9 +26448,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.RevisionScalingStatus} RevisionScalingStatus */ - RevisionScalingStatus.fromObject = function fromObject(object) { + RevisionScalingStatus.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.RevisionScalingStatus) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.RevisionScalingStatus(); if (object.desiredMinInstanceCount != null) message.desiredMinInstanceCount = object.desiredMinInstanceCount | 0; @@ -25572,7 +26552,7 @@ this.volumes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -25830,9 +26810,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RevisionTemplate.decode = function decode(reader, length, error) { + RevisionTemplate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.RevisionTemplate(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -25859,10 +26843,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -25882,23 +26868,25 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 4: { - message.scaling = $root.google.cloud.run.v2.RevisionScaling.decode(reader, reader.uint32()); + message.scaling = $root.google.cloud.run.v2.RevisionScaling.decode(reader, reader.uint32(), undefined, long + 1); break; } case 6: { - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32()); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { @@ -25908,13 +26896,13 @@ case 10: { if (!(message.containers && message.containers.length)) message.containers = []; - message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32())); + message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 11: { if (!(message.volumes && message.volumes.length)) message.volumes = []; - message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32())); + message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 13: { @@ -25930,7 +26918,7 @@ break; } case 16: { - message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.decode(reader, reader.uint32()); + message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -25938,7 +26926,7 @@ break; } case 18: { - message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { @@ -25950,7 +26938,7 @@ break; } case 21: { - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32()); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { @@ -25958,7 +26946,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -25989,9 +26977,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RevisionTemplate.verify = function verify(message) { + RevisionTemplate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.revision != null && message.hasOwnProperty("revision")) if (!$util.isString(message.revision)) @@ -26013,17 +27005,17 @@ return "annotations: string{k:string} expected"; } if (message.scaling != null && message.hasOwnProperty("scaling")) { - var error = $root.google.cloud.run.v2.RevisionScaling.verify(message.scaling); + var error = $root.google.cloud.run.v2.RevisionScaling.verify(message.scaling, long + 1); if (error) return "scaling." + error; } if (message.vpcAccess != null && message.hasOwnProperty("vpcAccess")) { - var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess); + var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess, long + 1); if (error) return "vpcAccess." + error; } if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -26034,7 +27026,7 @@ if (!Array.isArray(message.containers)) return "containers: array expected"; for (var i = 0; i < message.containers.length; ++i) { - var error = $root.google.cloud.run.v2.Container.verify(message.containers[i]); + var error = $root.google.cloud.run.v2.Container.verify(message.containers[i], long + 1); if (error) return "containers." + error; } @@ -26043,7 +27035,7 @@ if (!Array.isArray(message.volumes)) return "volumes: array expected"; for (var i = 0; i < message.volumes.length; ++i) { - var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i]); + var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i], long + 1); if (error) return "volumes." + error; } @@ -26064,7 +27056,7 @@ if (!$util.isInteger(message.maxInstanceRequestConcurrency)) return "maxInstanceRequestConcurrency: integer expected"; if (message.serviceMesh != null && message.hasOwnProperty("serviceMesh")) { - var error = $root.google.cloud.run.v2.ServiceMesh.verify(message.serviceMesh); + var error = $root.google.cloud.run.v2.ServiceMesh.verify(message.serviceMesh, long + 1); if (error) return "serviceMesh." + error; } @@ -26078,7 +27070,7 @@ break; } if (message.encryptionKeyShutdownDuration != null && message.hasOwnProperty("encryptionKeyShutdownDuration")) { - var error = $root.google.protobuf.Duration.verify(message.encryptionKeyShutdownDuration); + var error = $root.google.protobuf.Duration.verify(message.encryptionKeyShutdownDuration, long + 1); if (error) return "encryptionKeyShutdownDuration." + error; } @@ -26089,7 +27081,7 @@ if (typeof message.healthCheckDisabled !== "boolean") return "healthCheckDisabled: boolean expected"; if (message.nodeSelector != null && message.hasOwnProperty("nodeSelector")) { - var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector); + var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector, long + 1); if (error) return "nodeSelector." + error; } @@ -26109,9 +27101,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.RevisionTemplate} RevisionTemplate */ - RevisionTemplate.fromObject = function fromObject(object) { + RevisionTemplate.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.RevisionTemplate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.RevisionTemplate(); if (object.revision != null) message.revision = String(object.revision); @@ -26119,30 +27115,36 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.scaling != null) { if (typeof object.scaling !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.scaling: object expected"); - message.scaling = $root.google.cloud.run.v2.RevisionScaling.fromObject(object.scaling); + message.scaling = $root.google.cloud.run.v2.RevisionScaling.fromObject(object.scaling, long + 1); } if (object.vpcAccess != null) { if (typeof object.vpcAccess !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.vpcAccess: object expected"); - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess, long + 1); } if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } if (object.serviceAccount != null) message.serviceAccount = String(object.serviceAccount); @@ -26153,7 +27155,7 @@ for (var i = 0; i < object.containers.length; ++i) { if (typeof object.containers[i] !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.containers: object expected"); - message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i]); + message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i], long + 1); } } if (object.volumes) { @@ -26163,7 +27165,7 @@ for (var i = 0; i < object.volumes.length; ++i) { if (typeof object.volumes[i] !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.volumes: object expected"); - message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i]); + message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i], long + 1); } } switch (object.executionEnvironment) { @@ -26193,7 +27195,7 @@ if (object.serviceMesh != null) { if (typeof object.serviceMesh !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.serviceMesh: object expected"); - message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.fromObject(object.serviceMesh); + message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.fromObject(object.serviceMesh, long + 1); } switch (object.encryptionKeyRevocationAction) { default: @@ -26218,7 +27220,7 @@ if (object.encryptionKeyShutdownDuration != null) { if (typeof object.encryptionKeyShutdownDuration !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.encryptionKeyShutdownDuration: object expected"); - message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.fromObject(object.encryptionKeyShutdownDuration); + message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.fromObject(object.encryptionKeyShutdownDuration, long + 1); } if (object.sessionAffinity != null) message.sessionAffinity = Boolean(object.sessionAffinity); @@ -26227,7 +27229,7 @@ if (object.nodeSelector != null) { if (typeof object.nodeSelector !== "object") throw TypeError(".google.cloud.run.v2.RevisionTemplate.nodeSelector: object expected"); - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector, long + 1); } if (object.gpuZonalRedundancyDisabled != null) message.gpuZonalRedundancyDisabled = Boolean(object.gpuZonalRedundancyDisabled); @@ -26276,13 +27278,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.scaling != null && message.hasOwnProperty("scaling")) object.scaling = $root.google.cloud.run.v2.RevisionScaling.toObject(message.scaling, options); @@ -26679,7 +27687,7 @@ function CreateServiceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -26774,9 +27782,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateServiceRequest.decode = function decode(reader, length, error) { + CreateServiceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.CreateServiceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -26788,7 +27800,7 @@ break; } case 2: { - message.service = $root.google.cloud.run.v2.Service.decode(reader, reader.uint32()); + message.service = $root.google.cloud.run.v2.Service.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -26800,7 +27812,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -26831,14 +27843,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateServiceRequest.verify = function verify(message) { + CreateServiceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.service != null && message.hasOwnProperty("service")) { - var error = $root.google.cloud.run.v2.Service.verify(message.service); + var error = $root.google.cloud.run.v2.Service.verify(message.service, long + 1); if (error) return "service." + error; } @@ -26859,16 +27875,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.CreateServiceRequest} CreateServiceRequest */ - CreateServiceRequest.fromObject = function fromObject(object) { + CreateServiceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.CreateServiceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.CreateServiceRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.service != null) { if (typeof object.service !== "object") throw TypeError(".google.cloud.run.v2.CreateServiceRequest.service: object expected"); - message.service = $root.google.cloud.run.v2.Service.fromObject(object.service); + message.service = $root.google.cloud.run.v2.Service.fromObject(object.service, long + 1); } if (object.serviceId != null) message.serviceId = String(object.serviceId); @@ -26959,7 +27979,7 @@ function UpdateServiceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27054,9 +28074,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateServiceRequest.decode = function decode(reader, length, error) { + UpdateServiceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.UpdateServiceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27064,11 +28088,11 @@ break; switch (tag >>> 3) { case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { - message.service = $root.google.cloud.run.v2.Service.decode(reader, reader.uint32()); + message.service = $root.google.cloud.run.v2.Service.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -27080,7 +28104,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27111,16 +28135,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateServiceRequest.verify = function verify(message) { + UpdateServiceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } if (message.service != null && message.hasOwnProperty("service")) { - var error = $root.google.cloud.run.v2.Service.verify(message.service); + var error = $root.google.cloud.run.v2.Service.verify(message.service, long + 1); if (error) return "service." + error; } @@ -27141,19 +28169,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.UpdateServiceRequest} UpdateServiceRequest */ - UpdateServiceRequest.fromObject = function fromObject(object) { + UpdateServiceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.UpdateServiceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.UpdateServiceRequest(); if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.run.v2.UpdateServiceRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.service != null) { if (typeof object.service !== "object") throw TypeError(".google.cloud.run.v2.UpdateServiceRequest.service: object expected"); - message.service = $root.google.cloud.run.v2.Service.fromObject(object.service); + message.service = $root.google.cloud.run.v2.Service.fromObject(object.service, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -27244,7 +28276,7 @@ function ListServicesRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27339,9 +28371,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListServicesRequest.decode = function decode(reader, length, error) { + ListServicesRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListServicesRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27365,7 +28401,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27396,9 +28432,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListServicesRequest.verify = function verify(message) { + ListServicesRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -27422,9 +28462,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListServicesRequest} ListServicesRequest */ - ListServicesRequest.fromObject = function fromObject(object) { + ListServicesRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListServicesRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListServicesRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -27520,7 +28564,7 @@ this.unreachable = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27607,9 +28651,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListServicesResponse.decode = function decode(reader, length, error) { + ListServicesResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListServicesResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27619,7 +28667,7 @@ case 1: { if (!(message.services && message.services.length)) message.services = []; - message.services.push($root.google.cloud.run.v2.Service.decode(reader, reader.uint32())); + message.services.push($root.google.cloud.run.v2.Service.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -27633,7 +28681,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27664,14 +28712,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListServicesResponse.verify = function verify(message) { + ListServicesResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.services != null && message.hasOwnProperty("services")) { if (!Array.isArray(message.services)) return "services: array expected"; for (var i = 0; i < message.services.length; ++i) { - var error = $root.google.cloud.run.v2.Service.verify(message.services[i]); + var error = $root.google.cloud.run.v2.Service.verify(message.services[i], long + 1); if (error) return "services." + error; } @@ -27697,9 +28749,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListServicesResponse} ListServicesResponse */ - ListServicesResponse.fromObject = function fromObject(object) { + ListServicesResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListServicesResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListServicesResponse(); if (object.services) { if (!Array.isArray(object.services)) @@ -27708,7 +28764,7 @@ for (var i = 0; i < object.services.length; ++i) { if (typeof object.services[i] !== "object") throw TypeError(".google.cloud.run.v2.ListServicesResponse.services: object expected"); - message.services[i] = $root.google.cloud.run.v2.Service.fromObject(object.services[i]); + message.services[i] = $root.google.cloud.run.v2.Service.fromObject(object.services[i], long + 1); } } if (object.nextPageToken != null) @@ -27806,7 +28862,7 @@ function GetServiceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -27871,9 +28927,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetServiceRequest.decode = function decode(reader, length, error) { + GetServiceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GetServiceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -27885,7 +28945,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -27916,9 +28976,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetServiceRequest.verify = function verify(message) { + GetServiceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -27933,9 +28997,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GetServiceRequest} GetServiceRequest */ - GetServiceRequest.fromObject = function fromObject(object) { + GetServiceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GetServiceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GetServiceRequest(); if (object.name != null) message.name = String(object.name); @@ -28013,7 +29081,7 @@ function DeleteServiceRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28098,9 +29166,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteServiceRequest.decode = function decode(reader, length, error) { + DeleteServiceRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.DeleteServiceRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -28120,7 +29192,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28151,9 +29223,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteServiceRequest.verify = function verify(message) { + DeleteServiceRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -28174,9 +29250,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.DeleteServiceRequest} DeleteServiceRequest */ - DeleteServiceRequest.fromObject = function fromObject(object) { + DeleteServiceRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.DeleteServiceRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.DeleteServiceRequest(); if (object.name != null) message.name = String(object.name); @@ -28307,7 +29387,7 @@ this.trafficStatuses = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -28749,9 +29829,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Service.decode = function decode(reader, length, error) { + Service.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Service(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -28790,10 +29874,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -28813,27 +29899,29 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 7: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { @@ -28861,21 +29949,21 @@ break; } case 17: { - message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.decode(reader, reader.uint32()); + message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { - message.template = $root.google.cloud.run.v2.RevisionTemplate.decode(reader, reader.uint32()); + message.template = $root.google.cloud.run.v2.RevisionTemplate.decode(reader, reader.uint32(), undefined, long + 1); break; } case 19: { if (!(message.traffic && message.traffic.length)) message.traffic = []; - message.traffic.push($root.google.cloud.run.v2.TrafficTarget.decode(reader, reader.uint32())); + message.traffic.push($root.google.cloud.run.v2.TrafficTarget.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 20: { - message.scaling = $root.google.cloud.run.v2.ServiceScaling.decode(reader, reader.uint32()); + message.scaling = $root.google.cloud.run.v2.ServiceScaling.decode(reader, reader.uint32(), undefined, long + 1); break; } case 21: { @@ -28897,7 +29985,7 @@ break; } case 26: { - message.multiRegionSettings = $root.google.cloud.run.v2.Service.MultiRegionSettings.decode(reader, reader.uint32()); + message.multiRegionSettings = $root.google.cloud.run.v2.Service.MultiRegionSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 37: { @@ -28911,13 +29999,13 @@ break; } case 31: { - message.terminalCondition = $root.google.cloud.run.v2.Condition.decode(reader, reader.uint32()); + message.terminalCondition = $root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1); break; } case 32: { if (!(message.conditions && message.conditions.length)) message.conditions = []; - message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32())); + message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 33: { @@ -28931,7 +30019,7 @@ case 35: { if (!(message.trafficStatuses && message.trafficStatuses.length)) message.trafficStatuses = []; - message.trafficStatuses.push($root.google.cloud.run.v2.TrafficTargetStatus.decode(reader, reader.uint32())); + message.trafficStatuses.push($root.google.cloud.run.v2.TrafficTargetStatus.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 36: { @@ -28947,7 +30035,7 @@ break; } case 41: { - message.buildConfig = $root.google.cloud.run.v2.BuildConfig.decode(reader, reader.uint32()); + message.buildConfig = $root.google.cloud.run.v2.BuildConfig.decode(reader, reader.uint32(), undefined, long + 1); break; } case 98: { @@ -28959,7 +30047,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -28990,9 +30078,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Service.verify = function verify(message) { + Service.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -29022,22 +30114,22 @@ return "annotations: string{k:string} expected"; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -29079,12 +30171,12 @@ break; } if (message.binaryAuthorization != null && message.hasOwnProperty("binaryAuthorization")) { - var error = $root.google.cloud.run.v2.BinaryAuthorization.verify(message.binaryAuthorization); + var error = $root.google.cloud.run.v2.BinaryAuthorization.verify(message.binaryAuthorization, long + 1); if (error) return "binaryAuthorization." + error; } if (message.template != null && message.hasOwnProperty("template")) { - var error = $root.google.cloud.run.v2.RevisionTemplate.verify(message.template); + var error = $root.google.cloud.run.v2.RevisionTemplate.verify(message.template, long + 1); if (error) return "template." + error; } @@ -29092,13 +30184,13 @@ if (!Array.isArray(message.traffic)) return "traffic: array expected"; for (var i = 0; i < message.traffic.length; ++i) { - var error = $root.google.cloud.run.v2.TrafficTarget.verify(message.traffic[i]); + var error = $root.google.cloud.run.v2.TrafficTarget.verify(message.traffic[i], long + 1); if (error) return "traffic." + error; } } if (message.scaling != null && message.hasOwnProperty("scaling")) { - var error = $root.google.cloud.run.v2.ServiceScaling.verify(message.scaling); + var error = $root.google.cloud.run.v2.ServiceScaling.verify(message.scaling, long + 1); if (error) return "scaling." + error; } @@ -29119,7 +30211,7 @@ if (typeof message.iapEnabled !== "boolean") return "iapEnabled: boolean expected"; if (message.multiRegionSettings != null && message.hasOwnProperty("multiRegionSettings")) { - var error = $root.google.cloud.run.v2.Service.MultiRegionSettings.verify(message.multiRegionSettings); + var error = $root.google.cloud.run.v2.Service.MultiRegionSettings.verify(message.multiRegionSettings, long + 1); if (error) return "multiRegionSettings." + error; } @@ -29134,7 +30226,7 @@ if (!$util.isInteger(message.observedGeneration) && !(message.observedGeneration && $util.isInteger(message.observedGeneration.low) && $util.isInteger(message.observedGeneration.high))) return "observedGeneration: integer|Long expected"; if (message.terminalCondition != null && message.hasOwnProperty("terminalCondition")) { - var error = $root.google.cloud.run.v2.Condition.verify(message.terminalCondition); + var error = $root.google.cloud.run.v2.Condition.verify(message.terminalCondition, long + 1); if (error) return "terminalCondition." + error; } @@ -29142,7 +30234,7 @@ if (!Array.isArray(message.conditions)) return "conditions: array expected"; for (var i = 0; i < message.conditions.length; ++i) { - var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i]); + var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i], long + 1); if (error) return "conditions." + error; } @@ -29157,7 +30249,7 @@ if (!Array.isArray(message.trafficStatuses)) return "trafficStatuses: array expected"; for (var i = 0; i < message.trafficStatuses.length; ++i) { - var error = $root.google.cloud.run.v2.TrafficTargetStatus.verify(message.trafficStatuses[i]); + var error = $root.google.cloud.run.v2.TrafficTargetStatus.verify(message.trafficStatuses[i], long + 1); if (error) return "trafficStatuses." + error; } @@ -29172,7 +30264,7 @@ if (typeof message.threatDetectionEnabled !== "boolean") return "threatDetectionEnabled: boolean expected"; if (message.buildConfig != null && message.hasOwnProperty("buildConfig")) { - var error = $root.google.cloud.run.v2.BuildConfig.verify(message.buildConfig); + var error = $root.google.cloud.run.v2.BuildConfig.verify(message.buildConfig, long + 1); if (error) return "buildConfig." + error; } @@ -29193,9 +30285,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Service} Service */ - Service.fromObject = function fromObject(object) { + Service.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Service) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Service(); if (object.name != null) message.name = String(object.name); @@ -29216,35 +30312,41 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.Service.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.Service.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.run.v2.Service.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.run.v2.Service.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.run.v2.Service.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.run.v2.Service.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.creator != null) message.creator = String(object.creator); @@ -29325,12 +30427,12 @@ if (object.binaryAuthorization != null) { if (typeof object.binaryAuthorization !== "object") throw TypeError(".google.cloud.run.v2.Service.binaryAuthorization: object expected"); - message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.fromObject(object.binaryAuthorization); + message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.fromObject(object.binaryAuthorization, long + 1); } if (object.template != null) { if (typeof object.template !== "object") throw TypeError(".google.cloud.run.v2.Service.template: object expected"); - message.template = $root.google.cloud.run.v2.RevisionTemplate.fromObject(object.template); + message.template = $root.google.cloud.run.v2.RevisionTemplate.fromObject(object.template, long + 1); } if (object.traffic) { if (!Array.isArray(object.traffic)) @@ -29339,13 +30441,13 @@ for (var i = 0; i < object.traffic.length; ++i) { if (typeof object.traffic[i] !== "object") throw TypeError(".google.cloud.run.v2.Service.traffic: object expected"); - message.traffic[i] = $root.google.cloud.run.v2.TrafficTarget.fromObject(object.traffic[i]); + message.traffic[i] = $root.google.cloud.run.v2.TrafficTarget.fromObject(object.traffic[i], long + 1); } } if (object.scaling != null) { if (typeof object.scaling !== "object") throw TypeError(".google.cloud.run.v2.Service.scaling: object expected"); - message.scaling = $root.google.cloud.run.v2.ServiceScaling.fromObject(object.scaling); + message.scaling = $root.google.cloud.run.v2.ServiceScaling.fromObject(object.scaling, long + 1); } if (object.invokerIamDisabled != null) message.invokerIamDisabled = Boolean(object.invokerIamDisabled); @@ -29363,7 +30465,7 @@ if (object.multiRegionSettings != null) { if (typeof object.multiRegionSettings !== "object") throw TypeError(".google.cloud.run.v2.Service.multiRegionSettings: object expected"); - message.multiRegionSettings = $root.google.cloud.run.v2.Service.MultiRegionSettings.fromObject(object.multiRegionSettings); + message.multiRegionSettings = $root.google.cloud.run.v2.Service.MultiRegionSettings.fromObject(object.multiRegionSettings, long + 1); } if (object.customAudiences) { if (!Array.isArray(object.customAudiences)) @@ -29384,7 +30486,7 @@ if (object.terminalCondition != null) { if (typeof object.terminalCondition !== "object") throw TypeError(".google.cloud.run.v2.Service.terminalCondition: object expected"); - message.terminalCondition = $root.google.cloud.run.v2.Condition.fromObject(object.terminalCondition); + message.terminalCondition = $root.google.cloud.run.v2.Condition.fromObject(object.terminalCondition, long + 1); } if (object.conditions) { if (!Array.isArray(object.conditions)) @@ -29393,7 +30495,7 @@ for (var i = 0; i < object.conditions.length; ++i) { if (typeof object.conditions[i] !== "object") throw TypeError(".google.cloud.run.v2.Service.conditions: object expected"); - message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i]); + message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i], long + 1); } } if (object.latestReadyRevision != null) @@ -29407,7 +30509,7 @@ for (var i = 0; i < object.trafficStatuses.length; ++i) { if (typeof object.trafficStatuses[i] !== "object") throw TypeError(".google.cloud.run.v2.Service.trafficStatuses: object expected"); - message.trafficStatuses[i] = $root.google.cloud.run.v2.TrafficTargetStatus.fromObject(object.trafficStatuses[i]); + message.trafficStatuses[i] = $root.google.cloud.run.v2.TrafficTargetStatus.fromObject(object.trafficStatuses[i], long + 1); } } if (object.uri != null) @@ -29419,7 +30521,7 @@ if (object.buildConfig != null) { if (typeof object.buildConfig !== "object") throw TypeError(".google.cloud.run.v2.Service.buildConfig: object expected"); - message.buildConfig = $root.google.cloud.run.v2.BuildConfig.fromObject(object.buildConfig); + message.buildConfig = $root.google.cloud.run.v2.BuildConfig.fromObject(object.buildConfig, long + 1); } if (object.reconciling != null) message.reconciling = Boolean(object.reconciling); @@ -29507,13 +30609,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.createTime != null && message.hasOwnProperty("createTime")) object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); @@ -29648,7 +30756,7 @@ this.regions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29724,9 +30832,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MultiRegionSettings.decode = function decode(reader, length, error) { + MultiRegionSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Service.MultiRegionSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -29744,7 +30856,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -29775,9 +30887,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MultiRegionSettings.verify = function verify(message) { + MultiRegionSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.regions != null && message.hasOwnProperty("regions")) { if (!Array.isArray(message.regions)) return "regions: array expected"; @@ -29799,9 +30915,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Service.MultiRegionSettings} MultiRegionSettings */ - MultiRegionSettings.fromObject = function fromObject(object) { + MultiRegionSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Service.MultiRegionSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Service.MultiRegionSettings(); if (object.regions) { if (!Array.isArray(object.regions)) @@ -29897,7 +31017,7 @@ function TrafficTarget(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -29992,9 +31112,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TrafficTarget.decode = function decode(reader, length, error) { + TrafficTarget.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.TrafficTarget(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30018,7 +31142,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30049,9 +31173,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TrafficTarget.verify = function verify(message) { + TrafficTarget.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) switch (message.type) { default: @@ -30081,9 +31209,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.TrafficTarget} TrafficTarget */ - TrafficTarget.fromObject = function fromObject(object) { + TrafficTarget.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.TrafficTarget) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.TrafficTarget(); switch (object.type) { default: @@ -30197,7 +31329,7 @@ function TrafficTargetStatus(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30302,9 +31434,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TrafficTargetStatus.decode = function decode(reader, length, error) { + TrafficTargetStatus.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.TrafficTargetStatus(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30332,7 +31468,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30363,9 +31499,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TrafficTargetStatus.verify = function verify(message) { + TrafficTargetStatus.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) switch (message.type) { default: @@ -30398,9 +31538,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.TrafficTargetStatus} TrafficTargetStatus */ - TrafficTargetStatus.fromObject = function fromObject(object) { + TrafficTargetStatus.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.TrafficTargetStatus) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.TrafficTargetStatus(); switch (object.type) { default: @@ -30632,7 +31776,7 @@ function GetTaskRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30697,9 +31841,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetTaskRequest.decode = function decode(reader, length, error) { + GetTaskRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GetTaskRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30711,7 +31859,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30742,9 +31890,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetTaskRequest.verify = function verify(message) { + GetTaskRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -30759,9 +31911,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GetTaskRequest} GetTaskRequest */ - GetTaskRequest.fromObject = function fromObject(object) { + GetTaskRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GetTaskRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GetTaskRequest(); if (object.name != null) message.name = String(object.name); @@ -30840,7 +31996,7 @@ function ListTasksRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -30935,9 +32091,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTasksRequest.decode = function decode(reader, length, error) { + ListTasksRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListTasksRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -30961,7 +32121,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -30992,9 +32152,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTasksRequest.verify = function verify(message) { + ListTasksRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -31018,9 +32182,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListTasksRequest} ListTasksRequest */ - ListTasksRequest.fromObject = function fromObject(object) { + ListTasksRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListTasksRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListTasksRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -31114,7 +32282,7 @@ this.tasks = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31190,9 +32358,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListTasksResponse.decode = function decode(reader, length, error) { + ListTasksResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListTasksResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -31202,7 +32374,7 @@ case 1: { if (!(message.tasks && message.tasks.length)) message.tasks = []; - message.tasks.push($root.google.cloud.run.v2.Task.decode(reader, reader.uint32())); + message.tasks.push($root.google.cloud.run.v2.Task.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -31210,7 +32382,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -31241,14 +32413,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListTasksResponse.verify = function verify(message) { + ListTasksResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.tasks != null && message.hasOwnProperty("tasks")) { if (!Array.isArray(message.tasks)) return "tasks: array expected"; for (var i = 0; i < message.tasks.length; ++i) { - var error = $root.google.cloud.run.v2.Task.verify(message.tasks[i]); + var error = $root.google.cloud.run.v2.Task.verify(message.tasks[i], long + 1); if (error) return "tasks." + error; } @@ -31267,9 +32443,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListTasksResponse} ListTasksResponse */ - ListTasksResponse.fromObject = function fromObject(object) { + ListTasksResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListTasksResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListTasksResponse(); if (object.tasks) { if (!Array.isArray(object.tasks)) @@ -31278,7 +32458,7 @@ for (var i = 0; i < object.tasks.length; ++i) { if (typeof object.tasks[i] !== "object") throw TypeError(".google.cloud.run.v2.ListTasksResponse.tasks: object expected"); - message.tasks[i] = $root.google.cloud.run.v2.Task.fromObject(object.tasks[i]); + message.tasks[i] = $root.google.cloud.run.v2.Task.fromObject(object.tasks[i], long + 1); } } if (object.nextPageToken != null) @@ -31399,7 +32579,7 @@ this.conditions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -31798,9 +32978,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Task.decode = function decode(reader, length, error) { + Task.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.Task(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -31835,10 +33019,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -31858,39 +33044,41 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 6: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 34: { - message.scheduledTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.scheduledTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { - message.completionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.completionTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -31904,13 +33092,13 @@ case 14: { if (!(message.containers && message.containers.length)) message.containers = []; - message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32())); + message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 15: { if (!(message.volumes && message.volumes.length)) message.volumes = []; - message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32())); + message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 16: { @@ -31918,7 +33106,7 @@ break; } case 17: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { @@ -31936,7 +33124,7 @@ case 22: { if (!(message.conditions && message.conditions.length)) message.conditions = []; - message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32())); + message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 23: { @@ -31952,7 +33140,7 @@ break; } case 26: { - message.lastAttemptResult = $root.google.cloud.run.v2.TaskAttemptResult.decode(reader, reader.uint32()); + message.lastAttemptResult = $root.google.cloud.run.v2.TaskAttemptResult.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { @@ -31960,7 +33148,7 @@ break; } case 29: { - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32()); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32(), undefined, long + 1); break; } case 32: { @@ -31972,7 +33160,7 @@ break; } case 36: { - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32()); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32(), undefined, long + 1); break; } case 37: { @@ -31984,7 +33172,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32015,9 +33203,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Task.verify = function verify(message) { + Task.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) @@ -32045,37 +33237,37 @@ return "annotations: string{k:string} expected"; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.scheduledTime != null && message.hasOwnProperty("scheduledTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.scheduledTime); + var error = $root.google.protobuf.Timestamp.verify(message.scheduledTime, long + 1); if (error) return "scheduledTime." + error; } if (message.startTime != null && message.hasOwnProperty("startTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.startTime); + var error = $root.google.protobuf.Timestamp.verify(message.startTime, long + 1); if (error) return "startTime." + error; } if (message.completionTime != null && message.hasOwnProperty("completionTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.completionTime); + var error = $root.google.protobuf.Timestamp.verify(message.completionTime, long + 1); if (error) return "completionTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -32089,7 +33281,7 @@ if (!Array.isArray(message.containers)) return "containers: array expected"; for (var i = 0; i < message.containers.length; ++i) { - var error = $root.google.cloud.run.v2.Container.verify(message.containers[i]); + var error = $root.google.cloud.run.v2.Container.verify(message.containers[i], long + 1); if (error) return "containers." + error; } @@ -32098,7 +33290,7 @@ if (!Array.isArray(message.volumes)) return "volumes: array expected"; for (var i = 0; i < message.volumes.length; ++i) { - var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i]); + var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i], long + 1); if (error) return "volumes." + error; } @@ -32107,7 +33299,7 @@ if (!$util.isInteger(message.maxRetries)) return "maxRetries: integer expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -32130,7 +33322,7 @@ if (!Array.isArray(message.conditions)) return "conditions: array expected"; for (var i = 0; i < message.conditions.length; ++i) { - var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i]); + var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i], long + 1); if (error) return "conditions." + error; } @@ -32145,7 +33337,7 @@ if (!$util.isInteger(message.retried)) return "retried: integer expected"; if (message.lastAttemptResult != null && message.hasOwnProperty("lastAttemptResult")) { - var error = $root.google.cloud.run.v2.TaskAttemptResult.verify(message.lastAttemptResult); + var error = $root.google.cloud.run.v2.TaskAttemptResult.verify(message.lastAttemptResult, long + 1); if (error) return "lastAttemptResult." + error; } @@ -32153,7 +33345,7 @@ if (!$util.isString(message.encryptionKey)) return "encryptionKey: string expected"; if (message.vpcAccess != null && message.hasOwnProperty("vpcAccess")) { - var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess); + var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess, long + 1); if (error) return "vpcAccess." + error; } @@ -32164,7 +33356,7 @@ if (typeof message.satisfiesPzs !== "boolean") return "satisfiesPzs: boolean expected"; if (message.nodeSelector != null && message.hasOwnProperty("nodeSelector")) { - var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector); + var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector, long + 1); if (error) return "nodeSelector." + error; } @@ -32187,9 +33379,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.Task} Task */ - Task.fromObject = function fromObject(object) { + Task.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.Task) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.Task(); if (object.name != null) message.name = String(object.name); @@ -32208,50 +33404,56 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.Task.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.Task.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.run.v2.Task.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.scheduledTime != null) { if (typeof object.scheduledTime !== "object") throw TypeError(".google.cloud.run.v2.Task.scheduledTime: object expected"); - message.scheduledTime = $root.google.protobuf.Timestamp.fromObject(object.scheduledTime); + message.scheduledTime = $root.google.protobuf.Timestamp.fromObject(object.scheduledTime, long + 1); } if (object.startTime != null) { if (typeof object.startTime !== "object") throw TypeError(".google.cloud.run.v2.Task.startTime: object expected"); - message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime); + message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime, long + 1); } if (object.completionTime != null) { if (typeof object.completionTime !== "object") throw TypeError(".google.cloud.run.v2.Task.completionTime: object expected"); - message.completionTime = $root.google.protobuf.Timestamp.fromObject(object.completionTime); + message.completionTime = $root.google.protobuf.Timestamp.fromObject(object.completionTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.run.v2.Task.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.run.v2.Task.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.run.v2.Task.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.job != null) message.job = String(object.job); @@ -32264,7 +33466,7 @@ for (var i = 0; i < object.containers.length; ++i) { if (typeof object.containers[i] !== "object") throw TypeError(".google.cloud.run.v2.Task.containers: object expected"); - message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i]); + message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i], long + 1); } } if (object.volumes) { @@ -32274,7 +33476,7 @@ for (var i = 0; i < object.volumes.length; ++i) { if (typeof object.volumes[i] !== "object") throw TypeError(".google.cloud.run.v2.Task.volumes: object expected"); - message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i]); + message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i], long + 1); } } if (object.maxRetries != null) @@ -32282,7 +33484,7 @@ if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.cloud.run.v2.Task.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } if (object.serviceAccount != null) message.serviceAccount = String(object.serviceAccount); @@ -32315,7 +33517,7 @@ for (var i = 0; i < object.conditions.length; ++i) { if (typeof object.conditions[i] !== "object") throw TypeError(".google.cloud.run.v2.Task.conditions: object expected"); - message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i]); + message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i], long + 1); } } if (object.observedGeneration != null) @@ -32334,14 +33536,14 @@ if (object.lastAttemptResult != null) { if (typeof object.lastAttemptResult !== "object") throw TypeError(".google.cloud.run.v2.Task.lastAttemptResult: object expected"); - message.lastAttemptResult = $root.google.cloud.run.v2.TaskAttemptResult.fromObject(object.lastAttemptResult); + message.lastAttemptResult = $root.google.cloud.run.v2.TaskAttemptResult.fromObject(object.lastAttemptResult, long + 1); } if (object.encryptionKey != null) message.encryptionKey = String(object.encryptionKey); if (object.vpcAccess != null) { if (typeof object.vpcAccess !== "object") throw TypeError(".google.cloud.run.v2.Task.vpcAccess: object expected"); - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess, long + 1); } if (object.logUri != null) message.logUri = String(object.logUri); @@ -32350,7 +33552,7 @@ if (object.nodeSelector != null) { if (typeof object.nodeSelector !== "object") throw TypeError(".google.cloud.run.v2.Task.nodeSelector: object expected"); - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector, long + 1); } if (object.gpuZonalRedundancyDisabled != null) message.gpuZonalRedundancyDisabled = Boolean(object.gpuZonalRedundancyDisabled); @@ -32430,13 +33632,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.createTime != null && message.hasOwnProperty("createTime")) object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); @@ -32563,7 +33771,7 @@ function TaskAttemptResult(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -32648,9 +33856,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TaskAttemptResult.decode = function decode(reader, length, error) { + TaskAttemptResult.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.TaskAttemptResult(); while (reader.pos < end) { var tag = reader.uint32(); @@ -32658,7 +33870,7 @@ break; switch (tag >>> 3) { case 1: { - message.status = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.status = $root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -32670,7 +33882,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -32701,11 +33913,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TaskAttemptResult.verify = function verify(message) { + TaskAttemptResult.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.status != null && message.hasOwnProperty("status")) { - var error = $root.google.rpc.Status.verify(message.status); + var error = $root.google.rpc.Status.verify(message.status, long + 1); if (error) return "status." + error; } @@ -32726,14 +33942,18 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.TaskAttemptResult} TaskAttemptResult */ - TaskAttemptResult.fromObject = function fromObject(object) { + TaskAttemptResult.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.TaskAttemptResult) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.TaskAttemptResult(); if (object.status != null) { if (typeof object.status !== "object") throw TypeError(".google.cloud.run.v2.TaskAttemptResult.status: object expected"); - message.status = $root.google.rpc.Status.fromObject(object.status); + message.status = $root.google.rpc.Status.fromObject(object.status, long + 1); } if (object.exitCode != null) message.exitCode = object.exitCode | 0; @@ -33120,7 +34340,7 @@ function CreateWorkerPoolRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33215,9 +34435,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CreateWorkerPoolRequest.decode = function decode(reader, length, error) { + CreateWorkerPoolRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.CreateWorkerPoolRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33229,7 +34453,7 @@ break; } case 2: { - message.workerPool = $root.google.cloud.run.v2.WorkerPool.decode(reader, reader.uint32()); + message.workerPool = $root.google.cloud.run.v2.WorkerPool.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -33241,7 +34465,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33272,14 +34496,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CreateWorkerPoolRequest.verify = function verify(message) { + CreateWorkerPoolRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; if (message.workerPool != null && message.hasOwnProperty("workerPool")) { - var error = $root.google.cloud.run.v2.WorkerPool.verify(message.workerPool); + var error = $root.google.cloud.run.v2.WorkerPool.verify(message.workerPool, long + 1); if (error) return "workerPool." + error; } @@ -33300,16 +34528,20 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.CreateWorkerPoolRequest} CreateWorkerPoolRequest */ - CreateWorkerPoolRequest.fromObject = function fromObject(object) { + CreateWorkerPoolRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.CreateWorkerPoolRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.CreateWorkerPoolRequest(); if (object.parent != null) message.parent = String(object.parent); if (object.workerPool != null) { if (typeof object.workerPool !== "object") throw TypeError(".google.cloud.run.v2.CreateWorkerPoolRequest.workerPool: object expected"); - message.workerPool = $root.google.cloud.run.v2.WorkerPool.fromObject(object.workerPool); + message.workerPool = $root.google.cloud.run.v2.WorkerPool.fromObject(object.workerPool, long + 1); } if (object.workerPoolId != null) message.workerPoolId = String(object.workerPoolId); @@ -33401,7 +34633,7 @@ function UpdateWorkerPoolRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33506,9 +34738,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UpdateWorkerPoolRequest.decode = function decode(reader, length, error) { + UpdateWorkerPoolRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.UpdateWorkerPoolRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33516,11 +34752,11 @@ break; switch (tag >>> 3) { case 2: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1: { - message.workerPool = $root.google.cloud.run.v2.WorkerPool.decode(reader, reader.uint32()); + message.workerPool = $root.google.cloud.run.v2.WorkerPool.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -33536,7 +34772,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33567,16 +34803,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UpdateWorkerPoolRequest.verify = function verify(message) { + UpdateWorkerPoolRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } if (message.workerPool != null && message.hasOwnProperty("workerPool")) { - var error = $root.google.cloud.run.v2.WorkerPool.verify(message.workerPool); + var error = $root.google.cloud.run.v2.WorkerPool.verify(message.workerPool, long + 1); if (error) return "workerPool." + error; } @@ -33600,19 +34840,23 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.UpdateWorkerPoolRequest} UpdateWorkerPoolRequest */ - UpdateWorkerPoolRequest.fromObject = function fromObject(object) { + UpdateWorkerPoolRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.UpdateWorkerPoolRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.UpdateWorkerPoolRequest(); if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.cloud.run.v2.UpdateWorkerPoolRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } if (object.workerPool != null) { if (typeof object.workerPool !== "object") throw TypeError(".google.cloud.run.v2.UpdateWorkerPoolRequest.workerPool: object expected"); - message.workerPool = $root.google.cloud.run.v2.WorkerPool.fromObject(object.workerPool); + message.workerPool = $root.google.cloud.run.v2.WorkerPool.fromObject(object.workerPool, long + 1); } if (object.validateOnly != null) message.validateOnly = Boolean(object.validateOnly); @@ -33708,7 +34952,7 @@ function ListWorkerPoolsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -33803,9 +35047,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListWorkerPoolsRequest.decode = function decode(reader, length, error) { + ListWorkerPoolsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListWorkerPoolsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -33829,7 +35077,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -33860,9 +35108,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListWorkerPoolsRequest.verify = function verify(message) { + ListWorkerPoolsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.parent != null && message.hasOwnProperty("parent")) if (!$util.isString(message.parent)) return "parent: string expected"; @@ -33886,9 +35138,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListWorkerPoolsRequest} ListWorkerPoolsRequest */ - ListWorkerPoolsRequest.fromObject = function fromObject(object) { + ListWorkerPoolsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListWorkerPoolsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListWorkerPoolsRequest(); if (object.parent != null) message.parent = String(object.parent); @@ -33982,7 +35238,7 @@ this.workerPools = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34058,9 +35314,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListWorkerPoolsResponse.decode = function decode(reader, length, error) { + ListWorkerPoolsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.ListWorkerPoolsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34070,7 +35330,7 @@ case 1: { if (!(message.workerPools && message.workerPools.length)) message.workerPools = []; - message.workerPools.push($root.google.cloud.run.v2.WorkerPool.decode(reader, reader.uint32())); + message.workerPools.push($root.google.cloud.run.v2.WorkerPool.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -34078,7 +35338,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34109,14 +35369,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListWorkerPoolsResponse.verify = function verify(message) { + ListWorkerPoolsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.workerPools != null && message.hasOwnProperty("workerPools")) { if (!Array.isArray(message.workerPools)) return "workerPools: array expected"; for (var i = 0; i < message.workerPools.length; ++i) { - var error = $root.google.cloud.run.v2.WorkerPool.verify(message.workerPools[i]); + var error = $root.google.cloud.run.v2.WorkerPool.verify(message.workerPools[i], long + 1); if (error) return "workerPools." + error; } @@ -34135,9 +35399,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.ListWorkerPoolsResponse} ListWorkerPoolsResponse */ - ListWorkerPoolsResponse.fromObject = function fromObject(object) { + ListWorkerPoolsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.ListWorkerPoolsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.ListWorkerPoolsResponse(); if (object.workerPools) { if (!Array.isArray(object.workerPools)) @@ -34146,7 +35414,7 @@ for (var i = 0; i < object.workerPools.length; ++i) { if (typeof object.workerPools[i] !== "object") throw TypeError(".google.cloud.run.v2.ListWorkerPoolsResponse.workerPools: object expected"); - message.workerPools[i] = $root.google.cloud.run.v2.WorkerPool.fromObject(object.workerPools[i]); + message.workerPools[i] = $root.google.cloud.run.v2.WorkerPool.fromObject(object.workerPools[i], long + 1); } } if (object.nextPageToken != null) @@ -34230,7 +35498,7 @@ function GetWorkerPoolRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34295,9 +35563,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetWorkerPoolRequest.decode = function decode(reader, length, error) { + GetWorkerPoolRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.GetWorkerPoolRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34309,7 +35581,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34340,9 +35612,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetWorkerPoolRequest.verify = function verify(message) { + GetWorkerPoolRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -34357,9 +35633,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.GetWorkerPoolRequest} GetWorkerPoolRequest */ - GetWorkerPoolRequest.fromObject = function fromObject(object) { + GetWorkerPoolRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.GetWorkerPoolRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.GetWorkerPoolRequest(); if (object.name != null) message.name = String(object.name); @@ -34437,7 +35717,7 @@ function DeleteWorkerPoolRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -34522,9 +35802,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteWorkerPoolRequest.decode = function decode(reader, length, error) { + DeleteWorkerPoolRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.DeleteWorkerPoolRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -34544,7 +35828,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -34575,9 +35859,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteWorkerPoolRequest.verify = function verify(message) { + DeleteWorkerPoolRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -34598,9 +35886,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.DeleteWorkerPoolRequest} DeleteWorkerPoolRequest */ - DeleteWorkerPoolRequest.fromObject = function fromObject(object) { + DeleteWorkerPoolRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.DeleteWorkerPoolRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.DeleteWorkerPoolRequest(); if (object.name != null) message.name = String(object.name); @@ -34722,7 +36014,7 @@ this.customAudiences = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -35083,9 +36375,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WorkerPool.decode = function decode(reader, length, error) { + WorkerPool.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.WorkerPool(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -35124,10 +36420,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -35147,27 +36445,29 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 7: { - message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.createTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 8: { - message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.updateTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.deleteTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { - message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32()); + message.expireTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32(), undefined, long + 1); break; } case 11: { @@ -35191,21 +36491,21 @@ break; } case 17: { - message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.decode(reader, reader.uint32()); + message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.decode(reader, reader.uint32(), undefined, long + 1); break; } case 18: { - message.template = $root.google.cloud.run.v2.WorkerPoolRevisionTemplate.decode(reader, reader.uint32()); + message.template = $root.google.cloud.run.v2.WorkerPoolRevisionTemplate.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { if (!(message.instanceSplits && message.instanceSplits.length)) message.instanceSplits = []; - message.instanceSplits.push($root.google.cloud.run.v2.InstanceSplit.decode(reader, reader.uint32())); + message.instanceSplits.push($root.google.cloud.run.v2.InstanceSplit.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 20: { - message.scaling = $root.google.cloud.run.v2.WorkerPoolScaling.decode(reader, reader.uint32()); + message.scaling = $root.google.cloud.run.v2.WorkerPoolScaling.decode(reader, reader.uint32(), undefined, long + 1); break; } case 30: { @@ -35213,13 +36513,13 @@ break; } case 31: { - message.terminalCondition = $root.google.cloud.run.v2.Condition.decode(reader, reader.uint32()); + message.terminalCondition = $root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1); break; } case 32: { if (!(message.conditions && message.conditions.length)) message.conditions = []; - message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32())); + message.conditions.push($root.google.cloud.run.v2.Condition.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 33: { @@ -35233,7 +36533,7 @@ case 27: { if (!(message.instanceSplitStatuses && message.instanceSplitStatuses.length)) message.instanceSplitStatuses = []; - message.instanceSplitStatuses.push($root.google.cloud.run.v2.InstanceSplitStatus.decode(reader, reader.uint32())); + message.instanceSplitStatuses.push($root.google.cloud.run.v2.InstanceSplitStatus.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 28: { @@ -35259,7 +36559,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -35290,9 +36590,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WorkerPool.verify = function verify(message) { + WorkerPool.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -35322,22 +36626,22 @@ return "annotations: string{k:string} expected"; } if (message.createTime != null && message.hasOwnProperty("createTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.createTime); + var error = $root.google.protobuf.Timestamp.verify(message.createTime, long + 1); if (error) return "createTime." + error; } if (message.updateTime != null && message.hasOwnProperty("updateTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.updateTime); + var error = $root.google.protobuf.Timestamp.verify(message.updateTime, long + 1); if (error) return "updateTime." + error; } if (message.deleteTime != null && message.hasOwnProperty("deleteTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.deleteTime); + var error = $root.google.protobuf.Timestamp.verify(message.deleteTime, long + 1); if (error) return "deleteTime." + error; } if (message.expireTime != null && message.hasOwnProperty("expireTime")) { - var error = $root.google.protobuf.Timestamp.verify(message.expireTime); + var error = $root.google.protobuf.Timestamp.verify(message.expireTime, long + 1); if (error) return "expireTime." + error; } @@ -35368,12 +36672,12 @@ break; } if (message.binaryAuthorization != null && message.hasOwnProperty("binaryAuthorization")) { - var error = $root.google.cloud.run.v2.BinaryAuthorization.verify(message.binaryAuthorization); + var error = $root.google.cloud.run.v2.BinaryAuthorization.verify(message.binaryAuthorization, long + 1); if (error) return "binaryAuthorization." + error; } if (message.template != null && message.hasOwnProperty("template")) { - var error = $root.google.cloud.run.v2.WorkerPoolRevisionTemplate.verify(message.template); + var error = $root.google.cloud.run.v2.WorkerPoolRevisionTemplate.verify(message.template, long + 1); if (error) return "template." + error; } @@ -35381,13 +36685,13 @@ if (!Array.isArray(message.instanceSplits)) return "instanceSplits: array expected"; for (var i = 0; i < message.instanceSplits.length; ++i) { - var error = $root.google.cloud.run.v2.InstanceSplit.verify(message.instanceSplits[i]); + var error = $root.google.cloud.run.v2.InstanceSplit.verify(message.instanceSplits[i], long + 1); if (error) return "instanceSplits." + error; } } if (message.scaling != null && message.hasOwnProperty("scaling")) { - var error = $root.google.cloud.run.v2.WorkerPoolScaling.verify(message.scaling); + var error = $root.google.cloud.run.v2.WorkerPoolScaling.verify(message.scaling, long + 1); if (error) return "scaling." + error; } @@ -35395,7 +36699,7 @@ if (!$util.isInteger(message.observedGeneration) && !(message.observedGeneration && $util.isInteger(message.observedGeneration.low) && $util.isInteger(message.observedGeneration.high))) return "observedGeneration: integer|Long expected"; if (message.terminalCondition != null && message.hasOwnProperty("terminalCondition")) { - var error = $root.google.cloud.run.v2.Condition.verify(message.terminalCondition); + var error = $root.google.cloud.run.v2.Condition.verify(message.terminalCondition, long + 1); if (error) return "terminalCondition." + error; } @@ -35403,7 +36707,7 @@ if (!Array.isArray(message.conditions)) return "conditions: array expected"; for (var i = 0; i < message.conditions.length; ++i) { - var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i]); + var error = $root.google.cloud.run.v2.Condition.verify(message.conditions[i], long + 1); if (error) return "conditions." + error; } @@ -35418,7 +36722,7 @@ if (!Array.isArray(message.instanceSplitStatuses)) return "instanceSplitStatuses: array expected"; for (var i = 0; i < message.instanceSplitStatuses.length; ++i) { - var error = $root.google.cloud.run.v2.InstanceSplitStatus.verify(message.instanceSplitStatuses[i]); + var error = $root.google.cloud.run.v2.InstanceSplitStatus.verify(message.instanceSplitStatuses[i], long + 1); if (error) return "instanceSplitStatuses." + error; } @@ -35453,9 +36757,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.WorkerPool} WorkerPool */ - WorkerPool.fromObject = function fromObject(object) { + WorkerPool.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.WorkerPool) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.WorkerPool(); if (object.name != null) message.name = String(object.name); @@ -35476,35 +36784,41 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.createTime != null) { if (typeof object.createTime !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.createTime: object expected"); - message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime); + message.createTime = $root.google.protobuf.Timestamp.fromObject(object.createTime, long + 1); } if (object.updateTime != null) { if (typeof object.updateTime !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.updateTime: object expected"); - message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime); + message.updateTime = $root.google.protobuf.Timestamp.fromObject(object.updateTime, long + 1); } if (object.deleteTime != null) { if (typeof object.deleteTime !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.deleteTime: object expected"); - message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime); + message.deleteTime = $root.google.protobuf.Timestamp.fromObject(object.deleteTime, long + 1); } if (object.expireTime != null) { if (typeof object.expireTime !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.expireTime: object expected"); - message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime); + message.expireTime = $root.google.protobuf.Timestamp.fromObject(object.expireTime, long + 1); } if (object.creator != null) message.creator = String(object.creator); @@ -35557,12 +36871,12 @@ if (object.binaryAuthorization != null) { if (typeof object.binaryAuthorization !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.binaryAuthorization: object expected"); - message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.fromObject(object.binaryAuthorization); + message.binaryAuthorization = $root.google.cloud.run.v2.BinaryAuthorization.fromObject(object.binaryAuthorization, long + 1); } if (object.template != null) { if (typeof object.template !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.template: object expected"); - message.template = $root.google.cloud.run.v2.WorkerPoolRevisionTemplate.fromObject(object.template); + message.template = $root.google.cloud.run.v2.WorkerPoolRevisionTemplate.fromObject(object.template, long + 1); } if (object.instanceSplits) { if (!Array.isArray(object.instanceSplits)) @@ -35571,13 +36885,13 @@ for (var i = 0; i < object.instanceSplits.length; ++i) { if (typeof object.instanceSplits[i] !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.instanceSplits: object expected"); - message.instanceSplits[i] = $root.google.cloud.run.v2.InstanceSplit.fromObject(object.instanceSplits[i]); + message.instanceSplits[i] = $root.google.cloud.run.v2.InstanceSplit.fromObject(object.instanceSplits[i], long + 1); } } if (object.scaling != null) { if (typeof object.scaling !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.scaling: object expected"); - message.scaling = $root.google.cloud.run.v2.WorkerPoolScaling.fromObject(object.scaling); + message.scaling = $root.google.cloud.run.v2.WorkerPoolScaling.fromObject(object.scaling, long + 1); } if (object.observedGeneration != null) if ($util.Long) @@ -35591,7 +36905,7 @@ if (object.terminalCondition != null) { if (typeof object.terminalCondition !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.terminalCondition: object expected"); - message.terminalCondition = $root.google.cloud.run.v2.Condition.fromObject(object.terminalCondition); + message.terminalCondition = $root.google.cloud.run.v2.Condition.fromObject(object.terminalCondition, long + 1); } if (object.conditions) { if (!Array.isArray(object.conditions)) @@ -35600,7 +36914,7 @@ for (var i = 0; i < object.conditions.length; ++i) { if (typeof object.conditions[i] !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.conditions: object expected"); - message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i]); + message.conditions[i] = $root.google.cloud.run.v2.Condition.fromObject(object.conditions[i], long + 1); } } if (object.latestReadyRevision != null) @@ -35614,7 +36928,7 @@ for (var i = 0; i < object.instanceSplitStatuses.length; ++i) { if (typeof object.instanceSplitStatuses[i] !== "object") throw TypeError(".google.cloud.run.v2.WorkerPool.instanceSplitStatuses: object expected"); - message.instanceSplitStatuses[i] = $root.google.cloud.run.v2.InstanceSplitStatus.fromObject(object.instanceSplitStatuses[i]); + message.instanceSplitStatuses[i] = $root.google.cloud.run.v2.InstanceSplitStatus.fromObject(object.instanceSplitStatuses[i], long + 1); } } if (object.threatDetectionEnabled != null) @@ -35706,13 +37020,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.createTime != null && message.hasOwnProperty("createTime")) object.createTime = $root.google.protobuf.Timestamp.toObject(message.createTime, options); @@ -35845,7 +37165,7 @@ this.volumes = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36043,9 +37363,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WorkerPoolRevisionTemplate.decode = function decode(reader, length, error) { + WorkerPoolRevisionTemplate.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.cloud.run.v2.WorkerPoolRevisionTemplate(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -36072,10 +37396,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.labels, key); message.labels[key] = value; break; } @@ -36095,15 +37421,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.annotations, key); message.annotations[key] = value; break; } case 4: { - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32()); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -36113,13 +37441,13 @@ case 6: { if (!(message.containers && message.containers.length)) message.containers = []; - message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32())); + message.containers.push($root.google.cloud.run.v2.Container.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { if (!(message.volumes && message.volumes.length)) message.volumes = []; - message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32())); + message.volumes.push($root.google.cloud.run.v2.Volume.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { @@ -36127,7 +37455,7 @@ break; } case 9: { - message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.decode(reader, reader.uint32()); + message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.decode(reader, reader.uint32(), undefined, long + 1); break; } case 10: { @@ -36135,11 +37463,11 @@ break; } case 11: { - message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 13: { - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32()); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.decode(reader, reader.uint32(), undefined, long + 1); break; } case 16: { @@ -36147,7 +37475,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36178,9 +37506,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WorkerPoolRevisionTemplate.verify = function verify(message) { + WorkerPoolRevisionTemplate.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.revision != null && message.hasOwnProperty("revision")) if (!$util.isString(message.revision)) @@ -36202,7 +37534,7 @@ return "annotations: string{k:string} expected"; } if (message.vpcAccess != null && message.hasOwnProperty("vpcAccess")) { - var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess); + var error = $root.google.cloud.run.v2.VpcAccess.verify(message.vpcAccess, long + 1); if (error) return "vpcAccess." + error; } @@ -36213,7 +37545,7 @@ if (!Array.isArray(message.containers)) return "containers: array expected"; for (var i = 0; i < message.containers.length; ++i) { - var error = $root.google.cloud.run.v2.Container.verify(message.containers[i]); + var error = $root.google.cloud.run.v2.Container.verify(message.containers[i], long + 1); if (error) return "containers." + error; } @@ -36222,7 +37554,7 @@ if (!Array.isArray(message.volumes)) return "volumes: array expected"; for (var i = 0; i < message.volumes.length; ++i) { - var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i]); + var error = $root.google.cloud.run.v2.Volume.verify(message.volumes[i], long + 1); if (error) return "volumes." + error; } @@ -36231,7 +37563,7 @@ if (!$util.isString(message.encryptionKey)) return "encryptionKey: string expected"; if (message.serviceMesh != null && message.hasOwnProperty("serviceMesh")) { - var error = $root.google.cloud.run.v2.ServiceMesh.verify(message.serviceMesh); + var error = $root.google.cloud.run.v2.ServiceMesh.verify(message.serviceMesh, long + 1); if (error) return "serviceMesh." + error; } @@ -36245,12 +37577,12 @@ break; } if (message.encryptionKeyShutdownDuration != null && message.hasOwnProperty("encryptionKeyShutdownDuration")) { - var error = $root.google.protobuf.Duration.verify(message.encryptionKeyShutdownDuration); + var error = $root.google.protobuf.Duration.verify(message.encryptionKeyShutdownDuration, long + 1); if (error) return "encryptionKeyShutdownDuration." + error; } if (message.nodeSelector != null && message.hasOwnProperty("nodeSelector")) { - var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector); + var error = $root.google.cloud.run.v2.NodeSelector.verify(message.nodeSelector, long + 1); if (error) return "nodeSelector." + error; } @@ -36270,9 +37602,13 @@ * @param {Object.} object Plain object * @returns {google.cloud.run.v2.WorkerPoolRevisionTemplate} WorkerPoolRevisionTemplate */ - WorkerPoolRevisionTemplate.fromObject = function fromObject(object) { + WorkerPoolRevisionTemplate.fromObject = function fromObject(object, long) { if (object instanceof $root.google.cloud.run.v2.WorkerPoolRevisionTemplate) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.cloud.run.v2.WorkerPoolRevisionTemplate(); if (object.revision != null) message.revision = String(object.revision); @@ -36280,20 +37616,26 @@ if (typeof object.labels !== "object") throw TypeError(".google.cloud.run.v2.WorkerPoolRevisionTemplate.labels: object expected"); message.labels = {}; - for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.labels, keys[i]); message.labels[keys[i]] = String(object.labels[keys[i]]); + } } if (object.annotations) { if (typeof object.annotations !== "object") throw TypeError(".google.cloud.run.v2.WorkerPoolRevisionTemplate.annotations: object expected"); message.annotations = {}; - for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.annotations), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.annotations, keys[i]); message.annotations[keys[i]] = String(object.annotations[keys[i]]); + } } if (object.vpcAccess != null) { if (typeof object.vpcAccess !== "object") throw TypeError(".google.cloud.run.v2.WorkerPoolRevisionTemplate.vpcAccess: object expected"); - message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess); + message.vpcAccess = $root.google.cloud.run.v2.VpcAccess.fromObject(object.vpcAccess, long + 1); } if (object.serviceAccount != null) message.serviceAccount = String(object.serviceAccount); @@ -36304,7 +37646,7 @@ for (var i = 0; i < object.containers.length; ++i) { if (typeof object.containers[i] !== "object") throw TypeError(".google.cloud.run.v2.WorkerPoolRevisionTemplate.containers: object expected"); - message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i]); + message.containers[i] = $root.google.cloud.run.v2.Container.fromObject(object.containers[i], long + 1); } } if (object.volumes) { @@ -36314,7 +37656,7 @@ for (var i = 0; i < object.volumes.length; ++i) { if (typeof object.volumes[i] !== "object") throw TypeError(".google.cloud.run.v2.WorkerPoolRevisionTemplate.volumes: object expected"); - message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i]); + message.volumes[i] = $root.google.cloud.run.v2.Volume.fromObject(object.volumes[i], long + 1); } } if (object.encryptionKey != null) @@ -36322,7 +37664,7 @@ if (object.serviceMesh != null) { if (typeof object.serviceMesh !== "object") throw TypeError(".google.cloud.run.v2.WorkerPoolRevisionTemplate.serviceMesh: object expected"); - message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.fromObject(object.serviceMesh); + message.serviceMesh = $root.google.cloud.run.v2.ServiceMesh.fromObject(object.serviceMesh, long + 1); } switch (object.encryptionKeyRevocationAction) { default: @@ -36347,12 +37689,12 @@ if (object.encryptionKeyShutdownDuration != null) { if (typeof object.encryptionKeyShutdownDuration !== "object") throw TypeError(".google.cloud.run.v2.WorkerPoolRevisionTemplate.encryptionKeyShutdownDuration: object expected"); - message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.fromObject(object.encryptionKeyShutdownDuration); + message.encryptionKeyShutdownDuration = $root.google.protobuf.Duration.fromObject(object.encryptionKeyShutdownDuration, long + 1); } if (object.nodeSelector != null) { if (typeof object.nodeSelector !== "object") throw TypeError(".google.cloud.run.v2.WorkerPoolRevisionTemplate.nodeSelector: object expected"); - message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector); + message.nodeSelector = $root.google.cloud.run.v2.NodeSelector.fromObject(object.nodeSelector, long + 1); } if (object.gpuZonalRedundancyDisabled != null) message.gpuZonalRedundancyDisabled = Boolean(object.gpuZonalRedundancyDisabled); @@ -36395,13 +37737,19 @@ var keys2; if (message.labels && (keys2 = Object.keys(message.labels)).length) { object.labels = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.labels, keys2[j]); object.labels[keys2[j]] = message.labels[keys2[j]]; + } } if (message.annotations && (keys2 = Object.keys(message.annotations)).length) { object.annotations = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.annotations, keys2[j]); object.annotations[keys2[j]] = message.annotations[keys2[j]]; + } } if (message.vpcAccess != null && message.hasOwnProperty("vpcAccess")) object.vpcAccess = $root.google.cloud.run.v2.VpcAccess.toObject(message.vpcAccess, options); @@ -36504,7 +37852,7 @@ this.rules = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36580,9 +37928,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Http.decode = function decode(reader, length, error) { + Http.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36592,7 +37944,7 @@ case 1: { if (!(message.rules && message.rules.length)) message.rules = []; - message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -36600,7 +37952,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -36631,14 +37983,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Http.verify = function verify(message) { + Http.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.rules != null && message.hasOwnProperty("rules")) { if (!Array.isArray(message.rules)) return "rules: array expected"; for (var i = 0; i < message.rules.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.rules[i]); + var error = $root.google.api.HttpRule.verify(message.rules[i], long + 1); if (error) return "rules." + error; } @@ -36657,9 +38013,13 @@ * @param {Object.} object Plain object * @returns {google.api.Http} Http */ - Http.fromObject = function fromObject(object) { + Http.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Http) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Http(); if (object.rules) { if (!Array.isArray(object.rules)) @@ -36668,7 +38028,7 @@ for (var i = 0; i < object.rules.length; ++i) { if (typeof object.rules[i] !== "object") throw TypeError(".google.api.Http.rules: object expected"); - message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]); + message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i], long + 1); } } if (object.fullyDecodeReservedExpansion != null) @@ -36762,7 +38122,7 @@ this.additionalBindings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -36932,9 +38292,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - HttpRule.decode = function decode(reader, length, error) { + HttpRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -36966,7 +38330,7 @@ break; } case 8: { - message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32()); + message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32(), undefined, long + 1); break; } case 7: { @@ -36980,11 +38344,11 @@ case 11: { if (!(message.additionalBindings && message.additionalBindings.length)) message.additionalBindings = []; - message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32())); + message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37015,9 +38379,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - HttpRule.verify = function verify(message) { + HttpRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) @@ -37060,7 +38428,7 @@ return "pattern: multiple values"; properties.pattern = 1; { - var error = $root.google.api.CustomHttpPattern.verify(message.custom); + var error = $root.google.api.CustomHttpPattern.verify(message.custom, long + 1); if (error) return "custom." + error; } @@ -37075,7 +38443,7 @@ if (!Array.isArray(message.additionalBindings)) return "additionalBindings: array expected"; for (var i = 0; i < message.additionalBindings.length; ++i) { - var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]); + var error = $root.google.api.HttpRule.verify(message.additionalBindings[i], long + 1); if (error) return "additionalBindings." + error; } @@ -37091,9 +38459,13 @@ * @param {Object.} object Plain object * @returns {google.api.HttpRule} HttpRule */ - HttpRule.fromObject = function fromObject(object) { + HttpRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.HttpRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.HttpRule(); if (object.selector != null) message.selector = String(object.selector); @@ -37110,7 +38482,7 @@ if (object.custom != null) { if (typeof object.custom !== "object") throw TypeError(".google.api.HttpRule.custom: object expected"); - message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom); + message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom, long + 1); } if (object.body != null) message.body = String(object.body); @@ -37123,7 +38495,7 @@ for (var i = 0; i < object.additionalBindings.length; ++i) { if (typeof object.additionalBindings[i] !== "object") throw TypeError(".google.api.HttpRule.additionalBindings: object expected"); - message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]); + message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i], long + 1); } } return message; @@ -37243,7 +38615,7 @@ function CustomHttpPattern(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37318,9 +38690,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CustomHttpPattern.decode = function decode(reader, length, error) { + CustomHttpPattern.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37336,7 +38712,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37367,9 +38743,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CustomHttpPattern.verify = function verify(message) { + CustomHttpPattern.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.kind != null && message.hasOwnProperty("kind")) if (!$util.isString(message.kind)) return "kind: string expected"; @@ -37387,9 +38767,13 @@ * @param {Object.} object Plain object * @returns {google.api.CustomHttpPattern} CustomHttpPattern */ - CustomHttpPattern.fromObject = function fromObject(object) { + CustomHttpPattern.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CustomHttpPattern) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CustomHttpPattern(); if (object.kind != null) message.kind = String(object.kind); @@ -37474,7 +38858,7 @@ this.destinations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37563,9 +38947,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CommonLanguageSettings.decode = function decode(reader, length, error) { + CommonLanguageSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CommonLanguageSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37588,11 +38976,11 @@ break; } case 3: { - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32()); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -37623,9 +39011,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CommonLanguageSettings.verify = function verify(message) { + CommonLanguageSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.referenceDocsUri != null && message.hasOwnProperty("referenceDocsUri")) if (!$util.isString(message.referenceDocsUri)) return "referenceDocsUri: string expected"; @@ -37643,7 +39035,7 @@ } } if (message.selectiveGapicGeneration != null && message.hasOwnProperty("selectiveGapicGeneration")) { - var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration); + var error = $root.google.api.SelectiveGapicGeneration.verify(message.selectiveGapicGeneration, long + 1); if (error) return "selectiveGapicGeneration." + error; } @@ -37658,9 +39050,13 @@ * @param {Object.} object Plain object * @returns {google.api.CommonLanguageSettings} CommonLanguageSettings */ - CommonLanguageSettings.fromObject = function fromObject(object) { + CommonLanguageSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CommonLanguageSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CommonLanguageSettings(); if (object.referenceDocsUri != null) message.referenceDocsUri = String(object.referenceDocsUri); @@ -37692,7 +39088,7 @@ if (object.selectiveGapicGeneration != null) { if (typeof object.selectiveGapicGeneration !== "object") throw TypeError(".google.api.CommonLanguageSettings.selectiveGapicGeneration: object expected"); - message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration); + message.selectiveGapicGeneration = $root.google.api.SelectiveGapicGeneration.fromObject(object.selectiveGapicGeneration, long + 1); } return message; }; @@ -37787,7 +39183,7 @@ function ClientLibrarySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -37952,9 +39348,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ClientLibrarySettings.decode = function decode(reader, length, error) { + ClientLibrarySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ClientLibrarySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -37974,39 +39374,39 @@ break; } case 21: { - message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32()); + message.javaSettings = $root.google.api.JavaSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32()); + message.cppSettings = $root.google.api.CppSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 23: { - message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32()); + message.phpSettings = $root.google.api.PhpSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 24: { - message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32()); + message.pythonSettings = $root.google.api.PythonSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 25: { - message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32()); + message.nodeSettings = $root.google.api.NodeSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 26: { - message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32()); + message.dotnetSettings = $root.google.api.DotnetSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 27: { - message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32()); + message.rubySettings = $root.google.api.RubySettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 28: { - message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32()); + message.goSettings = $root.google.api.GoSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38037,9 +39437,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ClientLibrarySettings.verify = function verify(message) { + ClientLibrarySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isString(message.version)) return "version: string expected"; @@ -38061,42 +39465,42 @@ if (typeof message.restNumericEnums !== "boolean") return "restNumericEnums: boolean expected"; if (message.javaSettings != null && message.hasOwnProperty("javaSettings")) { - var error = $root.google.api.JavaSettings.verify(message.javaSettings); + var error = $root.google.api.JavaSettings.verify(message.javaSettings, long + 1); if (error) return "javaSettings." + error; } if (message.cppSettings != null && message.hasOwnProperty("cppSettings")) { - var error = $root.google.api.CppSettings.verify(message.cppSettings); + var error = $root.google.api.CppSettings.verify(message.cppSettings, long + 1); if (error) return "cppSettings." + error; } if (message.phpSettings != null && message.hasOwnProperty("phpSettings")) { - var error = $root.google.api.PhpSettings.verify(message.phpSettings); + var error = $root.google.api.PhpSettings.verify(message.phpSettings, long + 1); if (error) return "phpSettings." + error; } if (message.pythonSettings != null && message.hasOwnProperty("pythonSettings")) { - var error = $root.google.api.PythonSettings.verify(message.pythonSettings); + var error = $root.google.api.PythonSettings.verify(message.pythonSettings, long + 1); if (error) return "pythonSettings." + error; } if (message.nodeSettings != null && message.hasOwnProperty("nodeSettings")) { - var error = $root.google.api.NodeSettings.verify(message.nodeSettings); + var error = $root.google.api.NodeSettings.verify(message.nodeSettings, long + 1); if (error) return "nodeSettings." + error; } if (message.dotnetSettings != null && message.hasOwnProperty("dotnetSettings")) { - var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings); + var error = $root.google.api.DotnetSettings.verify(message.dotnetSettings, long + 1); if (error) return "dotnetSettings." + error; } if (message.rubySettings != null && message.hasOwnProperty("rubySettings")) { - var error = $root.google.api.RubySettings.verify(message.rubySettings); + var error = $root.google.api.RubySettings.verify(message.rubySettings, long + 1); if (error) return "rubySettings." + error; } if (message.goSettings != null && message.hasOwnProperty("goSettings")) { - var error = $root.google.api.GoSettings.verify(message.goSettings); + var error = $root.google.api.GoSettings.verify(message.goSettings, long + 1); if (error) return "goSettings." + error; } @@ -38111,9 +39515,13 @@ * @param {Object.} object Plain object * @returns {google.api.ClientLibrarySettings} ClientLibrarySettings */ - ClientLibrarySettings.fromObject = function fromObject(object) { + ClientLibrarySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ClientLibrarySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ClientLibrarySettings(); if (object.version != null) message.version = String(object.version); @@ -38162,42 +39570,42 @@ if (object.javaSettings != null) { if (typeof object.javaSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.javaSettings: object expected"); - message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings); + message.javaSettings = $root.google.api.JavaSettings.fromObject(object.javaSettings, long + 1); } if (object.cppSettings != null) { if (typeof object.cppSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.cppSettings: object expected"); - message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings); + message.cppSettings = $root.google.api.CppSettings.fromObject(object.cppSettings, long + 1); } if (object.phpSettings != null) { if (typeof object.phpSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.phpSettings: object expected"); - message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings); + message.phpSettings = $root.google.api.PhpSettings.fromObject(object.phpSettings, long + 1); } if (object.pythonSettings != null) { if (typeof object.pythonSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.pythonSettings: object expected"); - message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings); + message.pythonSettings = $root.google.api.PythonSettings.fromObject(object.pythonSettings, long + 1); } if (object.nodeSettings != null) { if (typeof object.nodeSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.nodeSettings: object expected"); - message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings); + message.nodeSettings = $root.google.api.NodeSettings.fromObject(object.nodeSettings, long + 1); } if (object.dotnetSettings != null) { if (typeof object.dotnetSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.dotnetSettings: object expected"); - message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings); + message.dotnetSettings = $root.google.api.DotnetSettings.fromObject(object.dotnetSettings, long + 1); } if (object.rubySettings != null) { if (typeof object.rubySettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.rubySettings: object expected"); - message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings); + message.rubySettings = $root.google.api.RubySettings.fromObject(object.rubySettings, long + 1); } if (object.goSettings != null) { if (typeof object.goSettings !== "object") throw TypeError(".google.api.ClientLibrarySettings.goSettings: object expected"); - message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings); + message.goSettings = $root.google.api.GoSettings.fromObject(object.goSettings, long + 1); } return message; }; @@ -38315,7 +39723,7 @@ this.librarySettings = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38483,9 +39891,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Publishing.decode = function decode(reader, length, error) { + Publishing.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Publishing(); while (reader.pos < end) { var tag = reader.uint32(); @@ -38495,7 +39907,7 @@ case 2: { if (!(message.methodSettings && message.methodSettings.length)) message.methodSettings = []; - message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32())); + message.methodSettings.push($root.google.api.MethodSettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 101: { @@ -38531,7 +39943,7 @@ case 109: { if (!(message.librarySettings && message.librarySettings.length)) message.librarySettings = []; - message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32())); + message.librarySettings.push($root.google.api.ClientLibrarySettings.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 110: { @@ -38543,7 +39955,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -38574,14 +39986,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Publishing.verify = function verify(message) { + Publishing.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methodSettings != null && message.hasOwnProperty("methodSettings")) { if (!Array.isArray(message.methodSettings)) return "methodSettings: array expected"; for (var i = 0; i < message.methodSettings.length; ++i) { - var error = $root.google.api.MethodSettings.verify(message.methodSettings[i]); + var error = $root.google.api.MethodSettings.verify(message.methodSettings[i], long + 1); if (error) return "methodSettings." + error; } @@ -38626,7 +40042,7 @@ if (!Array.isArray(message.librarySettings)) return "librarySettings: array expected"; for (var i = 0; i < message.librarySettings.length; ++i) { - var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i]); + var error = $root.google.api.ClientLibrarySettings.verify(message.librarySettings[i], long + 1); if (error) return "librarySettings." + error; } @@ -38648,9 +40064,13 @@ * @param {Object.} object Plain object * @returns {google.api.Publishing} Publishing */ - Publishing.fromObject = function fromObject(object) { + Publishing.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.Publishing) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.Publishing(); if (object.methodSettings) { if (!Array.isArray(object.methodSettings)) @@ -38659,7 +40079,7 @@ for (var i = 0; i < object.methodSettings.length; ++i) { if (typeof object.methodSettings[i] !== "object") throw TypeError(".google.api.Publishing.methodSettings: object expected"); - message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i]); + message.methodSettings[i] = $root.google.api.MethodSettings.fromObject(object.methodSettings[i], long + 1); } } if (object.newIssueUri != null) @@ -38726,7 +40146,7 @@ for (var i = 0; i < object.librarySettings.length; ++i) { if (typeof object.librarySettings[i] !== "object") throw TypeError(".google.api.Publishing.librarySettings: object expected"); - message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i]); + message.librarySettings[i] = $root.google.api.ClientLibrarySettings.fromObject(object.librarySettings[i], long + 1); } } if (object.protoReferenceDocumentationUri != null) @@ -38850,7 +40270,7 @@ this.serviceClassNames = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -38936,9 +40356,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - JavaSettings.decode = function decode(reader, length, error) { + JavaSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.JavaSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -38965,19 +40389,21 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.serviceClassNames, key); message.serviceClassNames[key] = value; break; } case 3: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39008,9 +40434,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - JavaSettings.verify = function verify(message) { + JavaSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.libraryPackage != null && message.hasOwnProperty("libraryPackage")) if (!$util.isString(message.libraryPackage)) return "libraryPackage: string expected"; @@ -39023,7 +40453,7 @@ return "serviceClassNames: string{k:string} expected"; } if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -39038,9 +40468,13 @@ * @param {Object.} object Plain object * @returns {google.api.JavaSettings} JavaSettings */ - JavaSettings.fromObject = function fromObject(object) { + JavaSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.JavaSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.JavaSettings(); if (object.libraryPackage != null) message.libraryPackage = String(object.libraryPackage); @@ -39048,13 +40482,16 @@ if (typeof object.serviceClassNames !== "object") throw TypeError(".google.api.JavaSettings.serviceClassNames: object expected"); message.serviceClassNames = {}; - for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.serviceClassNames), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.serviceClassNames, keys[i]); message.serviceClassNames[keys[i]] = String(object.serviceClassNames[keys[i]]); + } } if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.JavaSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -39083,8 +40520,11 @@ var keys2; if (message.serviceClassNames && (keys2 = Object.keys(message.serviceClassNames)).length) { object.serviceClassNames = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.serviceClassNames, keys2[j]); object.serviceClassNames[keys2[j]] = message.serviceClassNames[keys2[j]]; + } } if (message.common != null && message.hasOwnProperty("common")) object.common = $root.google.api.CommonLanguageSettings.toObject(message.common, options); @@ -39140,7 +40580,7 @@ function CppSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39205,9 +40645,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CppSettings.decode = function decode(reader, length, error) { + CppSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CppSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39215,11 +40659,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39250,11 +40694,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CppSettings.verify = function verify(message) { + CppSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -39269,14 +40717,18 @@ * @param {Object.} object Plain object * @returns {google.api.CppSettings} CppSettings */ - CppSettings.fromObject = function fromObject(object) { + CppSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.CppSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.CppSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.CppSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -39350,7 +40802,7 @@ function PhpSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39415,9 +40867,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PhpSettings.decode = function decode(reader, length, error) { + PhpSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PhpSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39425,11 +40881,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39460,11 +40916,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PhpSettings.verify = function verify(message) { + PhpSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -39479,14 +40939,18 @@ * @param {Object.} object Plain object * @returns {google.api.PhpSettings} PhpSettings */ - PhpSettings.fromObject = function fromObject(object) { + PhpSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PhpSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PhpSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PhpSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -39561,7 +41025,7 @@ function PythonSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39636,9 +41100,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PythonSettings.decode = function decode(reader, length, error) { + PythonSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39646,15 +41114,15 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32()); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39685,16 +41153,20 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PythonSettings.verify = function verify(message) { + PythonSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } if (message.experimentalFeatures != null && message.hasOwnProperty("experimentalFeatures")) { - var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures); + var error = $root.google.api.PythonSettings.ExperimentalFeatures.verify(message.experimentalFeatures, long + 1); if (error) return "experimentalFeatures." + error; } @@ -39709,19 +41181,23 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings} PythonSettings */ - PythonSettings.fromObject = function fromObject(object) { + PythonSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.PythonSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.experimentalFeatures != null) { if (typeof object.experimentalFeatures !== "object") throw TypeError(".google.api.PythonSettings.experimentalFeatures: object expected"); - message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures); + message.experimentalFeatures = $root.google.api.PythonSettings.ExperimentalFeatures.fromObject(object.experimentalFeatures, long + 1); } return message; }; @@ -39798,7 +41274,7 @@ function ExperimentalFeatures(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -39883,9 +41359,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExperimentalFeatures.decode = function decode(reader, length, error) { + ExperimentalFeatures.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.PythonSettings.ExperimentalFeatures(); while (reader.pos < end) { var tag = reader.uint32(); @@ -39905,7 +41385,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -39936,9 +41416,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExperimentalFeatures.verify = function verify(message) { + ExperimentalFeatures.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.restAsyncIoEnabled != null && message.hasOwnProperty("restAsyncIoEnabled")) if (typeof message.restAsyncIoEnabled !== "boolean") return "restAsyncIoEnabled: boolean expected"; @@ -39959,9 +41443,13 @@ * @param {Object.} object Plain object * @returns {google.api.PythonSettings.ExperimentalFeatures} ExperimentalFeatures */ - ExperimentalFeatures.fromObject = function fromObject(object) { + ExperimentalFeatures.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.PythonSettings.ExperimentalFeatures) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.PythonSettings.ExperimentalFeatures(); if (object.restAsyncIoEnabled != null) message.restAsyncIoEnabled = Boolean(object.restAsyncIoEnabled); @@ -40051,7 +41539,7 @@ function NodeSettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40116,9 +41604,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NodeSettings.decode = function decode(reader, length, error) { + NodeSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.NodeSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40126,11 +41618,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40161,11 +41653,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NodeSettings.verify = function verify(message) { + NodeSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -40180,14 +41676,18 @@ * @param {Object.} object Plain object * @returns {google.api.NodeSettings} NodeSettings */ - NodeSettings.fromObject = function fromObject(object) { + NodeSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.NodeSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.NodeSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.NodeSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -40271,7 +41771,7 @@ this.handwrittenSignatures = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40391,9 +41891,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DotnetSettings.decode = function decode(reader, length, error) { + DotnetSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.DotnetSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -40401,7 +41905,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -40420,10 +41924,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } @@ -40443,10 +41949,12 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedResources, key); message.renamedResources[key] = value; break; } @@ -40469,7 +41977,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40500,11 +42008,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DotnetSettings.verify = function verify(message) { + DotnetSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -40556,28 +42068,38 @@ * @param {Object.} object Plain object * @returns {google.api.DotnetSettings} DotnetSettings */ - DotnetSettings.fromObject = function fromObject(object) { + DotnetSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.DotnetSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.DotnetSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.DotnetSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.DotnetSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } if (object.renamedResources) { if (typeof object.renamedResources !== "object") throw TypeError(".google.api.DotnetSettings.renamedResources: object expected"); message.renamedResources = {}; - for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedResources), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedResources, keys[i]); message.renamedResources[keys[i]] = String(object.renamedResources[keys[i]]); + } } if (object.ignoredResources) { if (!Array.isArray(object.ignoredResources)) @@ -40632,13 +42154,19 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } if (message.renamedResources && (keys2 = Object.keys(message.renamedResources)).length) { object.renamedResources = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedResources, keys2[j]); object.renamedResources[keys2[j]] = message.renamedResources[keys2[j]]; + } } if (message.ignoredResources && message.ignoredResources.length) { object.ignoredResources = []; @@ -40707,7 +42235,7 @@ function RubySettings(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40772,9 +42300,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RubySettings.decode = function decode(reader, length, error) { + RubySettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RubySettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -40782,11 +42314,11 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -40817,11 +42349,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RubySettings.verify = function verify(message) { + RubySettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -40836,14 +42372,18 @@ * @param {Object.} object Plain object * @returns {google.api.RubySettings} RubySettings */ - RubySettings.fromObject = function fromObject(object) { + RubySettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RubySettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RubySettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.RubySettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } return message; }; @@ -40919,7 +42459,7 @@ this.renamedServices = {}; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -40995,9 +42535,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GoSettings.decode = function decode(reader, length, error) { + GoSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.GoSettings(), key, value; while (reader.pos < end) { var tag = reader.uint32(); @@ -41005,7 +42549,7 @@ break; switch (tag >>> 3) { case 1: { - message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32()); + message.common = $root.google.api.CommonLanguageSettings.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -41024,15 +42568,17 @@ value = reader.string(); break; default: - reader.skipType(tag2 & 7); + reader.skipType(tag2 & 7, long); break; } } + if (key === "__proto__") + $util.makeProp(message.renamedServices, key); message.renamedServices[key] = value; break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41063,11 +42609,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GoSettings.verify = function verify(message) { + GoSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.common != null && message.hasOwnProperty("common")) { - var error = $root.google.api.CommonLanguageSettings.verify(message.common); + var error = $root.google.api.CommonLanguageSettings.verify(message.common, long + 1); if (error) return "common." + error; } @@ -41090,21 +42640,28 @@ * @param {Object.} object Plain object * @returns {google.api.GoSettings} GoSettings */ - GoSettings.fromObject = function fromObject(object) { + GoSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.GoSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.GoSettings(); if (object.common != null) { if (typeof object.common !== "object") throw TypeError(".google.api.GoSettings.common: object expected"); - message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common); + message.common = $root.google.api.CommonLanguageSettings.fromObject(object.common, long + 1); } if (object.renamedServices) { if (typeof object.renamedServices !== "object") throw TypeError(".google.api.GoSettings.renamedServices: object expected"); message.renamedServices = {}; - for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) + for (var keys = Object.keys(object.renamedServices), i = 0; i < keys.length; ++i) { + if (keys[i] === "__proto__") + $util.makeProp(message.renamedServices, keys[i]); message.renamedServices[keys[i]] = String(object.renamedServices[keys[i]]); + } } return message; }; @@ -41131,8 +42688,11 @@ var keys2; if (message.renamedServices && (keys2 = Object.keys(message.renamedServices)).length) { object.renamedServices = {}; - for (var j = 0; j < keys2.length; ++j) + for (var j = 0; j < keys2.length; ++j) { + if (keys2[j] === "__proto__") + $util.makeProp(object.renamedServices, keys2[j]); object.renamedServices[keys2[j]] = message.renamedServices[keys2[j]]; + } } return object; }; @@ -41189,7 +42749,7 @@ this.autoPopulatedFields = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41275,9 +42835,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodSettings.decode = function decode(reader, length, error) { + MethodSettings.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41289,7 +42853,7 @@ break; } case 2: { - message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32()); + message.longRunning = $root.google.api.MethodSettings.LongRunning.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -41299,7 +42863,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41330,14 +42894,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodSettings.verify = function verify(message) { + MethodSettings.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.selector != null && message.hasOwnProperty("selector")) if (!$util.isString(message.selector)) return "selector: string expected"; if (message.longRunning != null && message.hasOwnProperty("longRunning")) { - var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning); + var error = $root.google.api.MethodSettings.LongRunning.verify(message.longRunning, long + 1); if (error) return "longRunning." + error; } @@ -41359,16 +42927,20 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings} MethodSettings */ - MethodSettings.fromObject = function fromObject(object) { + MethodSettings.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings(); if (object.selector != null) message.selector = String(object.selector); if (object.longRunning != null) { if (typeof object.longRunning !== "object") throw TypeError(".google.api.MethodSettings.longRunning: object expected"); - message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning); + message.longRunning = $root.google.api.MethodSettings.LongRunning.fromObject(object.longRunning, long + 1); } if (object.autoPopulatedFields) { if (!Array.isArray(object.autoPopulatedFields)) @@ -41460,7 +43032,7 @@ function LongRunning(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41555,9 +43127,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - LongRunning.decode = function decode(reader, length, error) { + LongRunning.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.MethodSettings.LongRunning(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41565,7 +43141,7 @@ break; switch (tag >>> 3) { case 1: { - message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.initialPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 2: { @@ -41573,15 +43149,15 @@ break; } case 3: { - message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.maxPollDelay = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { - message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.totalPollTimeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41612,11 +43188,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - LongRunning.verify = function verify(message) { + LongRunning.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.initialPollDelay != null && message.hasOwnProperty("initialPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.initialPollDelay); + var error = $root.google.protobuf.Duration.verify(message.initialPollDelay, long + 1); if (error) return "initialPollDelay." + error; } @@ -41624,12 +43204,12 @@ if (typeof message.pollDelayMultiplier !== "number") return "pollDelayMultiplier: number expected"; if (message.maxPollDelay != null && message.hasOwnProperty("maxPollDelay")) { - var error = $root.google.protobuf.Duration.verify(message.maxPollDelay); + var error = $root.google.protobuf.Duration.verify(message.maxPollDelay, long + 1); if (error) return "maxPollDelay." + error; } if (message.totalPollTimeout != null && message.hasOwnProperty("totalPollTimeout")) { - var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout); + var error = $root.google.protobuf.Duration.verify(message.totalPollTimeout, long + 1); if (error) return "totalPollTimeout." + error; } @@ -41644,26 +43224,30 @@ * @param {Object.} object Plain object * @returns {google.api.MethodSettings.LongRunning} LongRunning */ - LongRunning.fromObject = function fromObject(object) { + LongRunning.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.MethodSettings.LongRunning) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.MethodSettings.LongRunning(); if (object.initialPollDelay != null) { if (typeof object.initialPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.initialPollDelay: object expected"); - message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay); + message.initialPollDelay = $root.google.protobuf.Duration.fromObject(object.initialPollDelay, long + 1); } if (object.pollDelayMultiplier != null) message.pollDelayMultiplier = Number(object.pollDelayMultiplier); if (object.maxPollDelay != null) { if (typeof object.maxPollDelay !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.maxPollDelay: object expected"); - message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay); + message.maxPollDelay = $root.google.protobuf.Duration.fromObject(object.maxPollDelay, long + 1); } if (object.totalPollTimeout != null) { if (typeof object.totalPollTimeout !== "object") throw TypeError(".google.api.MethodSettings.LongRunning.totalPollTimeout: object expected"); - message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout); + message.totalPollTimeout = $root.google.protobuf.Duration.fromObject(object.totalPollTimeout, long + 1); } return message; }; @@ -41794,7 +43378,7 @@ this.methods = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -41870,9 +43454,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SelectiveGapicGeneration.decode = function decode(reader, length, error) { + SelectiveGapicGeneration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.SelectiveGapicGeneration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -41890,7 +43478,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -41921,9 +43509,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SelectiveGapicGeneration.verify = function verify(message) { + SelectiveGapicGeneration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.methods != null && message.hasOwnProperty("methods")) { if (!Array.isArray(message.methods)) return "methods: array expected"; @@ -41945,9 +43537,13 @@ * @param {Object.} object Plain object * @returns {google.api.SelectiveGapicGeneration} SelectiveGapicGeneration */ - SelectiveGapicGeneration.fromObject = function fromObject(object) { + SelectiveGapicGeneration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.SelectiveGapicGeneration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.SelectiveGapicGeneration(); if (object.methods) { if (!Array.isArray(object.methods)) @@ -42099,7 +43695,7 @@ this.style = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42229,9 +43825,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceDescriptor.decode = function decode(reader, length, error) { + ResourceDescriptor.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceDescriptor(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42276,7 +43876,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42307,9 +43907,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceDescriptor.verify = function verify(message) { + ResourceDescriptor.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -42361,9 +43965,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceDescriptor} ResourceDescriptor */ - ResourceDescriptor.fromObject = function fromObject(object) { + ResourceDescriptor.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceDescriptor) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceDescriptor(); if (object.type != null) message.type = String(object.type); @@ -42551,7 +44159,7 @@ function ResourceReference(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42626,9 +44234,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ResourceReference.decode = function decode(reader, length, error) { + ResourceReference.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.ResourceReference(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42644,7 +44256,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42675,9 +44287,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ResourceReference.verify = function verify(message) { + ResourceReference.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type != null && message.hasOwnProperty("type")) if (!$util.isString(message.type)) return "type: string expected"; @@ -42695,9 +44311,13 @@ * @param {Object.} object Plain object * @returns {google.api.ResourceReference} ResourceReference */ - ResourceReference.fromObject = function fromObject(object) { + ResourceReference.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.ResourceReference) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.ResourceReference(); if (object.type != null) message.type = String(object.type); @@ -42780,7 +44400,7 @@ this.routingParameters = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -42846,9 +44466,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RoutingRule.decode = function decode(reader, length, error) { + RoutingRule.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RoutingRule(); while (reader.pos < end) { var tag = reader.uint32(); @@ -42858,11 +44482,11 @@ case 2: { if (!(message.routingParameters && message.routingParameters.length)) message.routingParameters = []; - message.routingParameters.push($root.google.api.RoutingParameter.decode(reader, reader.uint32())); + message.routingParameters.push($root.google.api.RoutingParameter.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -42893,14 +44517,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RoutingRule.verify = function verify(message) { + RoutingRule.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.routingParameters != null && message.hasOwnProperty("routingParameters")) { if (!Array.isArray(message.routingParameters)) return "routingParameters: array expected"; for (var i = 0; i < message.routingParameters.length; ++i) { - var error = $root.google.api.RoutingParameter.verify(message.routingParameters[i]); + var error = $root.google.api.RoutingParameter.verify(message.routingParameters[i], long + 1); if (error) return "routingParameters." + error; } @@ -42916,9 +44544,13 @@ * @param {Object.} object Plain object * @returns {google.api.RoutingRule} RoutingRule */ - RoutingRule.fromObject = function fromObject(object) { + RoutingRule.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RoutingRule) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RoutingRule(); if (object.routingParameters) { if (!Array.isArray(object.routingParameters)) @@ -42927,7 +44559,7 @@ for (var i = 0; i < object.routingParameters.length; ++i) { if (typeof object.routingParameters[i] !== "object") throw TypeError(".google.api.RoutingRule.routingParameters: object expected"); - message.routingParameters[i] = $root.google.api.RoutingParameter.fromObject(object.routingParameters[i]); + message.routingParameters[i] = $root.google.api.RoutingParameter.fromObject(object.routingParameters[i], long + 1); } } return message; @@ -43006,7 +44638,7 @@ function RoutingParameter(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43081,9 +44713,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RoutingParameter.decode = function decode(reader, length, error) { + RoutingParameter.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.RoutingParameter(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43099,7 +44735,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43130,9 +44766,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RoutingParameter.verify = function verify(message) { + RoutingParameter.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.field != null && message.hasOwnProperty("field")) if (!$util.isString(message.field)) return "field: string expected"; @@ -43150,9 +44790,13 @@ * @param {Object.} object Plain object * @returns {google.api.RoutingParameter} RoutingParameter */ - RoutingParameter.fromObject = function fromObject(object) { + RoutingParameter.fromObject = function fromObject(object, long) { if (object instanceof $root.google.api.RoutingParameter) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.api.RoutingParameter(); if (object.field != null) message.field = String(object.field); @@ -43247,7 +44891,7 @@ this.file = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43313,9 +44957,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorSet.decode = function decode(reader, length, error) { + FileDescriptorSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43325,11 +44973,11 @@ case 1: { if (!(message.file && message.file.length)) message.file = []; - message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32())); + message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43360,14 +45008,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorSet.verify = function verify(message) { + FileDescriptorSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.file != null && message.hasOwnProperty("file")) { if (!Array.isArray(message.file)) return "file: array expected"; for (var i = 0; i < message.file.length; ++i) { - var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]); + var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i], long + 1); if (error) return "file." + error; } @@ -43383,9 +45035,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet */ - FileDescriptorSet.fromObject = function fromObject(object) { + FileDescriptorSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorSet(); if (object.file) { if (!Array.isArray(object.file)) @@ -43394,7 +45050,7 @@ for (var i = 0; i < object.file.length; ++i) { if (typeof object.file[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected"); - message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]); + message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i], long + 1); } } return message; @@ -43527,7 +45183,7 @@ this.extension = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -43730,9 +45386,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileDescriptorProto.decode = function decode(reader, length, error) { + FileDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -43784,33 +45444,33 @@ case 4: { if (!(message.messageType && message.messageType.length)) message.messageType = []; - message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.service && message.service.length)) message.service = []; - message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32())); + message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { - message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32()); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } case 12: { @@ -43822,7 +45482,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -43853,9 +45513,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileDescriptorProto.verify = function verify(message) { + FileDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -43894,7 +45558,7 @@ if (!Array.isArray(message.messageType)) return "messageType: array expected"; for (var i = 0; i < message.messageType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i], long + 1); if (error) return "messageType." + error; } @@ -43903,7 +45567,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -43912,7 +45576,7 @@ if (!Array.isArray(message.service)) return "service: array expected"; for (var i = 0; i < message.service.length; ++i) { - var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]); + var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i], long + 1); if (error) return "service." + error; } @@ -43921,18 +45585,18 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FileOptions.verify(message.options); + var error = $root.google.protobuf.FileOptions.verify(message.options, long + 1); if (error) return "options." + error; } if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) { - var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo); + var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo, long + 1); if (error) return "sourceCodeInfo." + error; } @@ -43968,9 +45632,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto */ - FileDescriptorProto.fromObject = function fromObject(object) { + FileDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -44011,7 +45679,7 @@ for (var i = 0; i < object.messageType.length; ++i) { if (typeof object.messageType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected"); - message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]); + message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i], long + 1); } } if (object.enumType) { @@ -44021,7 +45689,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.service) { @@ -44031,7 +45699,7 @@ for (var i = 0; i < object.service.length; ++i) { if (typeof object.service[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected"); - message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]); + message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i], long + 1); } } if (object.extension) { @@ -44041,18 +45709,18 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FileOptions.fromObject(object.options); + message.options = $root.google.protobuf.FileOptions.fromObject(object.options, long + 1); } if (object.sourceCodeInfo != null) { if (typeof object.sourceCodeInfo !== "object") throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected"); - message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo); + message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo, long + 1); } if (object.syntax != null) message.syntax = String(object.syntax); @@ -44268,7 +45936,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44441,9 +46109,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DescriptorProto.decode = function decode(reader, length, error) { + DescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44457,47 +46129,47 @@ case 2: { if (!(message.field && message.field.length)) message.field = []; - message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.extension && message.extension.length)) message.extension = []; - message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32())); + message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { if (!(message.nestedType && message.nestedType.length)) message.nestedType = []; - message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32())); + message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { if (!(message.enumType && message.enumType.length)) message.enumType = []; - message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32())); + message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { if (!(message.extensionRange && message.extensionRange.length)) message.extensionRange = []; - message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32())); + message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 8: { if (!(message.oneofDecl && message.oneofDecl.length)) message.oneofDecl = []; - message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32())); + message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 7: { - message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 9: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 10: { @@ -44511,7 +46183,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -44542,9 +46214,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DescriptorProto.verify = function verify(message) { + DescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -44552,7 +46228,7 @@ if (!Array.isArray(message.field)) return "field: array expected"; for (var i = 0; i < message.field.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i], long + 1); if (error) return "field." + error; } @@ -44561,7 +46237,7 @@ if (!Array.isArray(message.extension)) return "extension: array expected"; for (var i = 0; i < message.extension.length; ++i) { - var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]); + var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i], long + 1); if (error) return "extension." + error; } @@ -44570,7 +46246,7 @@ if (!Array.isArray(message.nestedType)) return "nestedType: array expected"; for (var i = 0; i < message.nestedType.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]); + var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i], long + 1); if (error) return "nestedType." + error; } @@ -44579,7 +46255,7 @@ if (!Array.isArray(message.enumType)) return "enumType: array expected"; for (var i = 0; i < message.enumType.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]); + var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i], long + 1); if (error) return "enumType." + error; } @@ -44588,7 +46264,7 @@ if (!Array.isArray(message.extensionRange)) return "extensionRange: array expected"; for (var i = 0; i < message.extensionRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]); + var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i], long + 1); if (error) return "extensionRange." + error; } @@ -44597,13 +46273,13 @@ if (!Array.isArray(message.oneofDecl)) return "oneofDecl: array expected"; for (var i = 0; i < message.oneofDecl.length; ++i) { - var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]); + var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i], long + 1); if (error) return "oneofDecl." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MessageOptions.verify(message.options); + var error = $root.google.protobuf.MessageOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -44611,7 +46287,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -44643,9 +46319,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto} DescriptorProto */ - DescriptorProto.fromObject = function fromObject(object) { + DescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -44656,7 +46336,7 @@ for (var i = 0; i < object.field.length; ++i) { if (typeof object.field[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.field: object expected"); - message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]); + message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i], long + 1); } } if (object.extension) { @@ -44666,7 +46346,7 @@ for (var i = 0; i < object.extension.length; ++i) { if (typeof object.extension[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extension: object expected"); - message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]); + message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i], long + 1); } } if (object.nestedType) { @@ -44676,7 +46356,7 @@ for (var i = 0; i < object.nestedType.length; ++i) { if (typeof object.nestedType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected"); - message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]); + message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i], long + 1); } } if (object.enumType) { @@ -44686,7 +46366,7 @@ for (var i = 0; i < object.enumType.length; ++i) { if (typeof object.enumType[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected"); - message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]); + message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i], long + 1); } } if (object.extensionRange) { @@ -44696,7 +46376,7 @@ for (var i = 0; i < object.extensionRange.length; ++i) { if (typeof object.extensionRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected"); - message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]); + message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i], long + 1); } } if (object.oneofDecl) { @@ -44706,13 +46386,13 @@ for (var i = 0; i < object.oneofDecl.length; ++i) { if (typeof object.oneofDecl[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected"); - message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]); + message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MessageOptions.fromObject(object.options); + message.options = $root.google.protobuf.MessageOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -44721,7 +46401,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -44879,7 +46559,7 @@ function ExtensionRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -44964,9 +46644,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRange.decode = function decode(reader, length, error) { + ExtensionRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -44982,11 +46666,11 @@ break; } case 3: { - message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45017,9 +46701,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRange.verify = function verify(message) { + ExtensionRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -45027,7 +46715,7 @@ if (!$util.isInteger(message.end)) return "end: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options); + var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -45042,9 +46730,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange */ - ExtensionRange.fromObject = function fromObject(object) { + ExtensionRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ExtensionRange(); if (object.start != null) message.start = object.start | 0; @@ -45053,7 +46745,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected"); - message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options); + message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options, long + 1); } return message; }; @@ -45135,7 +46827,7 @@ function ReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45210,9 +46902,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ReservedRange.decode = function decode(reader, length, error) { + ReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45228,7 +46924,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45259,9 +46955,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ReservedRange.verify = function verify(message) { + ReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -45279,9 +46979,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange */ - ReservedRange.fromObject = function fromObject(object) { + ReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.DescriptorProto.ReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -45371,7 +47075,7 @@ this.declaration = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45468,9 +47172,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ExtensionRangeOptions.decode = function decode(reader, length, error) { + ExtensionRangeOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45480,17 +47188,17 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.declaration && message.declaration.length)) message.declaration = []; - message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32())); + message.declaration.push($root.google.protobuf.ExtensionRangeOptions.Declaration.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -45498,7 +47206,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45529,14 +47237,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ExtensionRangeOptions.verify = function verify(message) { + ExtensionRangeOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) { if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -45545,13 +47257,13 @@ if (!Array.isArray(message.declaration)) return "declaration: array expected"; for (var i = 0; i < message.declaration.length; ++i) { - var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i]); + var error = $root.google.protobuf.ExtensionRangeOptions.Declaration.verify(message.declaration[i], long + 1); if (error) return "declaration." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -45574,9 +47286,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions */ - ExtensionRangeOptions.fromObject = function fromObject(object) { + ExtensionRangeOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions(); if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -45585,7 +47301,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object.declaration) { @@ -45595,13 +47311,13 @@ for (var i = 0; i < object.declaration.length; ++i) { if (typeof object.declaration[i] !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.declaration: object expected"); - message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i]); + message.declaration[i] = $root.google.protobuf.ExtensionRangeOptions.Declaration.fromObject(object.declaration[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ExtensionRangeOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } switch (object.verification) { case "DECLARATION": @@ -45710,7 +47426,7 @@ function Declaration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -45815,9 +47531,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Declaration.decode = function decode(reader, length, error) { + Declaration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -45845,7 +47565,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -45876,9 +47596,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Declaration.verify = function verify(message) { + Declaration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.number != null && message.hasOwnProperty("number")) if (!$util.isInteger(message.number)) return "number: integer expected"; @@ -45905,9 +47629,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ExtensionRangeOptions.Declaration} Declaration */ - Declaration.fromObject = function fromObject(object) { + Declaration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ExtensionRangeOptions.Declaration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ExtensionRangeOptions.Declaration(); if (object.number != null) message.number = object.number | 0; @@ -46031,7 +47759,7 @@ function FieldDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46196,9 +47924,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldDescriptorProto.decode = function decode(reader, length, error) { + FieldDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46242,7 +47974,7 @@ break; } case 8: { - message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 17: { @@ -46250,7 +47982,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46281,9 +48013,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldDescriptorProto.verify = function verify(message) { + FieldDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -46339,7 +48075,7 @@ if (!$util.isString(message.jsonName)) return "jsonName: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.FieldOptions.verify(message.options); + var error = $root.google.protobuf.FieldOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -46357,9 +48093,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto */ - FieldDescriptorProto.fromObject = function fromObject(object) { + FieldDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -46478,7 +48218,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.FieldOptions.fromObject(object.options); + message.options = $root.google.protobuf.FieldOptions.fromObject(object.options, long + 1); } if (object.proto3Optional != null) message.proto3Optional = Boolean(object.proto3Optional); @@ -46648,7 +48388,7 @@ function OneofDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -46723,9 +48463,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofDescriptorProto.decode = function decode(reader, length, error) { + OneofDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -46737,11 +48481,11 @@ break; } case 2: { - message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -46772,14 +48516,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofDescriptorProto.verify = function verify(message) { + OneofDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.OneofOptions.verify(message.options); + var error = $root.google.protobuf.OneofOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -46794,16 +48542,20 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto */ - OneofDescriptorProto.fromObject = function fromObject(object) { + OneofDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofDescriptorProto(); if (object.name != null) message.name = String(object.name); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.OneofOptions.fromObject(object.options); + message.options = $root.google.protobuf.OneofOptions.fromObject(object.options, long + 1); } return message; }; @@ -46889,7 +48641,7 @@ this.reservedName = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47007,9 +48759,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumDescriptorProto.decode = function decode(reader, length, error) { + EnumDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47023,17 +48779,17 @@ case 2: { if (!(message.value && message.value.length)) message.value = []; - message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32())); + message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 4: { if (!(message.reservedRange && message.reservedRange.length)) message.reservedRange = []; - message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32())); + message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 5: { @@ -47047,7 +48803,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47078,9 +48834,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumDescriptorProto.verify = function verify(message) { + EnumDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -47088,13 +48848,13 @@ if (!Array.isArray(message.value)) return "value: array expected"; for (var i = 0; i < message.value.length; ++i) { - var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]); + var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i], long + 1); if (error) return "value." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumOptions.verify(message.options); + var error = $root.google.protobuf.EnumOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -47102,7 +48862,7 @@ if (!Array.isArray(message.reservedRange)) return "reservedRange: array expected"; for (var i = 0; i < message.reservedRange.length; ++i) { - var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]); + var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i], long + 1); if (error) return "reservedRange." + error; } @@ -47134,9 +48894,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto */ - EnumDescriptorProto.fromObject = function fromObject(object) { + EnumDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -47147,13 +48911,13 @@ for (var i = 0; i < object.value.length; ++i) { if (typeof object.value[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected"); - message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]); + message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumOptions.fromObject(object.options, long + 1); } if (object.reservedRange) { if (!Array.isArray(object.reservedRange)) @@ -47162,7 +48926,7 @@ for (var i = 0; i < object.reservedRange.length; ++i) { if (typeof object.reservedRange[i] !== "object") throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected"); - message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]); + message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i], long + 1); } } if (object.reservedName) { @@ -47289,7 +49053,7 @@ function EnumReservedRange(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47364,9 +49128,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumReservedRange.decode = function decode(reader, length, error) { + EnumReservedRange.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47382,7 +49150,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47413,9 +49181,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumReservedRange.verify = function verify(message) { + EnumReservedRange.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.start != null && message.hasOwnProperty("start")) if (!$util.isInteger(message.start)) return "start: integer expected"; @@ -47433,9 +49205,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange */ - EnumReservedRange.fromObject = function fromObject(object) { + EnumReservedRange.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange(); if (object.start != null) message.start = object.start | 0; @@ -47522,7 +49298,7 @@ function EnumValueDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47607,9 +49383,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueDescriptorProto.decode = function decode(reader, length, error) { + EnumValueDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47625,11 +49405,11 @@ break; } case 3: { - message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47660,9 +49440,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueDescriptorProto.verify = function verify(message) { + EnumValueDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -47670,7 +49454,7 @@ if (!$util.isInteger(message.number)) return "number: integer expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.EnumValueOptions.verify(message.options); + var error = $root.google.protobuf.EnumValueOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -47685,9 +49469,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto */ - EnumValueDescriptorProto.fromObject = function fromObject(object) { + EnumValueDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -47696,7 +49484,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options); + message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options, long + 1); } return message; }; @@ -47780,7 +49568,7 @@ this.method = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -47866,9 +49654,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceDescriptorProto.decode = function decode(reader, length, error) { + ServiceDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -47882,15 +49674,15 @@ case 2: { if (!(message.method && message.method.length)) message.method = []; - message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32())); + message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { - message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -47921,9 +49713,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceDescriptorProto.verify = function verify(message) { + ServiceDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -47931,13 +49727,13 @@ if (!Array.isArray(message.method)) return "method: array expected"; for (var i = 0; i < message.method.length; ++i) { - var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]); + var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i], long + 1); if (error) return "method." + error; } } if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.ServiceOptions.verify(message.options); + var error = $root.google.protobuf.ServiceOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -47952,9 +49748,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto */ - ServiceDescriptorProto.fromObject = function fromObject(object) { + ServiceDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -47965,13 +49765,13 @@ for (var i = 0; i < object.method.length; ++i) { if (typeof object.method[i] !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected"); - message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]); + message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i], long + 1); } } if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options); + message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options, long + 1); } return message; }; @@ -48061,7 +49861,7 @@ function MethodDescriptorProto(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48176,9 +49976,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodDescriptorProto.decode = function decode(reader, length, error) { + MethodDescriptorProto.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48198,7 +50002,7 @@ break; } case 4: { - message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32()); + message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { @@ -48210,7 +50014,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48241,9 +50045,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodDescriptorProto.verify = function verify(message) { + MethodDescriptorProto.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -48254,7 +50062,7 @@ if (!$util.isString(message.outputType)) return "outputType: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.protobuf.MethodOptions.verify(message.options); + var error = $root.google.protobuf.MethodOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -48275,9 +50083,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto */ - MethodDescriptorProto.fromObject = function fromObject(object) { + MethodDescriptorProto.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodDescriptorProto) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodDescriptorProto(); if (object.name != null) message.name = String(object.name); @@ -48288,7 +50100,7 @@ if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected"); - message.options = $root.google.protobuf.MethodOptions.fromObject(object.options); + message.options = $root.google.protobuf.MethodOptions.fromObject(object.options, long + 1); } if (object.clientStreaming != null) message.clientStreaming = Boolean(object.clientStreaming); @@ -48405,7 +50217,7 @@ this[".google.api.resourceDefinition"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -48682,9 +50494,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FileOptions.decode = function decode(reader, length, error) { + FileOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -48768,23 +50584,23 @@ break; } case 50: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { if (!(message[".google.api.resourceDefinition"] && message[".google.api.resourceDefinition"].length)) message[".google.api.resourceDefinition"] = []; - message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32())); + message[".google.api.resourceDefinition"].push($root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -48815,9 +50631,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FileOptions.verify = function verify(message) { + FileOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.javaPackage != null && message.hasOwnProperty("javaPackage")) if (!$util.isString(message.javaPackage)) return "javaPackage: string expected"; @@ -48882,7 +50702,7 @@ if (!$util.isString(message.rubyPackage)) return "rubyPackage: string expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -48890,7 +50710,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -48899,7 +50719,7 @@ if (!Array.isArray(message[".google.api.resourceDefinition"])) return ".google.api.resourceDefinition: array expected"; for (var i = 0; i < message[".google.api.resourceDefinition"].length; ++i) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resourceDefinition"][i], long + 1); if (error) return ".google.api.resourceDefinition." + error; } @@ -48915,9 +50735,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FileOptions} FileOptions */ - FileOptions.fromObject = function fromObject(object) { + FileOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FileOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FileOptions(); if (object.javaPackage != null) message.javaPackage = String(object.javaPackage); @@ -48978,7 +50802,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FileOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -48987,7 +50811,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resourceDefinition"]) { @@ -48997,7 +50821,7 @@ for (var i = 0; i < object[".google.api.resourceDefinition"].length; ++i) { if (typeof object[".google.api.resourceDefinition"][i] !== "object") throw TypeError(".google.protobuf.FileOptions..google.api.resourceDefinition: object expected"); - message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i]); + message[".google.api.resourceDefinition"][i] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resourceDefinition"][i], long + 1); } } return message; @@ -49168,7 +50992,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49304,9 +51128,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageOptions.decode = function decode(reader, length, error) { + MessageOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49334,21 +51162,21 @@ break; } case 12: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1053: { - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32()); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49379,9 +51207,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MessageOptions.verify = function verify(message) { + MessageOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat")) if (typeof message.messageSetWireFormat !== "boolean") return "messageSetWireFormat: boolean expected"; @@ -49398,7 +51230,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -49406,13 +51238,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.resource"] != null && message.hasOwnProperty(".google.api.resource")) { - var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"]); + var error = $root.google.api.ResourceDescriptor.verify(message[".google.api.resource"], long + 1); if (error) return ".google.api.resource." + error; } @@ -49427,9 +51259,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MessageOptions} MessageOptions */ - MessageOptions.fromObject = function fromObject(object) { + MessageOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MessageOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MessageOptions(); if (object.messageSetWireFormat != null) message.messageSetWireFormat = Boolean(object.messageSetWireFormat); @@ -49444,7 +51280,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MessageOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -49453,13 +51289,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.resource"] != null) { if (typeof object[".google.api.resource"] !== "object") throw TypeError(".google.protobuf.MessageOptions..google.api.resource: object expected"); - message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"]); + message[".google.api.resource"] = $root.google.api.ResourceDescriptor.fromObject(object[".google.api.resource"], long + 1); } return message; }; @@ -49578,7 +51414,7 @@ this[".google.api.fieldBehavior"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -49797,9 +51633,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldOptions.decode = function decode(reader, length, error) { + FieldOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -49856,21 +51696,21 @@ case 20: { if (!(message.editionDefaults && message.editionDefaults.length)) message.editionDefaults = []; - message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32())); + message.editionDefaults.push($root.google.protobuf.FieldOptions.EditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 21: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 22: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1052: { @@ -49885,11 +51725,11 @@ break; } case 1055: { - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32()); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -49920,9 +51760,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldOptions.verify = function verify(message) { + FieldOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.ctype != null && message.hasOwnProperty("ctype")) switch (message.ctype) { default: @@ -49992,18 +51836,18 @@ if (!Array.isArray(message.editionDefaults)) return "editionDefaults: array expected"; for (var i = 0; i < message.editionDefaults.length; ++i) { - var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i]); + var error = $root.google.protobuf.FieldOptions.EditionDefault.verify(message.editionDefaults[i], long + 1); if (error) return "editionDefaults." + error; } } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -50011,7 +51855,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -50036,7 +51880,7 @@ } } if (message[".google.api.resourceReference"] != null && message.hasOwnProperty(".google.api.resourceReference")) { - var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"]); + var error = $root.google.api.ResourceReference.verify(message[".google.api.resourceReference"], long + 1); if (error) return ".google.api.resourceReference." + error; } @@ -50051,9 +51895,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions} FieldOptions */ - FieldOptions.fromObject = function fromObject(object) { + FieldOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions(); switch (object.ctype) { default: @@ -50187,18 +52035,18 @@ for (var i = 0; i < object.editionDefaults.length; ++i) { if (typeof object.editionDefaults[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.editionDefaults: object expected"); - message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i]); + message.editionDefaults[i] = $root.google.protobuf.FieldOptions.EditionDefault.fromObject(object.editionDefaults[i], long + 1); } } if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.FieldOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.FieldOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -50207,7 +52055,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.fieldBehavior"]) { @@ -50262,7 +52110,7 @@ if (object[".google.api.resourceReference"] != null) { if (typeof object[".google.api.resourceReference"] !== "object") throw TypeError(".google.protobuf.FieldOptions..google.api.resourceReference: object expected"); - message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"]); + message[".google.api.resourceReference"] = $root.google.api.ResourceReference.fromObject(object[".google.api.resourceReference"], long + 1); } return message; }; @@ -50472,7 +52320,7 @@ function EditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50547,9 +52395,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EditionDefault.decode = function decode(reader, length, error) { + EditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.EditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50565,7 +52417,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50596,9 +52448,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EditionDefault.verify = function verify(message) { + EditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -50631,9 +52487,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.EditionDefault} EditionDefault */ - EditionDefault.fromObject = function fromObject(object) { + EditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.EditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.EditionDefault(); switch (object.edition) { default: @@ -50772,7 +52632,7 @@ function FeatureSupport(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -50867,9 +52727,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSupport.decode = function decode(reader, length, error) { + FeatureSupport.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions.FeatureSupport(); while (reader.pos < end) { var tag = reader.uint32(); @@ -50893,7 +52757,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -50924,9 +52788,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSupport.verify = function verify(message) { + FeatureSupport.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.editionIntroduced != null && message.hasOwnProperty("editionIntroduced")) switch (message.editionIntroduced) { default: @@ -50995,9 +52863,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldOptions.FeatureSupport} FeatureSupport */ - FeatureSupport.fromObject = function fromObject(object) { + FeatureSupport.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldOptions.FeatureSupport) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldOptions.FeatureSupport(); switch (object.editionIntroduced) { default: @@ -51256,7 +53128,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51332,9 +53204,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OneofOptions.decode = function decode(reader, length, error) { + OneofOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51342,17 +53218,17 @@ break; switch (tag >>> 3) { case 1: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51383,11 +53259,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OneofOptions.verify = function verify(message) { + OneofOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -51395,7 +53275,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -51411,14 +53291,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.OneofOptions} OneofOptions */ - OneofOptions.fromObject = function fromObject(object) { + OneofOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.OneofOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.OneofOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.OneofOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -51427,7 +53311,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -51514,7 +53398,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51620,9 +53504,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumOptions.decode = function decode(reader, length, error) { + EnumOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51642,17 +53530,17 @@ break; } case 7: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -51683,9 +53571,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumOptions.verify = function verify(message) { + EnumOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.allowAlias != null && message.hasOwnProperty("allowAlias")) if (typeof message.allowAlias !== "boolean") return "allowAlias: boolean expected"; @@ -51696,7 +53588,7 @@ if (typeof message.deprecatedLegacyJsonFieldConflicts !== "boolean") return "deprecatedLegacyJsonFieldConflicts: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -51704,7 +53596,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -51720,9 +53612,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumOptions} EnumOptions */ - EnumOptions.fromObject = function fromObject(object) { + EnumOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumOptions(); if (object.allowAlias != null) message.allowAlias = Boolean(object.allowAlias); @@ -51733,7 +53629,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -51742,7 +53638,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -51839,7 +53735,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -51945,9 +53841,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - EnumValueOptions.decode = function decode(reader, length, error) { + EnumValueOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -51959,7 +53859,7 @@ break; } case 2: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -51967,17 +53867,17 @@ break; } case 4: { - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32()); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52008,14 +53908,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - EnumValueOptions.verify = function verify(message) { + EnumValueOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -52023,7 +53927,7 @@ if (typeof message.debugRedact !== "boolean") return "debugRedact: boolean expected"; if (message.featureSupport != null && message.hasOwnProperty("featureSupport")) { - var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport); + var error = $root.google.protobuf.FieldOptions.FeatureSupport.verify(message.featureSupport, long + 1); if (error) return "featureSupport." + error; } @@ -52031,7 +53935,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -52047,23 +53951,27 @@ * @param {Object.} object Plain object * @returns {google.protobuf.EnumValueOptions} EnumValueOptions */ - EnumValueOptions.fromObject = function fromObject(object) { + EnumValueOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.EnumValueOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.EnumValueOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.EnumValueOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.debugRedact != null) message.debugRedact = Boolean(object.debugRedact); if (object.featureSupport != null) { if (typeof object.featureSupport !== "object") throw TypeError(".google.protobuf.EnumValueOptions.featureSupport: object expected"); - message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport); + message.featureSupport = $root.google.protobuf.FieldOptions.FeatureSupport.fromObject(object.featureSupport, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -52072,7 +53980,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } return message; @@ -52170,7 +54078,7 @@ this.uninterpretedOption = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52286,9 +54194,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ServiceOptions.decode = function decode(reader, length, error) { + ServiceOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52296,7 +54208,7 @@ break; switch (tag >>> 3) { case 34: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 33: { @@ -52306,7 +54218,7 @@ case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 1049: { @@ -52322,7 +54234,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52353,11 +54265,15 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ServiceOptions.verify = function verify(message) { + ServiceOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -52368,7 +54284,7 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } @@ -52393,14 +54309,18 @@ * @param {Object.} object Plain object * @returns {google.protobuf.ServiceOptions} ServiceOptions */ - ServiceOptions.fromObject = function fromObject(object) { + ServiceOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.ServiceOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.ServiceOptions(); if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.ServiceOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -52411,7 +54331,7 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.defaultHost"] != null) @@ -52521,7 +54441,7 @@ this[".google.api.methodSignature"] = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -52658,9 +54578,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MethodOptions.decode = function decode(reader, length, error) { + MethodOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -52676,17 +54600,17 @@ break; } case 35: { - message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.features = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 999: { if (!(message.uninterpretedOption && message.uninterpretedOption.length)) message.uninterpretedOption = []; - message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32())); + message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 72295728: { - message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32()); + message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1051: { @@ -52696,15 +54620,15 @@ break; } case 72295729: { - message[".google.api.routing"] = $root.google.api.RoutingRule.decode(reader, reader.uint32()); + message[".google.api.routing"] = $root.google.api.RoutingRule.decode(reader, reader.uint32(), undefined, long + 1); break; } case 1049: { - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32()); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -52735,9 +54659,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MethodOptions.verify = function verify(message) { + MethodOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.deprecated != null && message.hasOwnProperty("deprecated")) if (typeof message.deprecated !== "boolean") return "deprecated: boolean expected"; @@ -52751,7 +54679,7 @@ break; } if (message.features != null && message.hasOwnProperty("features")) { - var error = $root.google.protobuf.FeatureSet.verify(message.features); + var error = $root.google.protobuf.FeatureSet.verify(message.features, long + 1); if (error) return "features." + error; } @@ -52759,13 +54687,13 @@ if (!Array.isArray(message.uninterpretedOption)) return "uninterpretedOption: array expected"; for (var i = 0; i < message.uninterpretedOption.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]); + var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i], long + 1); if (error) return "uninterpretedOption." + error; } } if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) { - var error = $root.google.api.HttpRule.verify(message[".google.api.http"]); + var error = $root.google.api.HttpRule.verify(message[".google.api.http"], long + 1); if (error) return ".google.api.http." + error; } @@ -52777,12 +54705,12 @@ return ".google.api.methodSignature: string[] expected"; } if (message[".google.api.routing"] != null && message.hasOwnProperty(".google.api.routing")) { - var error = $root.google.api.RoutingRule.verify(message[".google.api.routing"]); + var error = $root.google.api.RoutingRule.verify(message[".google.api.routing"], long + 1); if (error) return ".google.api.routing." + error; } if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) { - var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]); + var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"], long + 1); if (error) return ".google.longrunning.operationInfo." + error; } @@ -52797,9 +54725,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.MethodOptions} MethodOptions */ - MethodOptions.fromObject = function fromObject(object) { + MethodOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.MethodOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.MethodOptions(); if (object.deprecated != null) message.deprecated = Boolean(object.deprecated); @@ -52826,7 +54758,7 @@ if (object.features != null) { if (typeof object.features !== "object") throw TypeError(".google.protobuf.MethodOptions.features: object expected"); - message.features = $root.google.protobuf.FeatureSet.fromObject(object.features); + message.features = $root.google.protobuf.FeatureSet.fromObject(object.features, long + 1); } if (object.uninterpretedOption) { if (!Array.isArray(object.uninterpretedOption)) @@ -52835,13 +54767,13 @@ for (var i = 0; i < object.uninterpretedOption.length; ++i) { if (typeof object.uninterpretedOption[i] !== "object") throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected"); - message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]); + message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i], long + 1); } } if (object[".google.api.http"] != null) { if (typeof object[".google.api.http"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected"); - message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]); + message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"], long + 1); } if (object[".google.api.methodSignature"]) { if (!Array.isArray(object[".google.api.methodSignature"])) @@ -52853,12 +54785,12 @@ if (object[".google.api.routing"] != null) { if (typeof object[".google.api.routing"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.api.routing: object expected"); - message[".google.api.routing"] = $root.google.api.RoutingRule.fromObject(object[".google.api.routing"]); + message[".google.api.routing"] = $root.google.api.RoutingRule.fromObject(object[".google.api.routing"], long + 1); } if (object[".google.longrunning.operationInfo"] != null) { if (typeof object[".google.longrunning.operationInfo"] !== "object") throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected"); - message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]); + message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"], long + 1); } return message; }; @@ -52985,7 +54917,7 @@ this.name = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53111,9 +55043,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - UninterpretedOption.decode = function decode(reader, length, error) { + UninterpretedOption.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53123,7 +55059,7 @@ case 2: { if (!(message.name && message.name.length)) message.name = []; - message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32())); + message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -53151,7 +55087,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53182,14 +55118,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - UninterpretedOption.verify = function verify(message) { + UninterpretedOption.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) { if (!Array.isArray(message.name)) return "name: array expected"; for (var i = 0; i < message.name.length; ++i) { - var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]); + var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i], long + 1); if (error) return "name." + error; } @@ -53223,9 +55163,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption} UninterpretedOption */ - UninterpretedOption.fromObject = function fromObject(object) { + UninterpretedOption.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption(); if (object.name) { if (!Array.isArray(object.name)) @@ -53234,7 +55178,7 @@ for (var i = 0; i < object.name.length; ++i) { if (typeof object.name[i] !== "object") throw TypeError(".google.protobuf.UninterpretedOption.name: object expected"); - message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]); + message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i], long + 1); } } if (object.identifierValue != null) @@ -53379,7 +55323,7 @@ function NamePart(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53452,9 +55396,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - NamePart.decode = function decode(reader, length, error) { + NamePart.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53470,7 +55418,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53505,9 +55453,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - NamePart.verify = function verify(message) { + NamePart.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (!$util.isString(message.namePart)) return "namePart: string expected"; if (typeof message.isExtension !== "boolean") @@ -53523,9 +55475,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart */ - NamePart.fromObject = function fromObject(object) { + NamePart.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.UninterpretedOption.NamePart(); if (object.namePart != null) message.namePart = String(object.namePart); @@ -53617,7 +55573,7 @@ function FeatureSet(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -53752,9 +55708,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSet.decode = function decode(reader, length, error) { + FeatureSet.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet(); while (reader.pos < end) { var tag = reader.uint32(); @@ -53794,7 +55754,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -53825,9 +55785,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSet.verify = function verify(message) { + FeatureSet.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.fieldPresence != null && message.hasOwnProperty("fieldPresence")) switch (message.fieldPresence) { default: @@ -53914,9 +55878,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet} FeatureSet */ - FeatureSet.fromObject = function fromObject(object) { + FeatureSet.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSet(); switch (object.fieldPresence) { default: @@ -54294,7 +56262,7 @@ function VisibilityFeature(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54349,9 +56317,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - VisibilityFeature.decode = function decode(reader, length, error) { + VisibilityFeature.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSet.VisibilityFeature(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54359,7 +56331,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54390,9 +56362,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - VisibilityFeature.verify = function verify(message) { + VisibilityFeature.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -54404,9 +56380,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSet.VisibilityFeature} VisibilityFeature */ - VisibilityFeature.fromObject = function fromObject(object) { + VisibilityFeature.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSet.VisibilityFeature) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.FeatureSet.VisibilityFeature(); }; @@ -54498,7 +56478,7 @@ this.defaults = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54584,9 +56564,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetDefaults.decode = function decode(reader, length, error) { + FeatureSetDefaults.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults(); while (reader.pos < end) { var tag = reader.uint32(); @@ -54596,7 +56580,7 @@ case 1: { if (!(message.defaults && message.defaults.length)) message.defaults = []; - message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32())); + message.defaults.push($root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 4: { @@ -54608,7 +56592,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -54639,14 +56623,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetDefaults.verify = function verify(message) { + FeatureSetDefaults.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.defaults != null && message.hasOwnProperty("defaults")) { if (!Array.isArray(message.defaults)) return "defaults: array expected"; for (var i = 0; i < message.defaults.length; ++i) { - var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i]); + var error = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.verify(message.defaults[i], long + 1); if (error) return "defaults." + error; } @@ -54698,9 +56686,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults} FeatureSetDefaults */ - FeatureSetDefaults.fromObject = function fromObject(object) { + FeatureSetDefaults.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults(); if (object.defaults) { if (!Array.isArray(object.defaults)) @@ -54709,7 +56701,7 @@ for (var i = 0; i < object.defaults.length; ++i) { if (typeof object.defaults[i] !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.defaults: object expected"); - message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i]); + message.defaults[i] = $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fromObject(object.defaults[i], long + 1); } } switch (object.minimumEdition) { @@ -54906,7 +56898,7 @@ function FeatureSetEditionDefault(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -54991,9 +56983,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FeatureSetEditionDefault.decode = function decode(reader, length, error) { + FeatureSetEditionDefault.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55005,15 +57001,15 @@ break; } case 4: { - message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.overridableFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32()); + message.fixedFeatures = $root.google.protobuf.FeatureSet.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55044,9 +57040,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FeatureSetEditionDefault.verify = function verify(message) { + FeatureSetEditionDefault.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.edition != null && message.hasOwnProperty("edition")) switch (message.edition) { default: @@ -55066,12 +57066,12 @@ break; } if (message.overridableFeatures != null && message.hasOwnProperty("overridableFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.overridableFeatures, long + 1); if (error) return "overridableFeatures." + error; } if (message.fixedFeatures != null && message.hasOwnProperty("fixedFeatures")) { - var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures); + var error = $root.google.protobuf.FeatureSet.verify(message.fixedFeatures, long + 1); if (error) return "fixedFeatures." + error; } @@ -55086,9 +57086,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault} FeatureSetEditionDefault */ - FeatureSetEditionDefault.fromObject = function fromObject(object) { + FeatureSetEditionDefault.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault(); switch (object.edition) { default: @@ -55149,12 +57153,12 @@ if (object.overridableFeatures != null) { if (typeof object.overridableFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.overridableFeatures: object expected"); - message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures); + message.overridableFeatures = $root.google.protobuf.FeatureSet.fromObject(object.overridableFeatures, long + 1); } if (object.fixedFeatures != null) { if (typeof object.fixedFeatures !== "object") throw TypeError(".google.protobuf.FeatureSetDefaults.FeatureSetEditionDefault.fixedFeatures: object expected"); - message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures); + message.fixedFeatures = $root.google.protobuf.FeatureSet.fromObject(object.fixedFeatures, long + 1); } return message; }; @@ -55239,7 +57243,7 @@ this.location = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55305,9 +57309,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SourceCodeInfo.decode = function decode(reader, length, error) { + SourceCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55317,11 +57325,11 @@ case 1: { if (!(message.location && message.location.length)) message.location = []; - message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32())); + message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55352,14 +57360,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SourceCodeInfo.verify = function verify(message) { + SourceCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.location != null && message.hasOwnProperty("location")) { if (!Array.isArray(message.location)) return "location: array expected"; for (var i = 0; i < message.location.length; ++i) { - var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]); + var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i], long + 1); if (error) return "location." + error; } @@ -55375,9 +57387,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo */ - SourceCodeInfo.fromObject = function fromObject(object) { + SourceCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo(); if (object.location) { if (!Array.isArray(object.location)) @@ -55386,7 +57402,7 @@ for (var i = 0; i < object.location.length; ++i) { if (typeof object.location[i] !== "object") throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected"); - message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]); + message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i], long + 1); } } return message; @@ -55468,7 +57484,7 @@ this.leadingDetachedComments = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55582,9 +57598,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Location.decode = function decode(reader, length, error) { + Location.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55628,7 +57648,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55659,9 +57679,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Location.verify = function verify(message) { + Location.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -55700,9 +57724,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.SourceCodeInfo.Location} Location */ - Location.fromObject = function fromObject(object) { + Location.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.SourceCodeInfo.Location) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.SourceCodeInfo.Location(); if (object.path) { if (!Array.isArray(object.path)) @@ -55829,7 +57857,7 @@ this.annotation = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -55895,9 +57923,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GeneratedCodeInfo.decode = function decode(reader, length, error) { + GeneratedCodeInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -55907,11 +57939,11 @@ case 1: { if (!(message.annotation && message.annotation.length)) message.annotation = []; - message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32())); + message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -55942,14 +57974,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GeneratedCodeInfo.verify = function verify(message) { + GeneratedCodeInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.annotation != null && message.hasOwnProperty("annotation")) { if (!Array.isArray(message.annotation)) return "annotation: array expected"; for (var i = 0; i < message.annotation.length; ++i) { - var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]); + var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i], long + 1); if (error) return "annotation." + error; } @@ -55965,9 +58001,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo */ - GeneratedCodeInfo.fromObject = function fromObject(object) { + GeneratedCodeInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo(); if (object.annotation) { if (!Array.isArray(object.annotation)) @@ -55976,7 +58016,7 @@ for (var i = 0; i < object.annotation.length; ++i) { if (typeof object.annotation[i] !== "object") throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected"); - message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]); + message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i], long + 1); } } return message; @@ -56056,7 +58096,7 @@ this.path = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56165,9 +58205,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Annotation.decode = function decode(reader, length, error) { + Annotation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56202,7 +58246,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56233,9 +58277,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Annotation.verify = function verify(message) { + Annotation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.path != null && message.hasOwnProperty("path")) { if (!Array.isArray(message.path)) return "path: array expected"; @@ -56272,9 +58320,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation */ - Annotation.fromObject = function fromObject(object) { + Annotation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation(); if (object.path) { if (!Array.isArray(object.path)) @@ -56434,7 +58486,7 @@ function Duration(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56509,9 +58561,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Duration.decode = function decode(reader, length, error) { + Duration.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Duration(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56527,7 +58583,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56558,9 +58614,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Duration.verify = function verify(message) { + Duration.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -56578,9 +58638,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Duration} Duration */ - Duration.fromObject = function fromObject(object) { + Duration.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Duration) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Duration(); if (object.seconds != null) if ($util.Long) @@ -56677,7 +58741,7 @@ function Any(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56752,9 +58816,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Any.decode = function decode(reader, length, error) { + Any.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56770,7 +58838,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -56801,9 +58869,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Any.verify = function verify(message) { + Any.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.type_url != null && message.hasOwnProperty("type_url")) if (!$util.isString(message.type_url)) return "type_url: string expected"; @@ -56821,9 +58893,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Any} Any */ - Any.fromObject = function fromObject(object) { + Any.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Any) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Any(); if (object.type_url != null) message.type_url = String(object.type_url); @@ -56913,7 +58989,7 @@ function Empty(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -56968,9 +59044,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Empty.decode = function decode(reader, length, error) { + Empty.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty(); while (reader.pos < end) { var tag = reader.uint32(); @@ -56978,7 +59058,7 @@ break; switch (tag >>> 3) { default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57009,9 +59089,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Empty.verify = function verify(message) { + Empty.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; return null; }; @@ -57023,9 +59107,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Empty} Empty */ - Empty.fromObject = function fromObject(object) { + Empty.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Empty) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); return new $root.google.protobuf.Empty(); }; @@ -57092,7 +59180,7 @@ function Timestamp(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57167,9 +59255,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Timestamp.decode = function decode(reader, length, error) { + Timestamp.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57185,7 +59277,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57216,9 +59308,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Timestamp.verify = function verify(message) { + Timestamp.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.seconds != null && message.hasOwnProperty("seconds")) if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high))) return "seconds: integer|Long expected"; @@ -57236,9 +59332,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.Timestamp} Timestamp */ - Timestamp.fromObject = function fromObject(object) { + Timestamp.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.Timestamp) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.Timestamp(); if (object.seconds != null) if ($util.Long) @@ -57335,7 +59435,7 @@ this.paths = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57401,9 +59501,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - FieldMask.decode = function decode(reader, length, error) { + FieldMask.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldMask(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57417,7 +59521,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57448,9 +59552,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - FieldMask.verify = function verify(message) { + FieldMask.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.paths != null && message.hasOwnProperty("paths")) { if (!Array.isArray(message.paths)) return "paths: array expected"; @@ -57469,9 +59577,13 @@ * @param {Object.} object Plain object * @returns {google.protobuf.FieldMask} FieldMask */ - FieldMask.fromObject = function fromObject(object) { + FieldMask.fromObject = function fromObject(object, long) { if (object instanceof $root.google.protobuf.FieldMask) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.protobuf.FieldMask(); if (object.paths) { if (!Array.isArray(object.paths)) @@ -57771,7 +59883,7 @@ function Operation(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -57890,9 +60002,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Operation.decode = function decode(reader, length, error) { + Operation.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.Operation(); while (reader.pos < end) { var tag = reader.uint32(); @@ -57904,7 +60020,7 @@ break; } case 2: { - message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { @@ -57912,15 +60028,15 @@ break; } case 4: { - message.error = $root.google.rpc.Status.decode(reader, reader.uint32()); + message.error = $root.google.rpc.Status.decode(reader, reader.uint32(), undefined, long + 1); break; } case 5: { - message.response = $root.google.protobuf.Any.decode(reader, reader.uint32()); + message.response = $root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -57951,15 +60067,19 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Operation.verify = function verify(message) { + Operation.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; var properties = {}; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.metadata != null && message.hasOwnProperty("metadata")) { - var error = $root.google.protobuf.Any.verify(message.metadata); + var error = $root.google.protobuf.Any.verify(message.metadata, long + 1); if (error) return "metadata." + error; } @@ -57969,7 +60089,7 @@ if (message.error != null && message.hasOwnProperty("error")) { properties.result = 1; { - var error = $root.google.rpc.Status.verify(message.error); + var error = $root.google.rpc.Status.verify(message.error, long + 1); if (error) return "error." + error; } @@ -57979,7 +60099,7 @@ return "result: multiple values"; properties.result = 1; { - var error = $root.google.protobuf.Any.verify(message.response); + var error = $root.google.protobuf.Any.verify(message.response, long + 1); if (error) return "response." + error; } @@ -57995,28 +60115,32 @@ * @param {Object.} object Plain object * @returns {google.longrunning.Operation} Operation */ - Operation.fromObject = function fromObject(object) { + Operation.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.Operation) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.Operation(); if (object.name != null) message.name = String(object.name); if (object.metadata != null) { if (typeof object.metadata !== "object") throw TypeError(".google.longrunning.Operation.metadata: object expected"); - message.metadata = $root.google.protobuf.Any.fromObject(object.metadata); + message.metadata = $root.google.protobuf.Any.fromObject(object.metadata, long + 1); } if (object.done != null) message.done = Boolean(object.done); if (object.error != null) { if (typeof object.error !== "object") throw TypeError(".google.longrunning.Operation.error: object expected"); - message.error = $root.google.rpc.Status.fromObject(object.error); + message.error = $root.google.rpc.Status.fromObject(object.error, long + 1); } if (object.response != null) { if (typeof object.response !== "object") throw TypeError(".google.longrunning.Operation.response: object expected"); - message.response = $root.google.protobuf.Any.fromObject(object.response); + message.response = $root.google.protobuf.Any.fromObject(object.response, long + 1); } return message; }; @@ -58107,7 +60231,7 @@ function GetOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58172,9 +60296,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetOperationRequest.decode = function decode(reader, length, error) { + GetOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.GetOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58186,7 +60314,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58217,9 +60345,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetOperationRequest.verify = function verify(message) { + GetOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -58234,9 +60366,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.GetOperationRequest} GetOperationRequest */ - GetOperationRequest.fromObject = function fromObject(object) { + GetOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.GetOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.GetOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -58315,7 +60451,7 @@ function ListOperationsRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58410,9 +60546,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsRequest.decode = function decode(reader, length, error) { + ListOperationsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58436,7 +60576,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58467,9 +60607,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsRequest.verify = function verify(message) { + ListOperationsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -58493,9 +60637,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest */ - ListOperationsRequest.fromObject = function fromObject(object) { + ListOperationsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsRequest(); if (object.name != null) message.name = String(object.name); @@ -58589,7 +60737,7 @@ this.operations = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58665,9 +60813,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - ListOperationsResponse.decode = function decode(reader, length, error) { + ListOperationsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58677,7 +60829,7 @@ case 1: { if (!(message.operations && message.operations.length)) message.operations = []; - message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32())); + message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { @@ -58685,7 +60837,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58716,14 +60868,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - ListOperationsResponse.verify = function verify(message) { + ListOperationsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.operations != null && message.hasOwnProperty("operations")) { if (!Array.isArray(message.operations)) return "operations: array expected"; for (var i = 0; i < message.operations.length; ++i) { - var error = $root.google.longrunning.Operation.verify(message.operations[i]); + var error = $root.google.longrunning.Operation.verify(message.operations[i], long + 1); if (error) return "operations." + error; } @@ -58742,9 +60898,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse */ - ListOperationsResponse.fromObject = function fromObject(object) { + ListOperationsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.ListOperationsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.ListOperationsResponse(); if (object.operations) { if (!Array.isArray(object.operations)) @@ -58753,7 +60913,7 @@ for (var i = 0; i < object.operations.length; ++i) { if (typeof object.operations[i] !== "object") throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected"); - message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i]); + message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i], long + 1); } } if (object.nextPageToken != null) @@ -58837,7 +60997,7 @@ function CancelOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -58902,9 +61062,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CancelOperationRequest.decode = function decode(reader, length, error) { + CancelOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.CancelOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -58916,7 +61080,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -58947,9 +61111,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CancelOperationRequest.verify = function verify(message) { + CancelOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -58964,9 +61132,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest */ - CancelOperationRequest.fromObject = function fromObject(object) { + CancelOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.CancelOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.CancelOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -59042,7 +61214,7 @@ function DeleteOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59107,9 +61279,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - DeleteOperationRequest.decode = function decode(reader, length, error) { + DeleteOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.DeleteOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59121,7 +61297,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59152,9 +61328,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - DeleteOperationRequest.verify = function verify(message) { + DeleteOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; @@ -59169,9 +61349,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest */ - DeleteOperationRequest.fromObject = function fromObject(object) { + DeleteOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.DeleteOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.DeleteOperationRequest(); if (object.name != null) message.name = String(object.name); @@ -59248,7 +61432,7 @@ function WaitOperationRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59323,9 +61507,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - WaitOperationRequest.decode = function decode(reader, length, error) { + WaitOperationRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.WaitOperationRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59337,11 +61525,11 @@ break; } case 2: { - message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32()); + message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59372,14 +61560,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - WaitOperationRequest.verify = function verify(message) { + WaitOperationRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.name != null && message.hasOwnProperty("name")) if (!$util.isString(message.name)) return "name: string expected"; if (message.timeout != null && message.hasOwnProperty("timeout")) { - var error = $root.google.protobuf.Duration.verify(message.timeout); + var error = $root.google.protobuf.Duration.verify(message.timeout, long + 1); if (error) return "timeout." + error; } @@ -59394,16 +61586,20 @@ * @param {Object.} object Plain object * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest */ - WaitOperationRequest.fromObject = function fromObject(object) { + WaitOperationRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.WaitOperationRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.WaitOperationRequest(); if (object.name != null) message.name = String(object.name); if (object.timeout != null) { if (typeof object.timeout !== "object") throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected"); - message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout); + message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout, long + 1); } return message; }; @@ -59482,7 +61678,7 @@ function OperationInfo(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59557,9 +61753,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - OperationInfo.decode = function decode(reader, length, error) { + OperationInfo.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.OperationInfo(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59575,7 +61775,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59606,9 +61806,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - OperationInfo.verify = function verify(message) { + OperationInfo.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.responseType != null && message.hasOwnProperty("responseType")) if (!$util.isString(message.responseType)) return "responseType: string expected"; @@ -59626,9 +61830,13 @@ * @param {Object.} object Plain object * @returns {google.longrunning.OperationInfo} OperationInfo */ - OperationInfo.fromObject = function fromObject(object) { + OperationInfo.fromObject = function fromObject(object, long) { if (object instanceof $root.google.longrunning.OperationInfo) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.longrunning.OperationInfo(); if (object.responseType != null) message.responseType = String(object.responseType); @@ -59725,7 +61933,7 @@ this.details = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -59811,9 +62019,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Status.decode = function decode(reader, length, error) { + Status.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.rpc.Status(); while (reader.pos < end) { var tag = reader.uint32(); @@ -59831,11 +62043,11 @@ case 3: { if (!(message.details && message.details.length)) message.details = []; - message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32())); + message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -59866,9 +62078,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Status.verify = function verify(message) { + Status.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.code != null && message.hasOwnProperty("code")) if (!$util.isInteger(message.code)) return "code: integer expected"; @@ -59879,7 +62095,7 @@ if (!Array.isArray(message.details)) return "details: array expected"; for (var i = 0; i < message.details.length; ++i) { - var error = $root.google.protobuf.Any.verify(message.details[i]); + var error = $root.google.protobuf.Any.verify(message.details[i], long + 1); if (error) return "details." + error; } @@ -59895,9 +62111,13 @@ * @param {Object.} object Plain object * @returns {google.rpc.Status} Status */ - Status.fromObject = function fromObject(object) { + Status.fromObject = function fromObject(object, long) { if (object instanceof $root.google.rpc.Status) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.rpc.Status(); if (object.code != null) message.code = object.code | 0; @@ -59910,7 +62130,7 @@ for (var i = 0; i < object.details.length; ++i) { if (typeof object.details[i] !== "object") throw TypeError(".google.rpc.Status.details: object expected"); - message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]); + message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i], long + 1); } } return message; @@ -60153,7 +62373,7 @@ function SetIamPolicyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60238,9 +62458,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - SetIamPolicyRequest.decode = function decode(reader, length, error) { + SetIamPolicyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.SetIamPolicyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60252,15 +62476,15 @@ break; } case 2: { - message.policy = $root.google.iam.v1.Policy.decode(reader, reader.uint32()); + message.policy = $root.google.iam.v1.Policy.decode(reader, reader.uint32(), undefined, long + 1); break; } case 3: { - message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32()); + message.updateMask = $root.google.protobuf.FieldMask.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60291,19 +62515,23 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - SetIamPolicyRequest.verify = function verify(message) { + SetIamPolicyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.resource != null && message.hasOwnProperty("resource")) if (!$util.isString(message.resource)) return "resource: string expected"; if (message.policy != null && message.hasOwnProperty("policy")) { - var error = $root.google.iam.v1.Policy.verify(message.policy); + var error = $root.google.iam.v1.Policy.verify(message.policy, long + 1); if (error) return "policy." + error; } if (message.updateMask != null && message.hasOwnProperty("updateMask")) { - var error = $root.google.protobuf.FieldMask.verify(message.updateMask); + var error = $root.google.protobuf.FieldMask.verify(message.updateMask, long + 1); if (error) return "updateMask." + error; } @@ -60318,21 +62546,25 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.SetIamPolicyRequest} SetIamPolicyRequest */ - SetIamPolicyRequest.fromObject = function fromObject(object) { + SetIamPolicyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.SetIamPolicyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.SetIamPolicyRequest(); if (object.resource != null) message.resource = String(object.resource); if (object.policy != null) { if (typeof object.policy !== "object") throw TypeError(".google.iam.v1.SetIamPolicyRequest.policy: object expected"); - message.policy = $root.google.iam.v1.Policy.fromObject(object.policy); + message.policy = $root.google.iam.v1.Policy.fromObject(object.policy, long + 1); } if (object.updateMask != null) { if (typeof object.updateMask !== "object") throw TypeError(".google.iam.v1.SetIamPolicyRequest.updateMask: object expected"); - message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask); + message.updateMask = $root.google.protobuf.FieldMask.fromObject(object.updateMask, long + 1); } return message; }; @@ -60414,7 +62646,7 @@ function GetIamPolicyRequest(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60489,9 +62721,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetIamPolicyRequest.decode = function decode(reader, length, error) { + GetIamPolicyRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.GetIamPolicyRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60503,11 +62739,11 @@ break; } case 2: { - message.options = $root.google.iam.v1.GetPolicyOptions.decode(reader, reader.uint32()); + message.options = $root.google.iam.v1.GetPolicyOptions.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60538,14 +62774,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetIamPolicyRequest.verify = function verify(message) { + GetIamPolicyRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.resource != null && message.hasOwnProperty("resource")) if (!$util.isString(message.resource)) return "resource: string expected"; if (message.options != null && message.hasOwnProperty("options")) { - var error = $root.google.iam.v1.GetPolicyOptions.verify(message.options); + var error = $root.google.iam.v1.GetPolicyOptions.verify(message.options, long + 1); if (error) return "options." + error; } @@ -60560,16 +62800,20 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.GetIamPolicyRequest} GetIamPolicyRequest */ - GetIamPolicyRequest.fromObject = function fromObject(object) { + GetIamPolicyRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.GetIamPolicyRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.GetIamPolicyRequest(); if (object.resource != null) message.resource = String(object.resource); if (object.options != null) { if (typeof object.options !== "object") throw TypeError(".google.iam.v1.GetIamPolicyRequest.options: object expected"); - message.options = $root.google.iam.v1.GetPolicyOptions.fromObject(object.options); + message.options = $root.google.iam.v1.GetPolicyOptions.fromObject(object.options, long + 1); } return message; }; @@ -60649,7 +62893,7 @@ this.permissions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60725,9 +62969,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TestIamPermissionsRequest.decode = function decode(reader, length, error) { + TestIamPermissionsRequest.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.TestIamPermissionsRequest(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60745,7 +62993,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -60776,9 +63024,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TestIamPermissionsRequest.verify = function verify(message) { + TestIamPermissionsRequest.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.resource != null && message.hasOwnProperty("resource")) if (!$util.isString(message.resource)) return "resource: string expected"; @@ -60800,9 +63052,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.TestIamPermissionsRequest} TestIamPermissionsRequest */ - TestIamPermissionsRequest.fromObject = function fromObject(object) { + TestIamPermissionsRequest.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.TestIamPermissionsRequest) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.TestIamPermissionsRequest(); if (object.resource != null) message.resource = String(object.resource); @@ -60893,7 +63149,7 @@ this.permissions = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -60959,9 +63215,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - TestIamPermissionsResponse.decode = function decode(reader, length, error) { + TestIamPermissionsResponse.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.TestIamPermissionsResponse(); while (reader.pos < end) { var tag = reader.uint32(); @@ -60975,7 +63235,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61006,9 +63266,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - TestIamPermissionsResponse.verify = function verify(message) { + TestIamPermissionsResponse.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.permissions != null && message.hasOwnProperty("permissions")) { if (!Array.isArray(message.permissions)) return "permissions: array expected"; @@ -61027,9 +63291,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.TestIamPermissionsResponse} TestIamPermissionsResponse */ - TestIamPermissionsResponse.fromObject = function fromObject(object) { + TestIamPermissionsResponse.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.TestIamPermissionsResponse) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.TestIamPermissionsResponse(); if (object.permissions) { if (!Array.isArray(object.permissions)) @@ -61113,7 +63381,7 @@ function GetPolicyOptions(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61178,9 +63446,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - GetPolicyOptions.decode = function decode(reader, length, error) { + GetPolicyOptions.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.GetPolicyOptions(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61192,7 +63464,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61223,9 +63495,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - GetPolicyOptions.verify = function verify(message) { + GetPolicyOptions.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.requestedPolicyVersion != null && message.hasOwnProperty("requestedPolicyVersion")) if (!$util.isInteger(message.requestedPolicyVersion)) return "requestedPolicyVersion: integer expected"; @@ -61240,9 +63516,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.GetPolicyOptions} GetPolicyOptions */ - GetPolicyOptions.fromObject = function fromObject(object) { + GetPolicyOptions.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.GetPolicyOptions) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.GetPolicyOptions(); if (object.requestedPolicyVersion != null) message.requestedPolicyVersion = object.requestedPolicyVersion | 0; @@ -61323,7 +63603,7 @@ this.auditConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61420,9 +63700,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Policy.decode = function decode(reader, length, error) { + Policy.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.Policy(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61436,13 +63720,13 @@ case 4: { if (!(message.bindings && message.bindings.length)) message.bindings = []; - message.bindings.push($root.google.iam.v1.Binding.decode(reader, reader.uint32())); + message.bindings.push($root.google.iam.v1.Binding.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 6: { if (!(message.auditConfigs && message.auditConfigs.length)) message.auditConfigs = []; - message.auditConfigs.push($root.google.iam.v1.AuditConfig.decode(reader, reader.uint32())); + message.auditConfigs.push($root.google.iam.v1.AuditConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 3: { @@ -61450,7 +63734,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61481,9 +63765,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Policy.verify = function verify(message) { + Policy.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.version != null && message.hasOwnProperty("version")) if (!$util.isInteger(message.version)) return "version: integer expected"; @@ -61491,7 +63779,7 @@ if (!Array.isArray(message.bindings)) return "bindings: array expected"; for (var i = 0; i < message.bindings.length; ++i) { - var error = $root.google.iam.v1.Binding.verify(message.bindings[i]); + var error = $root.google.iam.v1.Binding.verify(message.bindings[i], long + 1); if (error) return "bindings." + error; } @@ -61500,7 +63788,7 @@ if (!Array.isArray(message.auditConfigs)) return "auditConfigs: array expected"; for (var i = 0; i < message.auditConfigs.length; ++i) { - var error = $root.google.iam.v1.AuditConfig.verify(message.auditConfigs[i]); + var error = $root.google.iam.v1.AuditConfig.verify(message.auditConfigs[i], long + 1); if (error) return "auditConfigs." + error; } @@ -61519,9 +63807,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.Policy} Policy */ - Policy.fromObject = function fromObject(object) { + Policy.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.Policy) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.Policy(); if (object.version != null) message.version = object.version | 0; @@ -61532,7 +63824,7 @@ for (var i = 0; i < object.bindings.length; ++i) { if (typeof object.bindings[i] !== "object") throw TypeError(".google.iam.v1.Policy.bindings: object expected"); - message.bindings[i] = $root.google.iam.v1.Binding.fromObject(object.bindings[i]); + message.bindings[i] = $root.google.iam.v1.Binding.fromObject(object.bindings[i], long + 1); } } if (object.auditConfigs) { @@ -61542,7 +63834,7 @@ for (var i = 0; i < object.auditConfigs.length; ++i) { if (typeof object.auditConfigs[i] !== "object") throw TypeError(".google.iam.v1.Policy.auditConfigs: object expected"); - message.auditConfigs[i] = $root.google.iam.v1.AuditConfig.fromObject(object.auditConfigs[i]); + message.auditConfigs[i] = $root.google.iam.v1.AuditConfig.fromObject(object.auditConfigs[i], long + 1); } } if (object.etag != null) @@ -61649,7 +63941,7 @@ this.members = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61735,9 +64027,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Binding.decode = function decode(reader, length, error) { + Binding.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.Binding(); while (reader.pos < end) { var tag = reader.uint32(); @@ -61755,11 +64051,11 @@ break; } case 3: { - message.condition = $root.google.type.Expr.decode(reader, reader.uint32()); + message.condition = $root.google.type.Expr.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -61790,9 +64086,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Binding.verify = function verify(message) { + Binding.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.role != null && message.hasOwnProperty("role")) if (!$util.isString(message.role)) return "role: string expected"; @@ -61804,7 +64104,7 @@ return "members: string[] expected"; } if (message.condition != null && message.hasOwnProperty("condition")) { - var error = $root.google.type.Expr.verify(message.condition); + var error = $root.google.type.Expr.verify(message.condition, long + 1); if (error) return "condition." + error; } @@ -61819,9 +64119,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.Binding} Binding */ - Binding.fromObject = function fromObject(object) { + Binding.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.Binding) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.Binding(); if (object.role != null) message.role = String(object.role); @@ -61835,7 +64139,7 @@ if (object.condition != null) { if (typeof object.condition !== "object") throw TypeError(".google.iam.v1.Binding.condition: object expected"); - message.condition = $root.google.type.Expr.fromObject(object.condition); + message.condition = $root.google.type.Expr.fromObject(object.condition, long + 1); } return message; }; @@ -61922,7 +64226,7 @@ this.auditLogConfigs = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -61998,9 +64302,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuditConfig.decode = function decode(reader, length, error) { + AuditConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.AuditConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62014,11 +64322,11 @@ case 3: { if (!(message.auditLogConfigs && message.auditLogConfigs.length)) message.auditLogConfigs = []; - message.auditLogConfigs.push($root.google.iam.v1.AuditLogConfig.decode(reader, reader.uint32())); + message.auditLogConfigs.push($root.google.iam.v1.AuditLogConfig.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62049,9 +64357,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuditConfig.verify = function verify(message) { + AuditConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.service != null && message.hasOwnProperty("service")) if (!$util.isString(message.service)) return "service: string expected"; @@ -62059,7 +64371,7 @@ if (!Array.isArray(message.auditLogConfigs)) return "auditLogConfigs: array expected"; for (var i = 0; i < message.auditLogConfigs.length; ++i) { - var error = $root.google.iam.v1.AuditLogConfig.verify(message.auditLogConfigs[i]); + var error = $root.google.iam.v1.AuditLogConfig.verify(message.auditLogConfigs[i], long + 1); if (error) return "auditLogConfigs." + error; } @@ -62075,9 +64387,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.AuditConfig} AuditConfig */ - AuditConfig.fromObject = function fromObject(object) { + AuditConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.AuditConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.AuditConfig(); if (object.service != null) message.service = String(object.service); @@ -62088,7 +64404,7 @@ for (var i = 0; i < object.auditLogConfigs.length; ++i) { if (typeof object.auditLogConfigs[i] !== "object") throw TypeError(".google.iam.v1.AuditConfig.auditLogConfigs: object expected"); - message.auditLogConfigs[i] = $root.google.iam.v1.AuditLogConfig.fromObject(object.auditLogConfigs[i]); + message.auditLogConfigs[i] = $root.google.iam.v1.AuditLogConfig.fromObject(object.auditLogConfigs[i], long + 1); } } return message; @@ -62172,7 +64488,7 @@ this.exemptedMembers = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -62248,9 +64564,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuditLogConfig.decode = function decode(reader, length, error) { + AuditLogConfig.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.AuditLogConfig(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62268,7 +64588,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62299,9 +64619,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuditLogConfig.verify = function verify(message) { + AuditLogConfig.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.logType != null && message.hasOwnProperty("logType")) switch (message.logType) { default: @@ -62330,9 +64654,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.AuditLogConfig} AuditLogConfig */ - AuditLogConfig.fromObject = function fromObject(object) { + AuditLogConfig.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.AuditLogConfig) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.AuditLogConfig(); switch (object.logType) { default: @@ -62465,7 +64793,7 @@ this.auditConfigDeltas = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -62542,9 +64870,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - PolicyDelta.decode = function decode(reader, length, error) { + PolicyDelta.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.PolicyDelta(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62554,17 +64886,17 @@ case 1: { if (!(message.bindingDeltas && message.bindingDeltas.length)) message.bindingDeltas = []; - message.bindingDeltas.push($root.google.iam.v1.BindingDelta.decode(reader, reader.uint32())); + message.bindingDeltas.push($root.google.iam.v1.BindingDelta.decode(reader, reader.uint32(), undefined, long + 1)); break; } case 2: { if (!(message.auditConfigDeltas && message.auditConfigDeltas.length)) message.auditConfigDeltas = []; - message.auditConfigDeltas.push($root.google.iam.v1.AuditConfigDelta.decode(reader, reader.uint32())); + message.auditConfigDeltas.push($root.google.iam.v1.AuditConfigDelta.decode(reader, reader.uint32(), undefined, long + 1)); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62595,14 +64927,18 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - PolicyDelta.verify = function verify(message) { + PolicyDelta.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.bindingDeltas != null && message.hasOwnProperty("bindingDeltas")) { if (!Array.isArray(message.bindingDeltas)) return "bindingDeltas: array expected"; for (var i = 0; i < message.bindingDeltas.length; ++i) { - var error = $root.google.iam.v1.BindingDelta.verify(message.bindingDeltas[i]); + var error = $root.google.iam.v1.BindingDelta.verify(message.bindingDeltas[i], long + 1); if (error) return "bindingDeltas." + error; } @@ -62611,7 +64947,7 @@ if (!Array.isArray(message.auditConfigDeltas)) return "auditConfigDeltas: array expected"; for (var i = 0; i < message.auditConfigDeltas.length; ++i) { - var error = $root.google.iam.v1.AuditConfigDelta.verify(message.auditConfigDeltas[i]); + var error = $root.google.iam.v1.AuditConfigDelta.verify(message.auditConfigDeltas[i], long + 1); if (error) return "auditConfigDeltas." + error; } @@ -62627,9 +64963,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.PolicyDelta} PolicyDelta */ - PolicyDelta.fromObject = function fromObject(object) { + PolicyDelta.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.PolicyDelta) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.PolicyDelta(); if (object.bindingDeltas) { if (!Array.isArray(object.bindingDeltas)) @@ -62638,7 +64978,7 @@ for (var i = 0; i < object.bindingDeltas.length; ++i) { if (typeof object.bindingDeltas[i] !== "object") throw TypeError(".google.iam.v1.PolicyDelta.bindingDeltas: object expected"); - message.bindingDeltas[i] = $root.google.iam.v1.BindingDelta.fromObject(object.bindingDeltas[i]); + message.bindingDeltas[i] = $root.google.iam.v1.BindingDelta.fromObject(object.bindingDeltas[i], long + 1); } } if (object.auditConfigDeltas) { @@ -62648,7 +64988,7 @@ for (var i = 0; i < object.auditConfigDeltas.length; ++i) { if (typeof object.auditConfigDeltas[i] !== "object") throw TypeError(".google.iam.v1.PolicyDelta.auditConfigDeltas: object expected"); - message.auditConfigDeltas[i] = $root.google.iam.v1.AuditConfigDelta.fromObject(object.auditConfigDeltas[i]); + message.auditConfigDeltas[i] = $root.google.iam.v1.AuditConfigDelta.fromObject(object.auditConfigDeltas[i], long + 1); } } return message; @@ -62736,7 +65076,7 @@ function BindingDelta(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -62831,9 +65171,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - BindingDelta.decode = function decode(reader, length, error) { + BindingDelta.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.BindingDelta(); while (reader.pos < end) { var tag = reader.uint32(); @@ -62853,11 +65197,11 @@ break; } case 4: { - message.condition = $root.google.type.Expr.decode(reader, reader.uint32()); + message.condition = $root.google.type.Expr.decode(reader, reader.uint32(), undefined, long + 1); break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -62888,9 +65232,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - BindingDelta.verify = function verify(message) { + BindingDelta.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.action != null && message.hasOwnProperty("action")) switch (message.action) { default: @@ -62907,7 +65255,7 @@ if (!$util.isString(message.member)) return "member: string expected"; if (message.condition != null && message.hasOwnProperty("condition")) { - var error = $root.google.type.Expr.verify(message.condition); + var error = $root.google.type.Expr.verify(message.condition, long + 1); if (error) return "condition." + error; } @@ -62922,9 +65270,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.BindingDelta} BindingDelta */ - BindingDelta.fromObject = function fromObject(object) { + BindingDelta.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.BindingDelta) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.BindingDelta(); switch (object.action) { default: @@ -62953,7 +65305,7 @@ if (object.condition != null) { if (typeof object.condition !== "object") throw TypeError(".google.iam.v1.BindingDelta.condition: object expected"); - message.condition = $root.google.type.Expr.fromObject(object.condition); + message.condition = $root.google.type.Expr.fromObject(object.condition, long + 1); } return message; }; @@ -63056,7 +65408,7 @@ function AuditConfigDelta(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -63151,9 +65503,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - AuditConfigDelta.decode = function decode(reader, length, error) { + AuditConfigDelta.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.iam.v1.AuditConfigDelta(); while (reader.pos < end) { var tag = reader.uint32(); @@ -63177,7 +65533,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -63208,9 +65564,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - AuditConfigDelta.verify = function verify(message) { + AuditConfigDelta.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.action != null && message.hasOwnProperty("action")) switch (message.action) { default: @@ -63240,9 +65600,13 @@ * @param {Object.} object Plain object * @returns {google.iam.v1.AuditConfigDelta} AuditConfigDelta */ - AuditConfigDelta.fromObject = function fromObject(object) { + AuditConfigDelta.fromObject = function fromObject(object, long) { if (object instanceof $root.google.iam.v1.AuditConfigDelta) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.iam.v1.AuditConfigDelta(); switch (object.action) { default: @@ -63386,7 +65750,7 @@ function Expr(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) + if (properties[keys[i]] != null && keys[i] !== "__proto__") this[keys[i]] = properties[keys[i]]; } @@ -63481,9 +65845,13 @@ * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - Expr.decode = function decode(reader, length, error) { + Expr.decode = function decode(reader, length, error, long) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); + if (long === undefined) + long = 0; + if (long > $Reader.recursionLimit) + throw Error("maximum nesting depth exceeded"); var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.type.Expr(); while (reader.pos < end) { var tag = reader.uint32(); @@ -63507,7 +65875,7 @@ break; } default: - reader.skipType(tag & 7); + reader.skipType(tag & 7, long); break; } } @@ -63538,9 +65906,13 @@ * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - Expr.verify = function verify(message) { + Expr.verify = function verify(message, long) { if (typeof message !== "object" || message === null) return "object expected"; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + return "maximum nesting depth exceeded"; if (message.expression != null && message.hasOwnProperty("expression")) if (!$util.isString(message.expression)) return "expression: string expected"; @@ -63564,9 +65936,13 @@ * @param {Object.} object Plain object * @returns {google.type.Expr} Expr */ - Expr.fromObject = function fromObject(object) { + Expr.fromObject = function fromObject(object, long) { if (object instanceof $root.google.type.Expr) return object; + if (long === undefined) + long = 0; + if (long > $util.recursionLimit) + throw Error("maximum nesting depth exceeded"); var message = new $root.google.type.Expr(); if (object.expression != null) message.expression = String(object.expression);