UNPKG

1.69 MBJavaScriptView Raw
1// Copyright 2021 Google LLC
2//
3// Licensed under the Apache License, Version 2.0 (the "License");
4// you may not use this file except in compliance with the License.
5// You may obtain a copy of the License at
6//
7// http://www.apache.org/licenses/LICENSE-2.0
8//
9// Unless required by applicable law or agreed to in writing, software
10// distributed under the License is distributed on an "AS IS" BASIS,
11// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12// See the License for the specific language governing permissions and
13// limitations under the License.
14
15/*eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars*/
16(function(global, factory) { /* global define, require, module */
17
18 /* AMD */ if (typeof define === 'function' && define.amd)
19 define(["protobufjs/minimal"], factory);
20
21 /* CommonJS */ else if (typeof require === 'function' && typeof module === 'object' && module && module.exports)
22 module.exports = factory(require("google-gax").protobufMinimal);
23
24})(this, function($protobuf) {
25 "use strict";
26
27 // Common aliases
28 var $Reader = $protobuf.Reader, $Writer = $protobuf.Writer, $util = $protobuf.util;
29
30 // Exported root namespace
31 var $root = $protobuf.roots._google_cloud_datastore_protos || ($protobuf.roots._google_cloud_datastore_protos = {});
32
33 $root.google = (function() {
34
35 /**
36 * Namespace google.
37 * @exports google
38 * @namespace
39 */
40 var google = {};
41
42 google.datastore = (function() {
43
44 /**
45 * Namespace datastore.
46 * @memberof google
47 * @namespace
48 */
49 var datastore = {};
50
51 datastore.admin = (function() {
52
53 /**
54 * Namespace admin.
55 * @memberof google.datastore
56 * @namespace
57 */
58 var admin = {};
59
60 admin.v1 = (function() {
61
62 /**
63 * Namespace v1.
64 * @memberof google.datastore.admin
65 * @namespace
66 */
67 var v1 = {};
68
69 v1.DatastoreAdmin = (function() {
70
71 /**
72 * Constructs a new DatastoreAdmin service.
73 * @memberof google.datastore.admin.v1
74 * @classdesc Represents a DatastoreAdmin
75 * @extends $protobuf.rpc.Service
76 * @constructor
77 * @param {$protobuf.RPCImpl} rpcImpl RPC implementation
78 * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
79 * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
80 */
81 function DatastoreAdmin(rpcImpl, requestDelimited, responseDelimited) {
82 $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
83 }
84
85 (DatastoreAdmin.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = DatastoreAdmin;
86
87 /**
88 * Creates new DatastoreAdmin service using the specified rpc implementation.
89 * @function create
90 * @memberof google.datastore.admin.v1.DatastoreAdmin
91 * @static
92 * @param {$protobuf.RPCImpl} rpcImpl RPC implementation
93 * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
94 * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
95 * @returns {DatastoreAdmin} RPC service. Useful where requests and/or responses are streamed.
96 */
97 DatastoreAdmin.create = function create(rpcImpl, requestDelimited, responseDelimited) {
98 return new this(rpcImpl, requestDelimited, responseDelimited);
99 };
100
101 /**
102 * Callback as used by {@link google.datastore.admin.v1.DatastoreAdmin#exportEntities}.
103 * @memberof google.datastore.admin.v1.DatastoreAdmin
104 * @typedef ExportEntitiesCallback
105 * @type {function}
106 * @param {Error|null} error Error, if any
107 * @param {google.longrunning.Operation} [response] Operation
108 */
109
110 /**
111 * Calls ExportEntities.
112 * @function exportEntities
113 * @memberof google.datastore.admin.v1.DatastoreAdmin
114 * @instance
115 * @param {google.datastore.admin.v1.IExportEntitiesRequest} request ExportEntitiesRequest message or plain object
116 * @param {google.datastore.admin.v1.DatastoreAdmin.ExportEntitiesCallback} callback Node-style callback called with the error, if any, and Operation
117 * @returns {undefined}
118 * @variation 1
119 */
120 Object.defineProperty(DatastoreAdmin.prototype.exportEntities = function exportEntities(request, callback) {
121 return this.rpcCall(exportEntities, $root.google.datastore.admin.v1.ExportEntitiesRequest, $root.google.longrunning.Operation, request, callback);
122 }, "name", { value: "ExportEntities" });
123
124 /**
125 * Calls ExportEntities.
126 * @function exportEntities
127 * @memberof google.datastore.admin.v1.DatastoreAdmin
128 * @instance
129 * @param {google.datastore.admin.v1.IExportEntitiesRequest} request ExportEntitiesRequest message or plain object
130 * @returns {Promise<google.longrunning.Operation>} Promise
131 * @variation 2
132 */
133
134 /**
135 * Callback as used by {@link google.datastore.admin.v1.DatastoreAdmin#importEntities}.
136 * @memberof google.datastore.admin.v1.DatastoreAdmin
137 * @typedef ImportEntitiesCallback
138 * @type {function}
139 * @param {Error|null} error Error, if any
140 * @param {google.longrunning.Operation} [response] Operation
141 */
142
143 /**
144 * Calls ImportEntities.
145 * @function importEntities
146 * @memberof google.datastore.admin.v1.DatastoreAdmin
147 * @instance
148 * @param {google.datastore.admin.v1.IImportEntitiesRequest} request ImportEntitiesRequest message or plain object
149 * @param {google.datastore.admin.v1.DatastoreAdmin.ImportEntitiesCallback} callback Node-style callback called with the error, if any, and Operation
150 * @returns {undefined}
151 * @variation 1
152 */
153 Object.defineProperty(DatastoreAdmin.prototype.importEntities = function importEntities(request, callback) {
154 return this.rpcCall(importEntities, $root.google.datastore.admin.v1.ImportEntitiesRequest, $root.google.longrunning.Operation, request, callback);
155 }, "name", { value: "ImportEntities" });
156
157 /**
158 * Calls ImportEntities.
159 * @function importEntities
160 * @memberof google.datastore.admin.v1.DatastoreAdmin
161 * @instance
162 * @param {google.datastore.admin.v1.IImportEntitiesRequest} request ImportEntitiesRequest message or plain object
163 * @returns {Promise<google.longrunning.Operation>} Promise
164 * @variation 2
165 */
166
167 /**
168 * Callback as used by {@link google.datastore.admin.v1.DatastoreAdmin#createIndex}.
169 * @memberof google.datastore.admin.v1.DatastoreAdmin
170 * @typedef CreateIndexCallback
171 * @type {function}
172 * @param {Error|null} error Error, if any
173 * @param {google.longrunning.Operation} [response] Operation
174 */
175
176 /**
177 * Calls CreateIndex.
178 * @function createIndex
179 * @memberof google.datastore.admin.v1.DatastoreAdmin
180 * @instance
181 * @param {google.datastore.admin.v1.ICreateIndexRequest} request CreateIndexRequest message or plain object
182 * @param {google.datastore.admin.v1.DatastoreAdmin.CreateIndexCallback} callback Node-style callback called with the error, if any, and Operation
183 * @returns {undefined}
184 * @variation 1
185 */
186 Object.defineProperty(DatastoreAdmin.prototype.createIndex = function createIndex(request, callback) {
187 return this.rpcCall(createIndex, $root.google.datastore.admin.v1.CreateIndexRequest, $root.google.longrunning.Operation, request, callback);
188 }, "name", { value: "CreateIndex" });
189
190 /**
191 * Calls CreateIndex.
192 * @function createIndex
193 * @memberof google.datastore.admin.v1.DatastoreAdmin
194 * @instance
195 * @param {google.datastore.admin.v1.ICreateIndexRequest} request CreateIndexRequest message or plain object
196 * @returns {Promise<google.longrunning.Operation>} Promise
197 * @variation 2
198 */
199
200 /**
201 * Callback as used by {@link google.datastore.admin.v1.DatastoreAdmin#deleteIndex}.
202 * @memberof google.datastore.admin.v1.DatastoreAdmin
203 * @typedef DeleteIndexCallback
204 * @type {function}
205 * @param {Error|null} error Error, if any
206 * @param {google.longrunning.Operation} [response] Operation
207 */
208
209 /**
210 * Calls DeleteIndex.
211 * @function deleteIndex
212 * @memberof google.datastore.admin.v1.DatastoreAdmin
213 * @instance
214 * @param {google.datastore.admin.v1.IDeleteIndexRequest} request DeleteIndexRequest message or plain object
215 * @param {google.datastore.admin.v1.DatastoreAdmin.DeleteIndexCallback} callback Node-style callback called with the error, if any, and Operation
216 * @returns {undefined}
217 * @variation 1
218 */
219 Object.defineProperty(DatastoreAdmin.prototype.deleteIndex = function deleteIndex(request, callback) {
220 return this.rpcCall(deleteIndex, $root.google.datastore.admin.v1.DeleteIndexRequest, $root.google.longrunning.Operation, request, callback);
221 }, "name", { value: "DeleteIndex" });
222
223 /**
224 * Calls DeleteIndex.
225 * @function deleteIndex
226 * @memberof google.datastore.admin.v1.DatastoreAdmin
227 * @instance
228 * @param {google.datastore.admin.v1.IDeleteIndexRequest} request DeleteIndexRequest message or plain object
229 * @returns {Promise<google.longrunning.Operation>} Promise
230 * @variation 2
231 */
232
233 /**
234 * Callback as used by {@link google.datastore.admin.v1.DatastoreAdmin#getIndex}.
235 * @memberof google.datastore.admin.v1.DatastoreAdmin
236 * @typedef GetIndexCallback
237 * @type {function}
238 * @param {Error|null} error Error, if any
239 * @param {google.datastore.admin.v1.Index} [response] Index
240 */
241
242 /**
243 * Calls GetIndex.
244 * @function getIndex
245 * @memberof google.datastore.admin.v1.DatastoreAdmin
246 * @instance
247 * @param {google.datastore.admin.v1.IGetIndexRequest} request GetIndexRequest message or plain object
248 * @param {google.datastore.admin.v1.DatastoreAdmin.GetIndexCallback} callback Node-style callback called with the error, if any, and Index
249 * @returns {undefined}
250 * @variation 1
251 */
252 Object.defineProperty(DatastoreAdmin.prototype.getIndex = function getIndex(request, callback) {
253 return this.rpcCall(getIndex, $root.google.datastore.admin.v1.GetIndexRequest, $root.google.datastore.admin.v1.Index, request, callback);
254 }, "name", { value: "GetIndex" });
255
256 /**
257 * Calls GetIndex.
258 * @function getIndex
259 * @memberof google.datastore.admin.v1.DatastoreAdmin
260 * @instance
261 * @param {google.datastore.admin.v1.IGetIndexRequest} request GetIndexRequest message or plain object
262 * @returns {Promise<google.datastore.admin.v1.Index>} Promise
263 * @variation 2
264 */
265
266 /**
267 * Callback as used by {@link google.datastore.admin.v1.DatastoreAdmin#listIndexes}.
268 * @memberof google.datastore.admin.v1.DatastoreAdmin
269 * @typedef ListIndexesCallback
270 * @type {function}
271 * @param {Error|null} error Error, if any
272 * @param {google.datastore.admin.v1.ListIndexesResponse} [response] ListIndexesResponse
273 */
274
275 /**
276 * Calls ListIndexes.
277 * @function listIndexes
278 * @memberof google.datastore.admin.v1.DatastoreAdmin
279 * @instance
280 * @param {google.datastore.admin.v1.IListIndexesRequest} request ListIndexesRequest message or plain object
281 * @param {google.datastore.admin.v1.DatastoreAdmin.ListIndexesCallback} callback Node-style callback called with the error, if any, and ListIndexesResponse
282 * @returns {undefined}
283 * @variation 1
284 */
285 Object.defineProperty(DatastoreAdmin.prototype.listIndexes = function listIndexes(request, callback) {
286 return this.rpcCall(listIndexes, $root.google.datastore.admin.v1.ListIndexesRequest, $root.google.datastore.admin.v1.ListIndexesResponse, request, callback);
287 }, "name", { value: "ListIndexes" });
288
289 /**
290 * Calls ListIndexes.
291 * @function listIndexes
292 * @memberof google.datastore.admin.v1.DatastoreAdmin
293 * @instance
294 * @param {google.datastore.admin.v1.IListIndexesRequest} request ListIndexesRequest message or plain object
295 * @returns {Promise<google.datastore.admin.v1.ListIndexesResponse>} Promise
296 * @variation 2
297 */
298
299 return DatastoreAdmin;
300 })();
301
302 v1.CommonMetadata = (function() {
303
304 /**
305 * Properties of a CommonMetadata.
306 * @memberof google.datastore.admin.v1
307 * @interface ICommonMetadata
308 * @property {google.protobuf.ITimestamp|null} [startTime] CommonMetadata startTime
309 * @property {google.protobuf.ITimestamp|null} [endTime] CommonMetadata endTime
310 * @property {google.datastore.admin.v1.OperationType|null} [operationType] CommonMetadata operationType
311 * @property {Object.<string,string>|null} [labels] CommonMetadata labels
312 * @property {google.datastore.admin.v1.CommonMetadata.State|null} [state] CommonMetadata state
313 */
314
315 /**
316 * Constructs a new CommonMetadata.
317 * @memberof google.datastore.admin.v1
318 * @classdesc Represents a CommonMetadata.
319 * @implements ICommonMetadata
320 * @constructor
321 * @param {google.datastore.admin.v1.ICommonMetadata=} [properties] Properties to set
322 */
323 function CommonMetadata(properties) {
324 this.labels = {};
325 if (properties)
326 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
327 if (properties[keys[i]] != null)
328 this[keys[i]] = properties[keys[i]];
329 }
330
331 /**
332 * CommonMetadata startTime.
333 * @member {google.protobuf.ITimestamp|null|undefined} startTime
334 * @memberof google.datastore.admin.v1.CommonMetadata
335 * @instance
336 */
337 CommonMetadata.prototype.startTime = null;
338
339 /**
340 * CommonMetadata endTime.
341 * @member {google.protobuf.ITimestamp|null|undefined} endTime
342 * @memberof google.datastore.admin.v1.CommonMetadata
343 * @instance
344 */
345 CommonMetadata.prototype.endTime = null;
346
347 /**
348 * CommonMetadata operationType.
349 * @member {google.datastore.admin.v1.OperationType} operationType
350 * @memberof google.datastore.admin.v1.CommonMetadata
351 * @instance
352 */
353 CommonMetadata.prototype.operationType = 0;
354
355 /**
356 * CommonMetadata labels.
357 * @member {Object.<string,string>} labels
358 * @memberof google.datastore.admin.v1.CommonMetadata
359 * @instance
360 */
361 CommonMetadata.prototype.labels = $util.emptyObject;
362
363 /**
364 * CommonMetadata state.
365 * @member {google.datastore.admin.v1.CommonMetadata.State} state
366 * @memberof google.datastore.admin.v1.CommonMetadata
367 * @instance
368 */
369 CommonMetadata.prototype.state = 0;
370
371 /**
372 * Creates a new CommonMetadata instance using the specified properties.
373 * @function create
374 * @memberof google.datastore.admin.v1.CommonMetadata
375 * @static
376 * @param {google.datastore.admin.v1.ICommonMetadata=} [properties] Properties to set
377 * @returns {google.datastore.admin.v1.CommonMetadata} CommonMetadata instance
378 */
379 CommonMetadata.create = function create(properties) {
380 return new CommonMetadata(properties);
381 };
382
383 /**
384 * Encodes the specified CommonMetadata message. Does not implicitly {@link google.datastore.admin.v1.CommonMetadata.verify|verify} messages.
385 * @function encode
386 * @memberof google.datastore.admin.v1.CommonMetadata
387 * @static
388 * @param {google.datastore.admin.v1.ICommonMetadata} message CommonMetadata message or plain object to encode
389 * @param {$protobuf.Writer} [writer] Writer to encode to
390 * @returns {$protobuf.Writer} Writer
391 */
392 CommonMetadata.encode = function encode(message, writer) {
393 if (!writer)
394 writer = $Writer.create();
395 if (message.startTime != null && Object.hasOwnProperty.call(message, "startTime"))
396 $root.google.protobuf.Timestamp.encode(message.startTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
397 if (message.endTime != null && Object.hasOwnProperty.call(message, "endTime"))
398 $root.google.protobuf.Timestamp.encode(message.endTime, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
399 if (message.operationType != null && Object.hasOwnProperty.call(message, "operationType"))
400 writer.uint32(/* id 3, wireType 0 =*/24).int32(message.operationType);
401 if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
402 for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
403 writer.uint32(/* id 4, wireType 2 =*/34).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
404 if (message.state != null && Object.hasOwnProperty.call(message, "state"))
405 writer.uint32(/* id 5, wireType 0 =*/40).int32(message.state);
406 return writer;
407 };
408
409 /**
410 * Encodes the specified CommonMetadata message, length delimited. Does not implicitly {@link google.datastore.admin.v1.CommonMetadata.verify|verify} messages.
411 * @function encodeDelimited
412 * @memberof google.datastore.admin.v1.CommonMetadata
413 * @static
414 * @param {google.datastore.admin.v1.ICommonMetadata} message CommonMetadata message or plain object to encode
415 * @param {$protobuf.Writer} [writer] Writer to encode to
416 * @returns {$protobuf.Writer} Writer
417 */
418 CommonMetadata.encodeDelimited = function encodeDelimited(message, writer) {
419 return this.encode(message, writer).ldelim();
420 };
421
422 /**
423 * Decodes a CommonMetadata message from the specified reader or buffer.
424 * @function decode
425 * @memberof google.datastore.admin.v1.CommonMetadata
426 * @static
427 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
428 * @param {number} [length] Message length if known beforehand
429 * @returns {google.datastore.admin.v1.CommonMetadata} CommonMetadata
430 * @throws {Error} If the payload is not a reader or valid buffer
431 * @throws {$protobuf.util.ProtocolError} If required fields are missing
432 */
433 CommonMetadata.decode = function decode(reader, length) {
434 if (!(reader instanceof $Reader))
435 reader = $Reader.create(reader);
436 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.CommonMetadata(), key, value;
437 while (reader.pos < end) {
438 var tag = reader.uint32();
439 switch (tag >>> 3) {
440 case 1:
441 message.startTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
442 break;
443 case 2:
444 message.endTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
445 break;
446 case 3:
447 message.operationType = reader.int32();
448 break;
449 case 4:
450 if (message.labels === $util.emptyObject)
451 message.labels = {};
452 var end2 = reader.uint32() + reader.pos;
453 key = "";
454 value = "";
455 while (reader.pos < end2) {
456 var tag2 = reader.uint32();
457 switch (tag2 >>> 3) {
458 case 1:
459 key = reader.string();
460 break;
461 case 2:
462 value = reader.string();
463 break;
464 default:
465 reader.skipType(tag2 & 7);
466 break;
467 }
468 }
469 message.labels[key] = value;
470 break;
471 case 5:
472 message.state = reader.int32();
473 break;
474 default:
475 reader.skipType(tag & 7);
476 break;
477 }
478 }
479 return message;
480 };
481
482 /**
483 * Decodes a CommonMetadata message from the specified reader or buffer, length delimited.
484 * @function decodeDelimited
485 * @memberof google.datastore.admin.v1.CommonMetadata
486 * @static
487 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
488 * @returns {google.datastore.admin.v1.CommonMetadata} CommonMetadata
489 * @throws {Error} If the payload is not a reader or valid buffer
490 * @throws {$protobuf.util.ProtocolError} If required fields are missing
491 */
492 CommonMetadata.decodeDelimited = function decodeDelimited(reader) {
493 if (!(reader instanceof $Reader))
494 reader = new $Reader(reader);
495 return this.decode(reader, reader.uint32());
496 };
497
498 /**
499 * Verifies a CommonMetadata message.
500 * @function verify
501 * @memberof google.datastore.admin.v1.CommonMetadata
502 * @static
503 * @param {Object.<string,*>} message Plain object to verify
504 * @returns {string|null} `null` if valid, otherwise the reason why it is not
505 */
506 CommonMetadata.verify = function verify(message) {
507 if (typeof message !== "object" || message === null)
508 return "object expected";
509 if (message.startTime != null && message.hasOwnProperty("startTime")) {
510 var error = $root.google.protobuf.Timestamp.verify(message.startTime);
511 if (error)
512 return "startTime." + error;
513 }
514 if (message.endTime != null && message.hasOwnProperty("endTime")) {
515 var error = $root.google.protobuf.Timestamp.verify(message.endTime);
516 if (error)
517 return "endTime." + error;
518 }
519 if (message.operationType != null && message.hasOwnProperty("operationType"))
520 switch (message.operationType) {
521 default:
522 return "operationType: enum value expected";
523 case 0:
524 case 1:
525 case 2:
526 case 3:
527 case 4:
528 break;
529 }
530 if (message.labels != null && message.hasOwnProperty("labels")) {
531 if (!$util.isObject(message.labels))
532 return "labels: object expected";
533 var key = Object.keys(message.labels);
534 for (var i = 0; i < key.length; ++i)
535 if (!$util.isString(message.labels[key[i]]))
536 return "labels: string{k:string} expected";
537 }
538 if (message.state != null && message.hasOwnProperty("state"))
539 switch (message.state) {
540 default:
541 return "state: enum value expected";
542 case 0:
543 case 1:
544 case 2:
545 case 3:
546 case 4:
547 case 5:
548 case 6:
549 case 7:
550 break;
551 }
552 return null;
553 };
554
555 /**
556 * Creates a CommonMetadata message from a plain object. Also converts values to their respective internal types.
557 * @function fromObject
558 * @memberof google.datastore.admin.v1.CommonMetadata
559 * @static
560 * @param {Object.<string,*>} object Plain object
561 * @returns {google.datastore.admin.v1.CommonMetadata} CommonMetadata
562 */
563 CommonMetadata.fromObject = function fromObject(object) {
564 if (object instanceof $root.google.datastore.admin.v1.CommonMetadata)
565 return object;
566 var message = new $root.google.datastore.admin.v1.CommonMetadata();
567 if (object.startTime != null) {
568 if (typeof object.startTime !== "object")
569 throw TypeError(".google.datastore.admin.v1.CommonMetadata.startTime: object expected");
570 message.startTime = $root.google.protobuf.Timestamp.fromObject(object.startTime);
571 }
572 if (object.endTime != null) {
573 if (typeof object.endTime !== "object")
574 throw TypeError(".google.datastore.admin.v1.CommonMetadata.endTime: object expected");
575 message.endTime = $root.google.protobuf.Timestamp.fromObject(object.endTime);
576 }
577 switch (object.operationType) {
578 case "OPERATION_TYPE_UNSPECIFIED":
579 case 0:
580 message.operationType = 0;
581 break;
582 case "EXPORT_ENTITIES":
583 case 1:
584 message.operationType = 1;
585 break;
586 case "IMPORT_ENTITIES":
587 case 2:
588 message.operationType = 2;
589 break;
590 case "CREATE_INDEX":
591 case 3:
592 message.operationType = 3;
593 break;
594 case "DELETE_INDEX":
595 case 4:
596 message.operationType = 4;
597 break;
598 }
599 if (object.labels) {
600 if (typeof object.labels !== "object")
601 throw TypeError(".google.datastore.admin.v1.CommonMetadata.labels: object expected");
602 message.labels = {};
603 for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
604 message.labels[keys[i]] = String(object.labels[keys[i]]);
605 }
606 switch (object.state) {
607 case "STATE_UNSPECIFIED":
608 case 0:
609 message.state = 0;
610 break;
611 case "INITIALIZING":
612 case 1:
613 message.state = 1;
614 break;
615 case "PROCESSING":
616 case 2:
617 message.state = 2;
618 break;
619 case "CANCELLING":
620 case 3:
621 message.state = 3;
622 break;
623 case "FINALIZING":
624 case 4:
625 message.state = 4;
626 break;
627 case "SUCCESSFUL":
628 case 5:
629 message.state = 5;
630 break;
631 case "FAILED":
632 case 6:
633 message.state = 6;
634 break;
635 case "CANCELLED":
636 case 7:
637 message.state = 7;
638 break;
639 }
640 return message;
641 };
642
643 /**
644 * Creates a plain object from a CommonMetadata message. Also converts values to other types if specified.
645 * @function toObject
646 * @memberof google.datastore.admin.v1.CommonMetadata
647 * @static
648 * @param {google.datastore.admin.v1.CommonMetadata} message CommonMetadata
649 * @param {$protobuf.IConversionOptions} [options] Conversion options
650 * @returns {Object.<string,*>} Plain object
651 */
652 CommonMetadata.toObject = function toObject(message, options) {
653 if (!options)
654 options = {};
655 var object = {};
656 if (options.objects || options.defaults)
657 object.labels = {};
658 if (options.defaults) {
659 object.startTime = null;
660 object.endTime = null;
661 object.operationType = options.enums === String ? "OPERATION_TYPE_UNSPECIFIED" : 0;
662 object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0;
663 }
664 if (message.startTime != null && message.hasOwnProperty("startTime"))
665 object.startTime = $root.google.protobuf.Timestamp.toObject(message.startTime, options);
666 if (message.endTime != null && message.hasOwnProperty("endTime"))
667 object.endTime = $root.google.protobuf.Timestamp.toObject(message.endTime, options);
668 if (message.operationType != null && message.hasOwnProperty("operationType"))
669 object.operationType = options.enums === String ? $root.google.datastore.admin.v1.OperationType[message.operationType] : message.operationType;
670 var keys2;
671 if (message.labels && (keys2 = Object.keys(message.labels)).length) {
672 object.labels = {};
673 for (var j = 0; j < keys2.length; ++j)
674 object.labels[keys2[j]] = message.labels[keys2[j]];
675 }
676 if (message.state != null && message.hasOwnProperty("state"))
677 object.state = options.enums === String ? $root.google.datastore.admin.v1.CommonMetadata.State[message.state] : message.state;
678 return object;
679 };
680
681 /**
682 * Converts this CommonMetadata to JSON.
683 * @function toJSON
684 * @memberof google.datastore.admin.v1.CommonMetadata
685 * @instance
686 * @returns {Object.<string,*>} JSON object
687 */
688 CommonMetadata.prototype.toJSON = function toJSON() {
689 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
690 };
691
692 /**
693 * State enum.
694 * @name google.datastore.admin.v1.CommonMetadata.State
695 * @enum {number}
696 * @property {number} STATE_UNSPECIFIED=0 STATE_UNSPECIFIED value
697 * @property {number} INITIALIZING=1 INITIALIZING value
698 * @property {number} PROCESSING=2 PROCESSING value
699 * @property {number} CANCELLING=3 CANCELLING value
700 * @property {number} FINALIZING=4 FINALIZING value
701 * @property {number} SUCCESSFUL=5 SUCCESSFUL value
702 * @property {number} FAILED=6 FAILED value
703 * @property {number} CANCELLED=7 CANCELLED value
704 */
705 CommonMetadata.State = (function() {
706 var valuesById = {}, values = Object.create(valuesById);
707 values[valuesById[0] = "STATE_UNSPECIFIED"] = 0;
708 values[valuesById[1] = "INITIALIZING"] = 1;
709 values[valuesById[2] = "PROCESSING"] = 2;
710 values[valuesById[3] = "CANCELLING"] = 3;
711 values[valuesById[4] = "FINALIZING"] = 4;
712 values[valuesById[5] = "SUCCESSFUL"] = 5;
713 values[valuesById[6] = "FAILED"] = 6;
714 values[valuesById[7] = "CANCELLED"] = 7;
715 return values;
716 })();
717
718 return CommonMetadata;
719 })();
720
721 v1.Progress = (function() {
722
723 /**
724 * Properties of a Progress.
725 * @memberof google.datastore.admin.v1
726 * @interface IProgress
727 * @property {number|Long|null} [workCompleted] Progress workCompleted
728 * @property {number|Long|null} [workEstimated] Progress workEstimated
729 */
730
731 /**
732 * Constructs a new Progress.
733 * @memberof google.datastore.admin.v1
734 * @classdesc Represents a Progress.
735 * @implements IProgress
736 * @constructor
737 * @param {google.datastore.admin.v1.IProgress=} [properties] Properties to set
738 */
739 function Progress(properties) {
740 if (properties)
741 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
742 if (properties[keys[i]] != null)
743 this[keys[i]] = properties[keys[i]];
744 }
745
746 /**
747 * Progress workCompleted.
748 * @member {number|Long} workCompleted
749 * @memberof google.datastore.admin.v1.Progress
750 * @instance
751 */
752 Progress.prototype.workCompleted = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
753
754 /**
755 * Progress workEstimated.
756 * @member {number|Long} workEstimated
757 * @memberof google.datastore.admin.v1.Progress
758 * @instance
759 */
760 Progress.prototype.workEstimated = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
761
762 /**
763 * Creates a new Progress instance using the specified properties.
764 * @function create
765 * @memberof google.datastore.admin.v1.Progress
766 * @static
767 * @param {google.datastore.admin.v1.IProgress=} [properties] Properties to set
768 * @returns {google.datastore.admin.v1.Progress} Progress instance
769 */
770 Progress.create = function create(properties) {
771 return new Progress(properties);
772 };
773
774 /**
775 * Encodes the specified Progress message. Does not implicitly {@link google.datastore.admin.v1.Progress.verify|verify} messages.
776 * @function encode
777 * @memberof google.datastore.admin.v1.Progress
778 * @static
779 * @param {google.datastore.admin.v1.IProgress} message Progress message or plain object to encode
780 * @param {$protobuf.Writer} [writer] Writer to encode to
781 * @returns {$protobuf.Writer} Writer
782 */
783 Progress.encode = function encode(message, writer) {
784 if (!writer)
785 writer = $Writer.create();
786 if (message.workCompleted != null && Object.hasOwnProperty.call(message, "workCompleted"))
787 writer.uint32(/* id 1, wireType 0 =*/8).int64(message.workCompleted);
788 if (message.workEstimated != null && Object.hasOwnProperty.call(message, "workEstimated"))
789 writer.uint32(/* id 2, wireType 0 =*/16).int64(message.workEstimated);
790 return writer;
791 };
792
793 /**
794 * Encodes the specified Progress message, length delimited. Does not implicitly {@link google.datastore.admin.v1.Progress.verify|verify} messages.
795 * @function encodeDelimited
796 * @memberof google.datastore.admin.v1.Progress
797 * @static
798 * @param {google.datastore.admin.v1.IProgress} message Progress message or plain object to encode
799 * @param {$protobuf.Writer} [writer] Writer to encode to
800 * @returns {$protobuf.Writer} Writer
801 */
802 Progress.encodeDelimited = function encodeDelimited(message, writer) {
803 return this.encode(message, writer).ldelim();
804 };
805
806 /**
807 * Decodes a Progress message from the specified reader or buffer.
808 * @function decode
809 * @memberof google.datastore.admin.v1.Progress
810 * @static
811 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
812 * @param {number} [length] Message length if known beforehand
813 * @returns {google.datastore.admin.v1.Progress} Progress
814 * @throws {Error} If the payload is not a reader or valid buffer
815 * @throws {$protobuf.util.ProtocolError} If required fields are missing
816 */
817 Progress.decode = function decode(reader, length) {
818 if (!(reader instanceof $Reader))
819 reader = $Reader.create(reader);
820 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.Progress();
821 while (reader.pos < end) {
822 var tag = reader.uint32();
823 switch (tag >>> 3) {
824 case 1:
825 message.workCompleted = reader.int64();
826 break;
827 case 2:
828 message.workEstimated = reader.int64();
829 break;
830 default:
831 reader.skipType(tag & 7);
832 break;
833 }
834 }
835 return message;
836 };
837
838 /**
839 * Decodes a Progress message from the specified reader or buffer, length delimited.
840 * @function decodeDelimited
841 * @memberof google.datastore.admin.v1.Progress
842 * @static
843 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
844 * @returns {google.datastore.admin.v1.Progress} Progress
845 * @throws {Error} If the payload is not a reader or valid buffer
846 * @throws {$protobuf.util.ProtocolError} If required fields are missing
847 */
848 Progress.decodeDelimited = function decodeDelimited(reader) {
849 if (!(reader instanceof $Reader))
850 reader = new $Reader(reader);
851 return this.decode(reader, reader.uint32());
852 };
853
854 /**
855 * Verifies a Progress message.
856 * @function verify
857 * @memberof google.datastore.admin.v1.Progress
858 * @static
859 * @param {Object.<string,*>} message Plain object to verify
860 * @returns {string|null} `null` if valid, otherwise the reason why it is not
861 */
862 Progress.verify = function verify(message) {
863 if (typeof message !== "object" || message === null)
864 return "object expected";
865 if (message.workCompleted != null && message.hasOwnProperty("workCompleted"))
866 if (!$util.isInteger(message.workCompleted) && !(message.workCompleted && $util.isInteger(message.workCompleted.low) && $util.isInteger(message.workCompleted.high)))
867 return "workCompleted: integer|Long expected";
868 if (message.workEstimated != null && message.hasOwnProperty("workEstimated"))
869 if (!$util.isInteger(message.workEstimated) && !(message.workEstimated && $util.isInteger(message.workEstimated.low) && $util.isInteger(message.workEstimated.high)))
870 return "workEstimated: integer|Long expected";
871 return null;
872 };
873
874 /**
875 * Creates a Progress message from a plain object. Also converts values to their respective internal types.
876 * @function fromObject
877 * @memberof google.datastore.admin.v1.Progress
878 * @static
879 * @param {Object.<string,*>} object Plain object
880 * @returns {google.datastore.admin.v1.Progress} Progress
881 */
882 Progress.fromObject = function fromObject(object) {
883 if (object instanceof $root.google.datastore.admin.v1.Progress)
884 return object;
885 var message = new $root.google.datastore.admin.v1.Progress();
886 if (object.workCompleted != null)
887 if ($util.Long)
888 (message.workCompleted = $util.Long.fromValue(object.workCompleted)).unsigned = false;
889 else if (typeof object.workCompleted === "string")
890 message.workCompleted = parseInt(object.workCompleted, 10);
891 else if (typeof object.workCompleted === "number")
892 message.workCompleted = object.workCompleted;
893 else if (typeof object.workCompleted === "object")
894 message.workCompleted = new $util.LongBits(object.workCompleted.low >>> 0, object.workCompleted.high >>> 0).toNumber();
895 if (object.workEstimated != null)
896 if ($util.Long)
897 (message.workEstimated = $util.Long.fromValue(object.workEstimated)).unsigned = false;
898 else if (typeof object.workEstimated === "string")
899 message.workEstimated = parseInt(object.workEstimated, 10);
900 else if (typeof object.workEstimated === "number")
901 message.workEstimated = object.workEstimated;
902 else if (typeof object.workEstimated === "object")
903 message.workEstimated = new $util.LongBits(object.workEstimated.low >>> 0, object.workEstimated.high >>> 0).toNumber();
904 return message;
905 };
906
907 /**
908 * Creates a plain object from a Progress message. Also converts values to other types if specified.
909 * @function toObject
910 * @memberof google.datastore.admin.v1.Progress
911 * @static
912 * @param {google.datastore.admin.v1.Progress} message Progress
913 * @param {$protobuf.IConversionOptions} [options] Conversion options
914 * @returns {Object.<string,*>} Plain object
915 */
916 Progress.toObject = function toObject(message, options) {
917 if (!options)
918 options = {};
919 var object = {};
920 if (options.defaults) {
921 if ($util.Long) {
922 var long = new $util.Long(0, 0, false);
923 object.workCompleted = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
924 } else
925 object.workCompleted = options.longs === String ? "0" : 0;
926 if ($util.Long) {
927 var long = new $util.Long(0, 0, false);
928 object.workEstimated = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
929 } else
930 object.workEstimated = options.longs === String ? "0" : 0;
931 }
932 if (message.workCompleted != null && message.hasOwnProperty("workCompleted"))
933 if (typeof message.workCompleted === "number")
934 object.workCompleted = options.longs === String ? String(message.workCompleted) : message.workCompleted;
935 else
936 object.workCompleted = options.longs === String ? $util.Long.prototype.toString.call(message.workCompleted) : options.longs === Number ? new $util.LongBits(message.workCompleted.low >>> 0, message.workCompleted.high >>> 0).toNumber() : message.workCompleted;
937 if (message.workEstimated != null && message.hasOwnProperty("workEstimated"))
938 if (typeof message.workEstimated === "number")
939 object.workEstimated = options.longs === String ? String(message.workEstimated) : message.workEstimated;
940 else
941 object.workEstimated = options.longs === String ? $util.Long.prototype.toString.call(message.workEstimated) : options.longs === Number ? new $util.LongBits(message.workEstimated.low >>> 0, message.workEstimated.high >>> 0).toNumber() : message.workEstimated;
942 return object;
943 };
944
945 /**
946 * Converts this Progress to JSON.
947 * @function toJSON
948 * @memberof google.datastore.admin.v1.Progress
949 * @instance
950 * @returns {Object.<string,*>} JSON object
951 */
952 Progress.prototype.toJSON = function toJSON() {
953 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
954 };
955
956 return Progress;
957 })();
958
959 v1.ExportEntitiesRequest = (function() {
960
961 /**
962 * Properties of an ExportEntitiesRequest.
963 * @memberof google.datastore.admin.v1
964 * @interface IExportEntitiesRequest
965 * @property {string|null} [projectId] ExportEntitiesRequest projectId
966 * @property {Object.<string,string>|null} [labels] ExportEntitiesRequest labels
967 * @property {google.datastore.admin.v1.IEntityFilter|null} [entityFilter] ExportEntitiesRequest entityFilter
968 * @property {string|null} [outputUrlPrefix] ExportEntitiesRequest outputUrlPrefix
969 */
970
971 /**
972 * Constructs a new ExportEntitiesRequest.
973 * @memberof google.datastore.admin.v1
974 * @classdesc Represents an ExportEntitiesRequest.
975 * @implements IExportEntitiesRequest
976 * @constructor
977 * @param {google.datastore.admin.v1.IExportEntitiesRequest=} [properties] Properties to set
978 */
979 function ExportEntitiesRequest(properties) {
980 this.labels = {};
981 if (properties)
982 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
983 if (properties[keys[i]] != null)
984 this[keys[i]] = properties[keys[i]];
985 }
986
987 /**
988 * ExportEntitiesRequest projectId.
989 * @member {string} projectId
990 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
991 * @instance
992 */
993 ExportEntitiesRequest.prototype.projectId = "";
994
995 /**
996 * ExportEntitiesRequest labels.
997 * @member {Object.<string,string>} labels
998 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
999 * @instance
1000 */
1001 ExportEntitiesRequest.prototype.labels = $util.emptyObject;
1002
1003 /**
1004 * ExportEntitiesRequest entityFilter.
1005 * @member {google.datastore.admin.v1.IEntityFilter|null|undefined} entityFilter
1006 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1007 * @instance
1008 */
1009 ExportEntitiesRequest.prototype.entityFilter = null;
1010
1011 /**
1012 * ExportEntitiesRequest outputUrlPrefix.
1013 * @member {string} outputUrlPrefix
1014 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1015 * @instance
1016 */
1017 ExportEntitiesRequest.prototype.outputUrlPrefix = "";
1018
1019 /**
1020 * Creates a new ExportEntitiesRequest instance using the specified properties.
1021 * @function create
1022 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1023 * @static
1024 * @param {google.datastore.admin.v1.IExportEntitiesRequest=} [properties] Properties to set
1025 * @returns {google.datastore.admin.v1.ExportEntitiesRequest} ExportEntitiesRequest instance
1026 */
1027 ExportEntitiesRequest.create = function create(properties) {
1028 return new ExportEntitiesRequest(properties);
1029 };
1030
1031 /**
1032 * Encodes the specified ExportEntitiesRequest message. Does not implicitly {@link google.datastore.admin.v1.ExportEntitiesRequest.verify|verify} messages.
1033 * @function encode
1034 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1035 * @static
1036 * @param {google.datastore.admin.v1.IExportEntitiesRequest} message ExportEntitiesRequest message or plain object to encode
1037 * @param {$protobuf.Writer} [writer] Writer to encode to
1038 * @returns {$protobuf.Writer} Writer
1039 */
1040 ExportEntitiesRequest.encode = function encode(message, writer) {
1041 if (!writer)
1042 writer = $Writer.create();
1043 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
1044 writer.uint32(/* id 1, wireType 2 =*/10).string(message.projectId);
1045 if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
1046 for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
1047 writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
1048 if (message.entityFilter != null && Object.hasOwnProperty.call(message, "entityFilter"))
1049 $root.google.datastore.admin.v1.EntityFilter.encode(message.entityFilter, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
1050 if (message.outputUrlPrefix != null && Object.hasOwnProperty.call(message, "outputUrlPrefix"))
1051 writer.uint32(/* id 4, wireType 2 =*/34).string(message.outputUrlPrefix);
1052 return writer;
1053 };
1054
1055 /**
1056 * Encodes the specified ExportEntitiesRequest message, length delimited. Does not implicitly {@link google.datastore.admin.v1.ExportEntitiesRequest.verify|verify} messages.
1057 * @function encodeDelimited
1058 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1059 * @static
1060 * @param {google.datastore.admin.v1.IExportEntitiesRequest} message ExportEntitiesRequest message or plain object to encode
1061 * @param {$protobuf.Writer} [writer] Writer to encode to
1062 * @returns {$protobuf.Writer} Writer
1063 */
1064 ExportEntitiesRequest.encodeDelimited = function encodeDelimited(message, writer) {
1065 return this.encode(message, writer).ldelim();
1066 };
1067
1068 /**
1069 * Decodes an ExportEntitiesRequest message from the specified reader or buffer.
1070 * @function decode
1071 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1072 * @static
1073 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1074 * @param {number} [length] Message length if known beforehand
1075 * @returns {google.datastore.admin.v1.ExportEntitiesRequest} ExportEntitiesRequest
1076 * @throws {Error} If the payload is not a reader or valid buffer
1077 * @throws {$protobuf.util.ProtocolError} If required fields are missing
1078 */
1079 ExportEntitiesRequest.decode = function decode(reader, length) {
1080 if (!(reader instanceof $Reader))
1081 reader = $Reader.create(reader);
1082 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.ExportEntitiesRequest(), key, value;
1083 while (reader.pos < end) {
1084 var tag = reader.uint32();
1085 switch (tag >>> 3) {
1086 case 1:
1087 message.projectId = reader.string();
1088 break;
1089 case 2:
1090 if (message.labels === $util.emptyObject)
1091 message.labels = {};
1092 var end2 = reader.uint32() + reader.pos;
1093 key = "";
1094 value = "";
1095 while (reader.pos < end2) {
1096 var tag2 = reader.uint32();
1097 switch (tag2 >>> 3) {
1098 case 1:
1099 key = reader.string();
1100 break;
1101 case 2:
1102 value = reader.string();
1103 break;
1104 default:
1105 reader.skipType(tag2 & 7);
1106 break;
1107 }
1108 }
1109 message.labels[key] = value;
1110 break;
1111 case 3:
1112 message.entityFilter = $root.google.datastore.admin.v1.EntityFilter.decode(reader, reader.uint32());
1113 break;
1114 case 4:
1115 message.outputUrlPrefix = reader.string();
1116 break;
1117 default:
1118 reader.skipType(tag & 7);
1119 break;
1120 }
1121 }
1122 return message;
1123 };
1124
1125 /**
1126 * Decodes an ExportEntitiesRequest message from the specified reader or buffer, length delimited.
1127 * @function decodeDelimited
1128 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1129 * @static
1130 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1131 * @returns {google.datastore.admin.v1.ExportEntitiesRequest} ExportEntitiesRequest
1132 * @throws {Error} If the payload is not a reader or valid buffer
1133 * @throws {$protobuf.util.ProtocolError} If required fields are missing
1134 */
1135 ExportEntitiesRequest.decodeDelimited = function decodeDelimited(reader) {
1136 if (!(reader instanceof $Reader))
1137 reader = new $Reader(reader);
1138 return this.decode(reader, reader.uint32());
1139 };
1140
1141 /**
1142 * Verifies an ExportEntitiesRequest message.
1143 * @function verify
1144 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1145 * @static
1146 * @param {Object.<string,*>} message Plain object to verify
1147 * @returns {string|null} `null` if valid, otherwise the reason why it is not
1148 */
1149 ExportEntitiesRequest.verify = function verify(message) {
1150 if (typeof message !== "object" || message === null)
1151 return "object expected";
1152 if (message.projectId != null && message.hasOwnProperty("projectId"))
1153 if (!$util.isString(message.projectId))
1154 return "projectId: string expected";
1155 if (message.labels != null && message.hasOwnProperty("labels")) {
1156 if (!$util.isObject(message.labels))
1157 return "labels: object expected";
1158 var key = Object.keys(message.labels);
1159 for (var i = 0; i < key.length; ++i)
1160 if (!$util.isString(message.labels[key[i]]))
1161 return "labels: string{k:string} expected";
1162 }
1163 if (message.entityFilter != null && message.hasOwnProperty("entityFilter")) {
1164 var error = $root.google.datastore.admin.v1.EntityFilter.verify(message.entityFilter);
1165 if (error)
1166 return "entityFilter." + error;
1167 }
1168 if (message.outputUrlPrefix != null && message.hasOwnProperty("outputUrlPrefix"))
1169 if (!$util.isString(message.outputUrlPrefix))
1170 return "outputUrlPrefix: string expected";
1171 return null;
1172 };
1173
1174 /**
1175 * Creates an ExportEntitiesRequest message from a plain object. Also converts values to their respective internal types.
1176 * @function fromObject
1177 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1178 * @static
1179 * @param {Object.<string,*>} object Plain object
1180 * @returns {google.datastore.admin.v1.ExportEntitiesRequest} ExportEntitiesRequest
1181 */
1182 ExportEntitiesRequest.fromObject = function fromObject(object) {
1183 if (object instanceof $root.google.datastore.admin.v1.ExportEntitiesRequest)
1184 return object;
1185 var message = new $root.google.datastore.admin.v1.ExportEntitiesRequest();
1186 if (object.projectId != null)
1187 message.projectId = String(object.projectId);
1188 if (object.labels) {
1189 if (typeof object.labels !== "object")
1190 throw TypeError(".google.datastore.admin.v1.ExportEntitiesRequest.labels: object expected");
1191 message.labels = {};
1192 for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
1193 message.labels[keys[i]] = String(object.labels[keys[i]]);
1194 }
1195 if (object.entityFilter != null) {
1196 if (typeof object.entityFilter !== "object")
1197 throw TypeError(".google.datastore.admin.v1.ExportEntitiesRequest.entityFilter: object expected");
1198 message.entityFilter = $root.google.datastore.admin.v1.EntityFilter.fromObject(object.entityFilter);
1199 }
1200 if (object.outputUrlPrefix != null)
1201 message.outputUrlPrefix = String(object.outputUrlPrefix);
1202 return message;
1203 };
1204
1205 /**
1206 * Creates a plain object from an ExportEntitiesRequest message. Also converts values to other types if specified.
1207 * @function toObject
1208 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1209 * @static
1210 * @param {google.datastore.admin.v1.ExportEntitiesRequest} message ExportEntitiesRequest
1211 * @param {$protobuf.IConversionOptions} [options] Conversion options
1212 * @returns {Object.<string,*>} Plain object
1213 */
1214 ExportEntitiesRequest.toObject = function toObject(message, options) {
1215 if (!options)
1216 options = {};
1217 var object = {};
1218 if (options.objects || options.defaults)
1219 object.labels = {};
1220 if (options.defaults) {
1221 object.projectId = "";
1222 object.entityFilter = null;
1223 object.outputUrlPrefix = "";
1224 }
1225 if (message.projectId != null && message.hasOwnProperty("projectId"))
1226 object.projectId = message.projectId;
1227 var keys2;
1228 if (message.labels && (keys2 = Object.keys(message.labels)).length) {
1229 object.labels = {};
1230 for (var j = 0; j < keys2.length; ++j)
1231 object.labels[keys2[j]] = message.labels[keys2[j]];
1232 }
1233 if (message.entityFilter != null && message.hasOwnProperty("entityFilter"))
1234 object.entityFilter = $root.google.datastore.admin.v1.EntityFilter.toObject(message.entityFilter, options);
1235 if (message.outputUrlPrefix != null && message.hasOwnProperty("outputUrlPrefix"))
1236 object.outputUrlPrefix = message.outputUrlPrefix;
1237 return object;
1238 };
1239
1240 /**
1241 * Converts this ExportEntitiesRequest to JSON.
1242 * @function toJSON
1243 * @memberof google.datastore.admin.v1.ExportEntitiesRequest
1244 * @instance
1245 * @returns {Object.<string,*>} JSON object
1246 */
1247 ExportEntitiesRequest.prototype.toJSON = function toJSON() {
1248 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
1249 };
1250
1251 return ExportEntitiesRequest;
1252 })();
1253
1254 v1.ImportEntitiesRequest = (function() {
1255
1256 /**
1257 * Properties of an ImportEntitiesRequest.
1258 * @memberof google.datastore.admin.v1
1259 * @interface IImportEntitiesRequest
1260 * @property {string|null} [projectId] ImportEntitiesRequest projectId
1261 * @property {Object.<string,string>|null} [labels] ImportEntitiesRequest labels
1262 * @property {string|null} [inputUrl] ImportEntitiesRequest inputUrl
1263 * @property {google.datastore.admin.v1.IEntityFilter|null} [entityFilter] ImportEntitiesRequest entityFilter
1264 */
1265
1266 /**
1267 * Constructs a new ImportEntitiesRequest.
1268 * @memberof google.datastore.admin.v1
1269 * @classdesc Represents an ImportEntitiesRequest.
1270 * @implements IImportEntitiesRequest
1271 * @constructor
1272 * @param {google.datastore.admin.v1.IImportEntitiesRequest=} [properties] Properties to set
1273 */
1274 function ImportEntitiesRequest(properties) {
1275 this.labels = {};
1276 if (properties)
1277 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1278 if (properties[keys[i]] != null)
1279 this[keys[i]] = properties[keys[i]];
1280 }
1281
1282 /**
1283 * ImportEntitiesRequest projectId.
1284 * @member {string} projectId
1285 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1286 * @instance
1287 */
1288 ImportEntitiesRequest.prototype.projectId = "";
1289
1290 /**
1291 * ImportEntitiesRequest labels.
1292 * @member {Object.<string,string>} labels
1293 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1294 * @instance
1295 */
1296 ImportEntitiesRequest.prototype.labels = $util.emptyObject;
1297
1298 /**
1299 * ImportEntitiesRequest inputUrl.
1300 * @member {string} inputUrl
1301 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1302 * @instance
1303 */
1304 ImportEntitiesRequest.prototype.inputUrl = "";
1305
1306 /**
1307 * ImportEntitiesRequest entityFilter.
1308 * @member {google.datastore.admin.v1.IEntityFilter|null|undefined} entityFilter
1309 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1310 * @instance
1311 */
1312 ImportEntitiesRequest.prototype.entityFilter = null;
1313
1314 /**
1315 * Creates a new ImportEntitiesRequest instance using the specified properties.
1316 * @function create
1317 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1318 * @static
1319 * @param {google.datastore.admin.v1.IImportEntitiesRequest=} [properties] Properties to set
1320 * @returns {google.datastore.admin.v1.ImportEntitiesRequest} ImportEntitiesRequest instance
1321 */
1322 ImportEntitiesRequest.create = function create(properties) {
1323 return new ImportEntitiesRequest(properties);
1324 };
1325
1326 /**
1327 * Encodes the specified ImportEntitiesRequest message. Does not implicitly {@link google.datastore.admin.v1.ImportEntitiesRequest.verify|verify} messages.
1328 * @function encode
1329 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1330 * @static
1331 * @param {google.datastore.admin.v1.IImportEntitiesRequest} message ImportEntitiesRequest message or plain object to encode
1332 * @param {$protobuf.Writer} [writer] Writer to encode to
1333 * @returns {$protobuf.Writer} Writer
1334 */
1335 ImportEntitiesRequest.encode = function encode(message, writer) {
1336 if (!writer)
1337 writer = $Writer.create();
1338 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
1339 writer.uint32(/* id 1, wireType 2 =*/10).string(message.projectId);
1340 if (message.labels != null && Object.hasOwnProperty.call(message, "labels"))
1341 for (var keys = Object.keys(message.labels), i = 0; i < keys.length; ++i)
1342 writer.uint32(/* id 2, wireType 2 =*/18).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]).uint32(/* id 2, wireType 2 =*/18).string(message.labels[keys[i]]).ldelim();
1343 if (message.inputUrl != null && Object.hasOwnProperty.call(message, "inputUrl"))
1344 writer.uint32(/* id 3, wireType 2 =*/26).string(message.inputUrl);
1345 if (message.entityFilter != null && Object.hasOwnProperty.call(message, "entityFilter"))
1346 $root.google.datastore.admin.v1.EntityFilter.encode(message.entityFilter, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
1347 return writer;
1348 };
1349
1350 /**
1351 * Encodes the specified ImportEntitiesRequest message, length delimited. Does not implicitly {@link google.datastore.admin.v1.ImportEntitiesRequest.verify|verify} messages.
1352 * @function encodeDelimited
1353 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1354 * @static
1355 * @param {google.datastore.admin.v1.IImportEntitiesRequest} message ImportEntitiesRequest message or plain object to encode
1356 * @param {$protobuf.Writer} [writer] Writer to encode to
1357 * @returns {$protobuf.Writer} Writer
1358 */
1359 ImportEntitiesRequest.encodeDelimited = function encodeDelimited(message, writer) {
1360 return this.encode(message, writer).ldelim();
1361 };
1362
1363 /**
1364 * Decodes an ImportEntitiesRequest message from the specified reader or buffer.
1365 * @function decode
1366 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1367 * @static
1368 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1369 * @param {number} [length] Message length if known beforehand
1370 * @returns {google.datastore.admin.v1.ImportEntitiesRequest} ImportEntitiesRequest
1371 * @throws {Error} If the payload is not a reader or valid buffer
1372 * @throws {$protobuf.util.ProtocolError} If required fields are missing
1373 */
1374 ImportEntitiesRequest.decode = function decode(reader, length) {
1375 if (!(reader instanceof $Reader))
1376 reader = $Reader.create(reader);
1377 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.ImportEntitiesRequest(), key, value;
1378 while (reader.pos < end) {
1379 var tag = reader.uint32();
1380 switch (tag >>> 3) {
1381 case 1:
1382 message.projectId = reader.string();
1383 break;
1384 case 2:
1385 if (message.labels === $util.emptyObject)
1386 message.labels = {};
1387 var end2 = reader.uint32() + reader.pos;
1388 key = "";
1389 value = "";
1390 while (reader.pos < end2) {
1391 var tag2 = reader.uint32();
1392 switch (tag2 >>> 3) {
1393 case 1:
1394 key = reader.string();
1395 break;
1396 case 2:
1397 value = reader.string();
1398 break;
1399 default:
1400 reader.skipType(tag2 & 7);
1401 break;
1402 }
1403 }
1404 message.labels[key] = value;
1405 break;
1406 case 3:
1407 message.inputUrl = reader.string();
1408 break;
1409 case 4:
1410 message.entityFilter = $root.google.datastore.admin.v1.EntityFilter.decode(reader, reader.uint32());
1411 break;
1412 default:
1413 reader.skipType(tag & 7);
1414 break;
1415 }
1416 }
1417 return message;
1418 };
1419
1420 /**
1421 * Decodes an ImportEntitiesRequest message from the specified reader or buffer, length delimited.
1422 * @function decodeDelimited
1423 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1424 * @static
1425 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1426 * @returns {google.datastore.admin.v1.ImportEntitiesRequest} ImportEntitiesRequest
1427 * @throws {Error} If the payload is not a reader or valid buffer
1428 * @throws {$protobuf.util.ProtocolError} If required fields are missing
1429 */
1430 ImportEntitiesRequest.decodeDelimited = function decodeDelimited(reader) {
1431 if (!(reader instanceof $Reader))
1432 reader = new $Reader(reader);
1433 return this.decode(reader, reader.uint32());
1434 };
1435
1436 /**
1437 * Verifies an ImportEntitiesRequest message.
1438 * @function verify
1439 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1440 * @static
1441 * @param {Object.<string,*>} message Plain object to verify
1442 * @returns {string|null} `null` if valid, otherwise the reason why it is not
1443 */
1444 ImportEntitiesRequest.verify = function verify(message) {
1445 if (typeof message !== "object" || message === null)
1446 return "object expected";
1447 if (message.projectId != null && message.hasOwnProperty("projectId"))
1448 if (!$util.isString(message.projectId))
1449 return "projectId: string expected";
1450 if (message.labels != null && message.hasOwnProperty("labels")) {
1451 if (!$util.isObject(message.labels))
1452 return "labels: object expected";
1453 var key = Object.keys(message.labels);
1454 for (var i = 0; i < key.length; ++i)
1455 if (!$util.isString(message.labels[key[i]]))
1456 return "labels: string{k:string} expected";
1457 }
1458 if (message.inputUrl != null && message.hasOwnProperty("inputUrl"))
1459 if (!$util.isString(message.inputUrl))
1460 return "inputUrl: string expected";
1461 if (message.entityFilter != null && message.hasOwnProperty("entityFilter")) {
1462 var error = $root.google.datastore.admin.v1.EntityFilter.verify(message.entityFilter);
1463 if (error)
1464 return "entityFilter." + error;
1465 }
1466 return null;
1467 };
1468
1469 /**
1470 * Creates an ImportEntitiesRequest message from a plain object. Also converts values to their respective internal types.
1471 * @function fromObject
1472 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1473 * @static
1474 * @param {Object.<string,*>} object Plain object
1475 * @returns {google.datastore.admin.v1.ImportEntitiesRequest} ImportEntitiesRequest
1476 */
1477 ImportEntitiesRequest.fromObject = function fromObject(object) {
1478 if (object instanceof $root.google.datastore.admin.v1.ImportEntitiesRequest)
1479 return object;
1480 var message = new $root.google.datastore.admin.v1.ImportEntitiesRequest();
1481 if (object.projectId != null)
1482 message.projectId = String(object.projectId);
1483 if (object.labels) {
1484 if (typeof object.labels !== "object")
1485 throw TypeError(".google.datastore.admin.v1.ImportEntitiesRequest.labels: object expected");
1486 message.labels = {};
1487 for (var keys = Object.keys(object.labels), i = 0; i < keys.length; ++i)
1488 message.labels[keys[i]] = String(object.labels[keys[i]]);
1489 }
1490 if (object.inputUrl != null)
1491 message.inputUrl = String(object.inputUrl);
1492 if (object.entityFilter != null) {
1493 if (typeof object.entityFilter !== "object")
1494 throw TypeError(".google.datastore.admin.v1.ImportEntitiesRequest.entityFilter: object expected");
1495 message.entityFilter = $root.google.datastore.admin.v1.EntityFilter.fromObject(object.entityFilter);
1496 }
1497 return message;
1498 };
1499
1500 /**
1501 * Creates a plain object from an ImportEntitiesRequest message. Also converts values to other types if specified.
1502 * @function toObject
1503 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1504 * @static
1505 * @param {google.datastore.admin.v1.ImportEntitiesRequest} message ImportEntitiesRequest
1506 * @param {$protobuf.IConversionOptions} [options] Conversion options
1507 * @returns {Object.<string,*>} Plain object
1508 */
1509 ImportEntitiesRequest.toObject = function toObject(message, options) {
1510 if (!options)
1511 options = {};
1512 var object = {};
1513 if (options.objects || options.defaults)
1514 object.labels = {};
1515 if (options.defaults) {
1516 object.projectId = "";
1517 object.inputUrl = "";
1518 object.entityFilter = null;
1519 }
1520 if (message.projectId != null && message.hasOwnProperty("projectId"))
1521 object.projectId = message.projectId;
1522 var keys2;
1523 if (message.labels && (keys2 = Object.keys(message.labels)).length) {
1524 object.labels = {};
1525 for (var j = 0; j < keys2.length; ++j)
1526 object.labels[keys2[j]] = message.labels[keys2[j]];
1527 }
1528 if (message.inputUrl != null && message.hasOwnProperty("inputUrl"))
1529 object.inputUrl = message.inputUrl;
1530 if (message.entityFilter != null && message.hasOwnProperty("entityFilter"))
1531 object.entityFilter = $root.google.datastore.admin.v1.EntityFilter.toObject(message.entityFilter, options);
1532 return object;
1533 };
1534
1535 /**
1536 * Converts this ImportEntitiesRequest to JSON.
1537 * @function toJSON
1538 * @memberof google.datastore.admin.v1.ImportEntitiesRequest
1539 * @instance
1540 * @returns {Object.<string,*>} JSON object
1541 */
1542 ImportEntitiesRequest.prototype.toJSON = function toJSON() {
1543 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
1544 };
1545
1546 return ImportEntitiesRequest;
1547 })();
1548
1549 v1.ExportEntitiesResponse = (function() {
1550
1551 /**
1552 * Properties of an ExportEntitiesResponse.
1553 * @memberof google.datastore.admin.v1
1554 * @interface IExportEntitiesResponse
1555 * @property {string|null} [outputUrl] ExportEntitiesResponse outputUrl
1556 */
1557
1558 /**
1559 * Constructs a new ExportEntitiesResponse.
1560 * @memberof google.datastore.admin.v1
1561 * @classdesc Represents an ExportEntitiesResponse.
1562 * @implements IExportEntitiesResponse
1563 * @constructor
1564 * @param {google.datastore.admin.v1.IExportEntitiesResponse=} [properties] Properties to set
1565 */
1566 function ExportEntitiesResponse(properties) {
1567 if (properties)
1568 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1569 if (properties[keys[i]] != null)
1570 this[keys[i]] = properties[keys[i]];
1571 }
1572
1573 /**
1574 * ExportEntitiesResponse outputUrl.
1575 * @member {string} outputUrl
1576 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1577 * @instance
1578 */
1579 ExportEntitiesResponse.prototype.outputUrl = "";
1580
1581 /**
1582 * Creates a new ExportEntitiesResponse instance using the specified properties.
1583 * @function create
1584 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1585 * @static
1586 * @param {google.datastore.admin.v1.IExportEntitiesResponse=} [properties] Properties to set
1587 * @returns {google.datastore.admin.v1.ExportEntitiesResponse} ExportEntitiesResponse instance
1588 */
1589 ExportEntitiesResponse.create = function create(properties) {
1590 return new ExportEntitiesResponse(properties);
1591 };
1592
1593 /**
1594 * Encodes the specified ExportEntitiesResponse message. Does not implicitly {@link google.datastore.admin.v1.ExportEntitiesResponse.verify|verify} messages.
1595 * @function encode
1596 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1597 * @static
1598 * @param {google.datastore.admin.v1.IExportEntitiesResponse} message ExportEntitiesResponse message or plain object to encode
1599 * @param {$protobuf.Writer} [writer] Writer to encode to
1600 * @returns {$protobuf.Writer} Writer
1601 */
1602 ExportEntitiesResponse.encode = function encode(message, writer) {
1603 if (!writer)
1604 writer = $Writer.create();
1605 if (message.outputUrl != null && Object.hasOwnProperty.call(message, "outputUrl"))
1606 writer.uint32(/* id 1, wireType 2 =*/10).string(message.outputUrl);
1607 return writer;
1608 };
1609
1610 /**
1611 * Encodes the specified ExportEntitiesResponse message, length delimited. Does not implicitly {@link google.datastore.admin.v1.ExportEntitiesResponse.verify|verify} messages.
1612 * @function encodeDelimited
1613 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1614 * @static
1615 * @param {google.datastore.admin.v1.IExportEntitiesResponse} message ExportEntitiesResponse message or plain object to encode
1616 * @param {$protobuf.Writer} [writer] Writer to encode to
1617 * @returns {$protobuf.Writer} Writer
1618 */
1619 ExportEntitiesResponse.encodeDelimited = function encodeDelimited(message, writer) {
1620 return this.encode(message, writer).ldelim();
1621 };
1622
1623 /**
1624 * Decodes an ExportEntitiesResponse message from the specified reader or buffer.
1625 * @function decode
1626 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1627 * @static
1628 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1629 * @param {number} [length] Message length if known beforehand
1630 * @returns {google.datastore.admin.v1.ExportEntitiesResponse} ExportEntitiesResponse
1631 * @throws {Error} If the payload is not a reader or valid buffer
1632 * @throws {$protobuf.util.ProtocolError} If required fields are missing
1633 */
1634 ExportEntitiesResponse.decode = function decode(reader, length) {
1635 if (!(reader instanceof $Reader))
1636 reader = $Reader.create(reader);
1637 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.ExportEntitiesResponse();
1638 while (reader.pos < end) {
1639 var tag = reader.uint32();
1640 switch (tag >>> 3) {
1641 case 1:
1642 message.outputUrl = reader.string();
1643 break;
1644 default:
1645 reader.skipType(tag & 7);
1646 break;
1647 }
1648 }
1649 return message;
1650 };
1651
1652 /**
1653 * Decodes an ExportEntitiesResponse message from the specified reader or buffer, length delimited.
1654 * @function decodeDelimited
1655 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1656 * @static
1657 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1658 * @returns {google.datastore.admin.v1.ExportEntitiesResponse} ExportEntitiesResponse
1659 * @throws {Error} If the payload is not a reader or valid buffer
1660 * @throws {$protobuf.util.ProtocolError} If required fields are missing
1661 */
1662 ExportEntitiesResponse.decodeDelimited = function decodeDelimited(reader) {
1663 if (!(reader instanceof $Reader))
1664 reader = new $Reader(reader);
1665 return this.decode(reader, reader.uint32());
1666 };
1667
1668 /**
1669 * Verifies an ExportEntitiesResponse message.
1670 * @function verify
1671 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1672 * @static
1673 * @param {Object.<string,*>} message Plain object to verify
1674 * @returns {string|null} `null` if valid, otherwise the reason why it is not
1675 */
1676 ExportEntitiesResponse.verify = function verify(message) {
1677 if (typeof message !== "object" || message === null)
1678 return "object expected";
1679 if (message.outputUrl != null && message.hasOwnProperty("outputUrl"))
1680 if (!$util.isString(message.outputUrl))
1681 return "outputUrl: string expected";
1682 return null;
1683 };
1684
1685 /**
1686 * Creates an ExportEntitiesResponse message from a plain object. Also converts values to their respective internal types.
1687 * @function fromObject
1688 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1689 * @static
1690 * @param {Object.<string,*>} object Plain object
1691 * @returns {google.datastore.admin.v1.ExportEntitiesResponse} ExportEntitiesResponse
1692 */
1693 ExportEntitiesResponse.fromObject = function fromObject(object) {
1694 if (object instanceof $root.google.datastore.admin.v1.ExportEntitiesResponse)
1695 return object;
1696 var message = new $root.google.datastore.admin.v1.ExportEntitiesResponse();
1697 if (object.outputUrl != null)
1698 message.outputUrl = String(object.outputUrl);
1699 return message;
1700 };
1701
1702 /**
1703 * Creates a plain object from an ExportEntitiesResponse message. Also converts values to other types if specified.
1704 * @function toObject
1705 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1706 * @static
1707 * @param {google.datastore.admin.v1.ExportEntitiesResponse} message ExportEntitiesResponse
1708 * @param {$protobuf.IConversionOptions} [options] Conversion options
1709 * @returns {Object.<string,*>} Plain object
1710 */
1711 ExportEntitiesResponse.toObject = function toObject(message, options) {
1712 if (!options)
1713 options = {};
1714 var object = {};
1715 if (options.defaults)
1716 object.outputUrl = "";
1717 if (message.outputUrl != null && message.hasOwnProperty("outputUrl"))
1718 object.outputUrl = message.outputUrl;
1719 return object;
1720 };
1721
1722 /**
1723 * Converts this ExportEntitiesResponse to JSON.
1724 * @function toJSON
1725 * @memberof google.datastore.admin.v1.ExportEntitiesResponse
1726 * @instance
1727 * @returns {Object.<string,*>} JSON object
1728 */
1729 ExportEntitiesResponse.prototype.toJSON = function toJSON() {
1730 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
1731 };
1732
1733 return ExportEntitiesResponse;
1734 })();
1735
1736 v1.ExportEntitiesMetadata = (function() {
1737
1738 /**
1739 * Properties of an ExportEntitiesMetadata.
1740 * @memberof google.datastore.admin.v1
1741 * @interface IExportEntitiesMetadata
1742 * @property {google.datastore.admin.v1.ICommonMetadata|null} [common] ExportEntitiesMetadata common
1743 * @property {google.datastore.admin.v1.IProgress|null} [progressEntities] ExportEntitiesMetadata progressEntities
1744 * @property {google.datastore.admin.v1.IProgress|null} [progressBytes] ExportEntitiesMetadata progressBytes
1745 * @property {google.datastore.admin.v1.IEntityFilter|null} [entityFilter] ExportEntitiesMetadata entityFilter
1746 * @property {string|null} [outputUrlPrefix] ExportEntitiesMetadata outputUrlPrefix
1747 */
1748
1749 /**
1750 * Constructs a new ExportEntitiesMetadata.
1751 * @memberof google.datastore.admin.v1
1752 * @classdesc Represents an ExportEntitiesMetadata.
1753 * @implements IExportEntitiesMetadata
1754 * @constructor
1755 * @param {google.datastore.admin.v1.IExportEntitiesMetadata=} [properties] Properties to set
1756 */
1757 function ExportEntitiesMetadata(properties) {
1758 if (properties)
1759 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
1760 if (properties[keys[i]] != null)
1761 this[keys[i]] = properties[keys[i]];
1762 }
1763
1764 /**
1765 * ExportEntitiesMetadata common.
1766 * @member {google.datastore.admin.v1.ICommonMetadata|null|undefined} common
1767 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1768 * @instance
1769 */
1770 ExportEntitiesMetadata.prototype.common = null;
1771
1772 /**
1773 * ExportEntitiesMetadata progressEntities.
1774 * @member {google.datastore.admin.v1.IProgress|null|undefined} progressEntities
1775 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1776 * @instance
1777 */
1778 ExportEntitiesMetadata.prototype.progressEntities = null;
1779
1780 /**
1781 * ExportEntitiesMetadata progressBytes.
1782 * @member {google.datastore.admin.v1.IProgress|null|undefined} progressBytes
1783 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1784 * @instance
1785 */
1786 ExportEntitiesMetadata.prototype.progressBytes = null;
1787
1788 /**
1789 * ExportEntitiesMetadata entityFilter.
1790 * @member {google.datastore.admin.v1.IEntityFilter|null|undefined} entityFilter
1791 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1792 * @instance
1793 */
1794 ExportEntitiesMetadata.prototype.entityFilter = null;
1795
1796 /**
1797 * ExportEntitiesMetadata outputUrlPrefix.
1798 * @member {string} outputUrlPrefix
1799 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1800 * @instance
1801 */
1802 ExportEntitiesMetadata.prototype.outputUrlPrefix = "";
1803
1804 /**
1805 * Creates a new ExportEntitiesMetadata instance using the specified properties.
1806 * @function create
1807 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1808 * @static
1809 * @param {google.datastore.admin.v1.IExportEntitiesMetadata=} [properties] Properties to set
1810 * @returns {google.datastore.admin.v1.ExportEntitiesMetadata} ExportEntitiesMetadata instance
1811 */
1812 ExportEntitiesMetadata.create = function create(properties) {
1813 return new ExportEntitiesMetadata(properties);
1814 };
1815
1816 /**
1817 * Encodes the specified ExportEntitiesMetadata message. Does not implicitly {@link google.datastore.admin.v1.ExportEntitiesMetadata.verify|verify} messages.
1818 * @function encode
1819 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1820 * @static
1821 * @param {google.datastore.admin.v1.IExportEntitiesMetadata} message ExportEntitiesMetadata message or plain object to encode
1822 * @param {$protobuf.Writer} [writer] Writer to encode to
1823 * @returns {$protobuf.Writer} Writer
1824 */
1825 ExportEntitiesMetadata.encode = function encode(message, writer) {
1826 if (!writer)
1827 writer = $Writer.create();
1828 if (message.common != null && Object.hasOwnProperty.call(message, "common"))
1829 $root.google.datastore.admin.v1.CommonMetadata.encode(message.common, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
1830 if (message.progressEntities != null && Object.hasOwnProperty.call(message, "progressEntities"))
1831 $root.google.datastore.admin.v1.Progress.encode(message.progressEntities, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
1832 if (message.progressBytes != null && Object.hasOwnProperty.call(message, "progressBytes"))
1833 $root.google.datastore.admin.v1.Progress.encode(message.progressBytes, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
1834 if (message.entityFilter != null && Object.hasOwnProperty.call(message, "entityFilter"))
1835 $root.google.datastore.admin.v1.EntityFilter.encode(message.entityFilter, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
1836 if (message.outputUrlPrefix != null && Object.hasOwnProperty.call(message, "outputUrlPrefix"))
1837 writer.uint32(/* id 5, wireType 2 =*/42).string(message.outputUrlPrefix);
1838 return writer;
1839 };
1840
1841 /**
1842 * Encodes the specified ExportEntitiesMetadata message, length delimited. Does not implicitly {@link google.datastore.admin.v1.ExportEntitiesMetadata.verify|verify} messages.
1843 * @function encodeDelimited
1844 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1845 * @static
1846 * @param {google.datastore.admin.v1.IExportEntitiesMetadata} message ExportEntitiesMetadata message or plain object to encode
1847 * @param {$protobuf.Writer} [writer] Writer to encode to
1848 * @returns {$protobuf.Writer} Writer
1849 */
1850 ExportEntitiesMetadata.encodeDelimited = function encodeDelimited(message, writer) {
1851 return this.encode(message, writer).ldelim();
1852 };
1853
1854 /**
1855 * Decodes an ExportEntitiesMetadata message from the specified reader or buffer.
1856 * @function decode
1857 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1858 * @static
1859 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1860 * @param {number} [length] Message length if known beforehand
1861 * @returns {google.datastore.admin.v1.ExportEntitiesMetadata} ExportEntitiesMetadata
1862 * @throws {Error} If the payload is not a reader or valid buffer
1863 * @throws {$protobuf.util.ProtocolError} If required fields are missing
1864 */
1865 ExportEntitiesMetadata.decode = function decode(reader, length) {
1866 if (!(reader instanceof $Reader))
1867 reader = $Reader.create(reader);
1868 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.ExportEntitiesMetadata();
1869 while (reader.pos < end) {
1870 var tag = reader.uint32();
1871 switch (tag >>> 3) {
1872 case 1:
1873 message.common = $root.google.datastore.admin.v1.CommonMetadata.decode(reader, reader.uint32());
1874 break;
1875 case 2:
1876 message.progressEntities = $root.google.datastore.admin.v1.Progress.decode(reader, reader.uint32());
1877 break;
1878 case 3:
1879 message.progressBytes = $root.google.datastore.admin.v1.Progress.decode(reader, reader.uint32());
1880 break;
1881 case 4:
1882 message.entityFilter = $root.google.datastore.admin.v1.EntityFilter.decode(reader, reader.uint32());
1883 break;
1884 case 5:
1885 message.outputUrlPrefix = reader.string();
1886 break;
1887 default:
1888 reader.skipType(tag & 7);
1889 break;
1890 }
1891 }
1892 return message;
1893 };
1894
1895 /**
1896 * Decodes an ExportEntitiesMetadata message from the specified reader or buffer, length delimited.
1897 * @function decodeDelimited
1898 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1899 * @static
1900 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
1901 * @returns {google.datastore.admin.v1.ExportEntitiesMetadata} ExportEntitiesMetadata
1902 * @throws {Error} If the payload is not a reader or valid buffer
1903 * @throws {$protobuf.util.ProtocolError} If required fields are missing
1904 */
1905 ExportEntitiesMetadata.decodeDelimited = function decodeDelimited(reader) {
1906 if (!(reader instanceof $Reader))
1907 reader = new $Reader(reader);
1908 return this.decode(reader, reader.uint32());
1909 };
1910
1911 /**
1912 * Verifies an ExportEntitiesMetadata message.
1913 * @function verify
1914 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1915 * @static
1916 * @param {Object.<string,*>} message Plain object to verify
1917 * @returns {string|null} `null` if valid, otherwise the reason why it is not
1918 */
1919 ExportEntitiesMetadata.verify = function verify(message) {
1920 if (typeof message !== "object" || message === null)
1921 return "object expected";
1922 if (message.common != null && message.hasOwnProperty("common")) {
1923 var error = $root.google.datastore.admin.v1.CommonMetadata.verify(message.common);
1924 if (error)
1925 return "common." + error;
1926 }
1927 if (message.progressEntities != null && message.hasOwnProperty("progressEntities")) {
1928 var error = $root.google.datastore.admin.v1.Progress.verify(message.progressEntities);
1929 if (error)
1930 return "progressEntities." + error;
1931 }
1932 if (message.progressBytes != null && message.hasOwnProperty("progressBytes")) {
1933 var error = $root.google.datastore.admin.v1.Progress.verify(message.progressBytes);
1934 if (error)
1935 return "progressBytes." + error;
1936 }
1937 if (message.entityFilter != null && message.hasOwnProperty("entityFilter")) {
1938 var error = $root.google.datastore.admin.v1.EntityFilter.verify(message.entityFilter);
1939 if (error)
1940 return "entityFilter." + error;
1941 }
1942 if (message.outputUrlPrefix != null && message.hasOwnProperty("outputUrlPrefix"))
1943 if (!$util.isString(message.outputUrlPrefix))
1944 return "outputUrlPrefix: string expected";
1945 return null;
1946 };
1947
1948 /**
1949 * Creates an ExportEntitiesMetadata message from a plain object. Also converts values to their respective internal types.
1950 * @function fromObject
1951 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1952 * @static
1953 * @param {Object.<string,*>} object Plain object
1954 * @returns {google.datastore.admin.v1.ExportEntitiesMetadata} ExportEntitiesMetadata
1955 */
1956 ExportEntitiesMetadata.fromObject = function fromObject(object) {
1957 if (object instanceof $root.google.datastore.admin.v1.ExportEntitiesMetadata)
1958 return object;
1959 var message = new $root.google.datastore.admin.v1.ExportEntitiesMetadata();
1960 if (object.common != null) {
1961 if (typeof object.common !== "object")
1962 throw TypeError(".google.datastore.admin.v1.ExportEntitiesMetadata.common: object expected");
1963 message.common = $root.google.datastore.admin.v1.CommonMetadata.fromObject(object.common);
1964 }
1965 if (object.progressEntities != null) {
1966 if (typeof object.progressEntities !== "object")
1967 throw TypeError(".google.datastore.admin.v1.ExportEntitiesMetadata.progressEntities: object expected");
1968 message.progressEntities = $root.google.datastore.admin.v1.Progress.fromObject(object.progressEntities);
1969 }
1970 if (object.progressBytes != null) {
1971 if (typeof object.progressBytes !== "object")
1972 throw TypeError(".google.datastore.admin.v1.ExportEntitiesMetadata.progressBytes: object expected");
1973 message.progressBytes = $root.google.datastore.admin.v1.Progress.fromObject(object.progressBytes);
1974 }
1975 if (object.entityFilter != null) {
1976 if (typeof object.entityFilter !== "object")
1977 throw TypeError(".google.datastore.admin.v1.ExportEntitiesMetadata.entityFilter: object expected");
1978 message.entityFilter = $root.google.datastore.admin.v1.EntityFilter.fromObject(object.entityFilter);
1979 }
1980 if (object.outputUrlPrefix != null)
1981 message.outputUrlPrefix = String(object.outputUrlPrefix);
1982 return message;
1983 };
1984
1985 /**
1986 * Creates a plain object from an ExportEntitiesMetadata message. Also converts values to other types if specified.
1987 * @function toObject
1988 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
1989 * @static
1990 * @param {google.datastore.admin.v1.ExportEntitiesMetadata} message ExportEntitiesMetadata
1991 * @param {$protobuf.IConversionOptions} [options] Conversion options
1992 * @returns {Object.<string,*>} Plain object
1993 */
1994 ExportEntitiesMetadata.toObject = function toObject(message, options) {
1995 if (!options)
1996 options = {};
1997 var object = {};
1998 if (options.defaults) {
1999 object.common = null;
2000 object.progressEntities = null;
2001 object.progressBytes = null;
2002 object.entityFilter = null;
2003 object.outputUrlPrefix = "";
2004 }
2005 if (message.common != null && message.hasOwnProperty("common"))
2006 object.common = $root.google.datastore.admin.v1.CommonMetadata.toObject(message.common, options);
2007 if (message.progressEntities != null && message.hasOwnProperty("progressEntities"))
2008 object.progressEntities = $root.google.datastore.admin.v1.Progress.toObject(message.progressEntities, options);
2009 if (message.progressBytes != null && message.hasOwnProperty("progressBytes"))
2010 object.progressBytes = $root.google.datastore.admin.v1.Progress.toObject(message.progressBytes, options);
2011 if (message.entityFilter != null && message.hasOwnProperty("entityFilter"))
2012 object.entityFilter = $root.google.datastore.admin.v1.EntityFilter.toObject(message.entityFilter, options);
2013 if (message.outputUrlPrefix != null && message.hasOwnProperty("outputUrlPrefix"))
2014 object.outputUrlPrefix = message.outputUrlPrefix;
2015 return object;
2016 };
2017
2018 /**
2019 * Converts this ExportEntitiesMetadata to JSON.
2020 * @function toJSON
2021 * @memberof google.datastore.admin.v1.ExportEntitiesMetadata
2022 * @instance
2023 * @returns {Object.<string,*>} JSON object
2024 */
2025 ExportEntitiesMetadata.prototype.toJSON = function toJSON() {
2026 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2027 };
2028
2029 return ExportEntitiesMetadata;
2030 })();
2031
2032 /**
2033 * OperationType enum.
2034 * @name google.datastore.admin.v1.OperationType
2035 * @enum {number}
2036 * @property {number} OPERATION_TYPE_UNSPECIFIED=0 OPERATION_TYPE_UNSPECIFIED value
2037 * @property {number} EXPORT_ENTITIES=1 EXPORT_ENTITIES value
2038 * @property {number} IMPORT_ENTITIES=2 IMPORT_ENTITIES value
2039 * @property {number} CREATE_INDEX=3 CREATE_INDEX value
2040 * @property {number} DELETE_INDEX=4 DELETE_INDEX value
2041 */
2042 v1.OperationType = (function() {
2043 var valuesById = {}, values = Object.create(valuesById);
2044 values[valuesById[0] = "OPERATION_TYPE_UNSPECIFIED"] = 0;
2045 values[valuesById[1] = "EXPORT_ENTITIES"] = 1;
2046 values[valuesById[2] = "IMPORT_ENTITIES"] = 2;
2047 values[valuesById[3] = "CREATE_INDEX"] = 3;
2048 values[valuesById[4] = "DELETE_INDEX"] = 4;
2049 return values;
2050 })();
2051
2052 v1.ImportEntitiesMetadata = (function() {
2053
2054 /**
2055 * Properties of an ImportEntitiesMetadata.
2056 * @memberof google.datastore.admin.v1
2057 * @interface IImportEntitiesMetadata
2058 * @property {google.datastore.admin.v1.ICommonMetadata|null} [common] ImportEntitiesMetadata common
2059 * @property {google.datastore.admin.v1.IProgress|null} [progressEntities] ImportEntitiesMetadata progressEntities
2060 * @property {google.datastore.admin.v1.IProgress|null} [progressBytes] ImportEntitiesMetadata progressBytes
2061 * @property {google.datastore.admin.v1.IEntityFilter|null} [entityFilter] ImportEntitiesMetadata entityFilter
2062 * @property {string|null} [inputUrl] ImportEntitiesMetadata inputUrl
2063 */
2064
2065 /**
2066 * Constructs a new ImportEntitiesMetadata.
2067 * @memberof google.datastore.admin.v1
2068 * @classdesc Represents an ImportEntitiesMetadata.
2069 * @implements IImportEntitiesMetadata
2070 * @constructor
2071 * @param {google.datastore.admin.v1.IImportEntitiesMetadata=} [properties] Properties to set
2072 */
2073 function ImportEntitiesMetadata(properties) {
2074 if (properties)
2075 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2076 if (properties[keys[i]] != null)
2077 this[keys[i]] = properties[keys[i]];
2078 }
2079
2080 /**
2081 * ImportEntitiesMetadata common.
2082 * @member {google.datastore.admin.v1.ICommonMetadata|null|undefined} common
2083 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2084 * @instance
2085 */
2086 ImportEntitiesMetadata.prototype.common = null;
2087
2088 /**
2089 * ImportEntitiesMetadata progressEntities.
2090 * @member {google.datastore.admin.v1.IProgress|null|undefined} progressEntities
2091 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2092 * @instance
2093 */
2094 ImportEntitiesMetadata.prototype.progressEntities = null;
2095
2096 /**
2097 * ImportEntitiesMetadata progressBytes.
2098 * @member {google.datastore.admin.v1.IProgress|null|undefined} progressBytes
2099 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2100 * @instance
2101 */
2102 ImportEntitiesMetadata.prototype.progressBytes = null;
2103
2104 /**
2105 * ImportEntitiesMetadata entityFilter.
2106 * @member {google.datastore.admin.v1.IEntityFilter|null|undefined} entityFilter
2107 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2108 * @instance
2109 */
2110 ImportEntitiesMetadata.prototype.entityFilter = null;
2111
2112 /**
2113 * ImportEntitiesMetadata inputUrl.
2114 * @member {string} inputUrl
2115 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2116 * @instance
2117 */
2118 ImportEntitiesMetadata.prototype.inputUrl = "";
2119
2120 /**
2121 * Creates a new ImportEntitiesMetadata instance using the specified properties.
2122 * @function create
2123 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2124 * @static
2125 * @param {google.datastore.admin.v1.IImportEntitiesMetadata=} [properties] Properties to set
2126 * @returns {google.datastore.admin.v1.ImportEntitiesMetadata} ImportEntitiesMetadata instance
2127 */
2128 ImportEntitiesMetadata.create = function create(properties) {
2129 return new ImportEntitiesMetadata(properties);
2130 };
2131
2132 /**
2133 * Encodes the specified ImportEntitiesMetadata message. Does not implicitly {@link google.datastore.admin.v1.ImportEntitiesMetadata.verify|verify} messages.
2134 * @function encode
2135 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2136 * @static
2137 * @param {google.datastore.admin.v1.IImportEntitiesMetadata} message ImportEntitiesMetadata message or plain object to encode
2138 * @param {$protobuf.Writer} [writer] Writer to encode to
2139 * @returns {$protobuf.Writer} Writer
2140 */
2141 ImportEntitiesMetadata.encode = function encode(message, writer) {
2142 if (!writer)
2143 writer = $Writer.create();
2144 if (message.common != null && Object.hasOwnProperty.call(message, "common"))
2145 $root.google.datastore.admin.v1.CommonMetadata.encode(message.common, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
2146 if (message.progressEntities != null && Object.hasOwnProperty.call(message, "progressEntities"))
2147 $root.google.datastore.admin.v1.Progress.encode(message.progressEntities, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
2148 if (message.progressBytes != null && Object.hasOwnProperty.call(message, "progressBytes"))
2149 $root.google.datastore.admin.v1.Progress.encode(message.progressBytes, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
2150 if (message.entityFilter != null && Object.hasOwnProperty.call(message, "entityFilter"))
2151 $root.google.datastore.admin.v1.EntityFilter.encode(message.entityFilter, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
2152 if (message.inputUrl != null && Object.hasOwnProperty.call(message, "inputUrl"))
2153 writer.uint32(/* id 5, wireType 2 =*/42).string(message.inputUrl);
2154 return writer;
2155 };
2156
2157 /**
2158 * Encodes the specified ImportEntitiesMetadata message, length delimited. Does not implicitly {@link google.datastore.admin.v1.ImportEntitiesMetadata.verify|verify} messages.
2159 * @function encodeDelimited
2160 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2161 * @static
2162 * @param {google.datastore.admin.v1.IImportEntitiesMetadata} message ImportEntitiesMetadata message or plain object to encode
2163 * @param {$protobuf.Writer} [writer] Writer to encode to
2164 * @returns {$protobuf.Writer} Writer
2165 */
2166 ImportEntitiesMetadata.encodeDelimited = function encodeDelimited(message, writer) {
2167 return this.encode(message, writer).ldelim();
2168 };
2169
2170 /**
2171 * Decodes an ImportEntitiesMetadata message from the specified reader or buffer.
2172 * @function decode
2173 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2174 * @static
2175 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2176 * @param {number} [length] Message length if known beforehand
2177 * @returns {google.datastore.admin.v1.ImportEntitiesMetadata} ImportEntitiesMetadata
2178 * @throws {Error} If the payload is not a reader or valid buffer
2179 * @throws {$protobuf.util.ProtocolError} If required fields are missing
2180 */
2181 ImportEntitiesMetadata.decode = function decode(reader, length) {
2182 if (!(reader instanceof $Reader))
2183 reader = $Reader.create(reader);
2184 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.ImportEntitiesMetadata();
2185 while (reader.pos < end) {
2186 var tag = reader.uint32();
2187 switch (tag >>> 3) {
2188 case 1:
2189 message.common = $root.google.datastore.admin.v1.CommonMetadata.decode(reader, reader.uint32());
2190 break;
2191 case 2:
2192 message.progressEntities = $root.google.datastore.admin.v1.Progress.decode(reader, reader.uint32());
2193 break;
2194 case 3:
2195 message.progressBytes = $root.google.datastore.admin.v1.Progress.decode(reader, reader.uint32());
2196 break;
2197 case 4:
2198 message.entityFilter = $root.google.datastore.admin.v1.EntityFilter.decode(reader, reader.uint32());
2199 break;
2200 case 5:
2201 message.inputUrl = reader.string();
2202 break;
2203 default:
2204 reader.skipType(tag & 7);
2205 break;
2206 }
2207 }
2208 return message;
2209 };
2210
2211 /**
2212 * Decodes an ImportEntitiesMetadata message from the specified reader or buffer, length delimited.
2213 * @function decodeDelimited
2214 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2215 * @static
2216 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2217 * @returns {google.datastore.admin.v1.ImportEntitiesMetadata} ImportEntitiesMetadata
2218 * @throws {Error} If the payload is not a reader or valid buffer
2219 * @throws {$protobuf.util.ProtocolError} If required fields are missing
2220 */
2221 ImportEntitiesMetadata.decodeDelimited = function decodeDelimited(reader) {
2222 if (!(reader instanceof $Reader))
2223 reader = new $Reader(reader);
2224 return this.decode(reader, reader.uint32());
2225 };
2226
2227 /**
2228 * Verifies an ImportEntitiesMetadata message.
2229 * @function verify
2230 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2231 * @static
2232 * @param {Object.<string,*>} message Plain object to verify
2233 * @returns {string|null} `null` if valid, otherwise the reason why it is not
2234 */
2235 ImportEntitiesMetadata.verify = function verify(message) {
2236 if (typeof message !== "object" || message === null)
2237 return "object expected";
2238 if (message.common != null && message.hasOwnProperty("common")) {
2239 var error = $root.google.datastore.admin.v1.CommonMetadata.verify(message.common);
2240 if (error)
2241 return "common." + error;
2242 }
2243 if (message.progressEntities != null && message.hasOwnProperty("progressEntities")) {
2244 var error = $root.google.datastore.admin.v1.Progress.verify(message.progressEntities);
2245 if (error)
2246 return "progressEntities." + error;
2247 }
2248 if (message.progressBytes != null && message.hasOwnProperty("progressBytes")) {
2249 var error = $root.google.datastore.admin.v1.Progress.verify(message.progressBytes);
2250 if (error)
2251 return "progressBytes." + error;
2252 }
2253 if (message.entityFilter != null && message.hasOwnProperty("entityFilter")) {
2254 var error = $root.google.datastore.admin.v1.EntityFilter.verify(message.entityFilter);
2255 if (error)
2256 return "entityFilter." + error;
2257 }
2258 if (message.inputUrl != null && message.hasOwnProperty("inputUrl"))
2259 if (!$util.isString(message.inputUrl))
2260 return "inputUrl: string expected";
2261 return null;
2262 };
2263
2264 /**
2265 * Creates an ImportEntitiesMetadata message from a plain object. Also converts values to their respective internal types.
2266 * @function fromObject
2267 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2268 * @static
2269 * @param {Object.<string,*>} object Plain object
2270 * @returns {google.datastore.admin.v1.ImportEntitiesMetadata} ImportEntitiesMetadata
2271 */
2272 ImportEntitiesMetadata.fromObject = function fromObject(object) {
2273 if (object instanceof $root.google.datastore.admin.v1.ImportEntitiesMetadata)
2274 return object;
2275 var message = new $root.google.datastore.admin.v1.ImportEntitiesMetadata();
2276 if (object.common != null) {
2277 if (typeof object.common !== "object")
2278 throw TypeError(".google.datastore.admin.v1.ImportEntitiesMetadata.common: object expected");
2279 message.common = $root.google.datastore.admin.v1.CommonMetadata.fromObject(object.common);
2280 }
2281 if (object.progressEntities != null) {
2282 if (typeof object.progressEntities !== "object")
2283 throw TypeError(".google.datastore.admin.v1.ImportEntitiesMetadata.progressEntities: object expected");
2284 message.progressEntities = $root.google.datastore.admin.v1.Progress.fromObject(object.progressEntities);
2285 }
2286 if (object.progressBytes != null) {
2287 if (typeof object.progressBytes !== "object")
2288 throw TypeError(".google.datastore.admin.v1.ImportEntitiesMetadata.progressBytes: object expected");
2289 message.progressBytes = $root.google.datastore.admin.v1.Progress.fromObject(object.progressBytes);
2290 }
2291 if (object.entityFilter != null) {
2292 if (typeof object.entityFilter !== "object")
2293 throw TypeError(".google.datastore.admin.v1.ImportEntitiesMetadata.entityFilter: object expected");
2294 message.entityFilter = $root.google.datastore.admin.v1.EntityFilter.fromObject(object.entityFilter);
2295 }
2296 if (object.inputUrl != null)
2297 message.inputUrl = String(object.inputUrl);
2298 return message;
2299 };
2300
2301 /**
2302 * Creates a plain object from an ImportEntitiesMetadata message. Also converts values to other types if specified.
2303 * @function toObject
2304 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2305 * @static
2306 * @param {google.datastore.admin.v1.ImportEntitiesMetadata} message ImportEntitiesMetadata
2307 * @param {$protobuf.IConversionOptions} [options] Conversion options
2308 * @returns {Object.<string,*>} Plain object
2309 */
2310 ImportEntitiesMetadata.toObject = function toObject(message, options) {
2311 if (!options)
2312 options = {};
2313 var object = {};
2314 if (options.defaults) {
2315 object.common = null;
2316 object.progressEntities = null;
2317 object.progressBytes = null;
2318 object.entityFilter = null;
2319 object.inputUrl = "";
2320 }
2321 if (message.common != null && message.hasOwnProperty("common"))
2322 object.common = $root.google.datastore.admin.v1.CommonMetadata.toObject(message.common, options);
2323 if (message.progressEntities != null && message.hasOwnProperty("progressEntities"))
2324 object.progressEntities = $root.google.datastore.admin.v1.Progress.toObject(message.progressEntities, options);
2325 if (message.progressBytes != null && message.hasOwnProperty("progressBytes"))
2326 object.progressBytes = $root.google.datastore.admin.v1.Progress.toObject(message.progressBytes, options);
2327 if (message.entityFilter != null && message.hasOwnProperty("entityFilter"))
2328 object.entityFilter = $root.google.datastore.admin.v1.EntityFilter.toObject(message.entityFilter, options);
2329 if (message.inputUrl != null && message.hasOwnProperty("inputUrl"))
2330 object.inputUrl = message.inputUrl;
2331 return object;
2332 };
2333
2334 /**
2335 * Converts this ImportEntitiesMetadata to JSON.
2336 * @function toJSON
2337 * @memberof google.datastore.admin.v1.ImportEntitiesMetadata
2338 * @instance
2339 * @returns {Object.<string,*>} JSON object
2340 */
2341 ImportEntitiesMetadata.prototype.toJSON = function toJSON() {
2342 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2343 };
2344
2345 return ImportEntitiesMetadata;
2346 })();
2347
2348 v1.EntityFilter = (function() {
2349
2350 /**
2351 * Properties of an EntityFilter.
2352 * @memberof google.datastore.admin.v1
2353 * @interface IEntityFilter
2354 * @property {Array.<string>|null} [kinds] EntityFilter kinds
2355 * @property {Array.<string>|null} [namespaceIds] EntityFilter namespaceIds
2356 */
2357
2358 /**
2359 * Constructs a new EntityFilter.
2360 * @memberof google.datastore.admin.v1
2361 * @classdesc Represents an EntityFilter.
2362 * @implements IEntityFilter
2363 * @constructor
2364 * @param {google.datastore.admin.v1.IEntityFilter=} [properties] Properties to set
2365 */
2366 function EntityFilter(properties) {
2367 this.kinds = [];
2368 this.namespaceIds = [];
2369 if (properties)
2370 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2371 if (properties[keys[i]] != null)
2372 this[keys[i]] = properties[keys[i]];
2373 }
2374
2375 /**
2376 * EntityFilter kinds.
2377 * @member {Array.<string>} kinds
2378 * @memberof google.datastore.admin.v1.EntityFilter
2379 * @instance
2380 */
2381 EntityFilter.prototype.kinds = $util.emptyArray;
2382
2383 /**
2384 * EntityFilter namespaceIds.
2385 * @member {Array.<string>} namespaceIds
2386 * @memberof google.datastore.admin.v1.EntityFilter
2387 * @instance
2388 */
2389 EntityFilter.prototype.namespaceIds = $util.emptyArray;
2390
2391 /**
2392 * Creates a new EntityFilter instance using the specified properties.
2393 * @function create
2394 * @memberof google.datastore.admin.v1.EntityFilter
2395 * @static
2396 * @param {google.datastore.admin.v1.IEntityFilter=} [properties] Properties to set
2397 * @returns {google.datastore.admin.v1.EntityFilter} EntityFilter instance
2398 */
2399 EntityFilter.create = function create(properties) {
2400 return new EntityFilter(properties);
2401 };
2402
2403 /**
2404 * Encodes the specified EntityFilter message. Does not implicitly {@link google.datastore.admin.v1.EntityFilter.verify|verify} messages.
2405 * @function encode
2406 * @memberof google.datastore.admin.v1.EntityFilter
2407 * @static
2408 * @param {google.datastore.admin.v1.IEntityFilter} message EntityFilter message or plain object to encode
2409 * @param {$protobuf.Writer} [writer] Writer to encode to
2410 * @returns {$protobuf.Writer} Writer
2411 */
2412 EntityFilter.encode = function encode(message, writer) {
2413 if (!writer)
2414 writer = $Writer.create();
2415 if (message.kinds != null && message.kinds.length)
2416 for (var i = 0; i < message.kinds.length; ++i)
2417 writer.uint32(/* id 1, wireType 2 =*/10).string(message.kinds[i]);
2418 if (message.namespaceIds != null && message.namespaceIds.length)
2419 for (var i = 0; i < message.namespaceIds.length; ++i)
2420 writer.uint32(/* id 2, wireType 2 =*/18).string(message.namespaceIds[i]);
2421 return writer;
2422 };
2423
2424 /**
2425 * Encodes the specified EntityFilter message, length delimited. Does not implicitly {@link google.datastore.admin.v1.EntityFilter.verify|verify} messages.
2426 * @function encodeDelimited
2427 * @memberof google.datastore.admin.v1.EntityFilter
2428 * @static
2429 * @param {google.datastore.admin.v1.IEntityFilter} message EntityFilter message or plain object to encode
2430 * @param {$protobuf.Writer} [writer] Writer to encode to
2431 * @returns {$protobuf.Writer} Writer
2432 */
2433 EntityFilter.encodeDelimited = function encodeDelimited(message, writer) {
2434 return this.encode(message, writer).ldelim();
2435 };
2436
2437 /**
2438 * Decodes an EntityFilter message from the specified reader or buffer.
2439 * @function decode
2440 * @memberof google.datastore.admin.v1.EntityFilter
2441 * @static
2442 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2443 * @param {number} [length] Message length if known beforehand
2444 * @returns {google.datastore.admin.v1.EntityFilter} EntityFilter
2445 * @throws {Error} If the payload is not a reader or valid buffer
2446 * @throws {$protobuf.util.ProtocolError} If required fields are missing
2447 */
2448 EntityFilter.decode = function decode(reader, length) {
2449 if (!(reader instanceof $Reader))
2450 reader = $Reader.create(reader);
2451 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.EntityFilter();
2452 while (reader.pos < end) {
2453 var tag = reader.uint32();
2454 switch (tag >>> 3) {
2455 case 1:
2456 if (!(message.kinds && message.kinds.length))
2457 message.kinds = [];
2458 message.kinds.push(reader.string());
2459 break;
2460 case 2:
2461 if (!(message.namespaceIds && message.namespaceIds.length))
2462 message.namespaceIds = [];
2463 message.namespaceIds.push(reader.string());
2464 break;
2465 default:
2466 reader.skipType(tag & 7);
2467 break;
2468 }
2469 }
2470 return message;
2471 };
2472
2473 /**
2474 * Decodes an EntityFilter message from the specified reader or buffer, length delimited.
2475 * @function decodeDelimited
2476 * @memberof google.datastore.admin.v1.EntityFilter
2477 * @static
2478 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2479 * @returns {google.datastore.admin.v1.EntityFilter} EntityFilter
2480 * @throws {Error} If the payload is not a reader or valid buffer
2481 * @throws {$protobuf.util.ProtocolError} If required fields are missing
2482 */
2483 EntityFilter.decodeDelimited = function decodeDelimited(reader) {
2484 if (!(reader instanceof $Reader))
2485 reader = new $Reader(reader);
2486 return this.decode(reader, reader.uint32());
2487 };
2488
2489 /**
2490 * Verifies an EntityFilter message.
2491 * @function verify
2492 * @memberof google.datastore.admin.v1.EntityFilter
2493 * @static
2494 * @param {Object.<string,*>} message Plain object to verify
2495 * @returns {string|null} `null` if valid, otherwise the reason why it is not
2496 */
2497 EntityFilter.verify = function verify(message) {
2498 if (typeof message !== "object" || message === null)
2499 return "object expected";
2500 if (message.kinds != null && message.hasOwnProperty("kinds")) {
2501 if (!Array.isArray(message.kinds))
2502 return "kinds: array expected";
2503 for (var i = 0; i < message.kinds.length; ++i)
2504 if (!$util.isString(message.kinds[i]))
2505 return "kinds: string[] expected";
2506 }
2507 if (message.namespaceIds != null && message.hasOwnProperty("namespaceIds")) {
2508 if (!Array.isArray(message.namespaceIds))
2509 return "namespaceIds: array expected";
2510 for (var i = 0; i < message.namespaceIds.length; ++i)
2511 if (!$util.isString(message.namespaceIds[i]))
2512 return "namespaceIds: string[] expected";
2513 }
2514 return null;
2515 };
2516
2517 /**
2518 * Creates an EntityFilter message from a plain object. Also converts values to their respective internal types.
2519 * @function fromObject
2520 * @memberof google.datastore.admin.v1.EntityFilter
2521 * @static
2522 * @param {Object.<string,*>} object Plain object
2523 * @returns {google.datastore.admin.v1.EntityFilter} EntityFilter
2524 */
2525 EntityFilter.fromObject = function fromObject(object) {
2526 if (object instanceof $root.google.datastore.admin.v1.EntityFilter)
2527 return object;
2528 var message = new $root.google.datastore.admin.v1.EntityFilter();
2529 if (object.kinds) {
2530 if (!Array.isArray(object.kinds))
2531 throw TypeError(".google.datastore.admin.v1.EntityFilter.kinds: array expected");
2532 message.kinds = [];
2533 for (var i = 0; i < object.kinds.length; ++i)
2534 message.kinds[i] = String(object.kinds[i]);
2535 }
2536 if (object.namespaceIds) {
2537 if (!Array.isArray(object.namespaceIds))
2538 throw TypeError(".google.datastore.admin.v1.EntityFilter.namespaceIds: array expected");
2539 message.namespaceIds = [];
2540 for (var i = 0; i < object.namespaceIds.length; ++i)
2541 message.namespaceIds[i] = String(object.namespaceIds[i]);
2542 }
2543 return message;
2544 };
2545
2546 /**
2547 * Creates a plain object from an EntityFilter message. Also converts values to other types if specified.
2548 * @function toObject
2549 * @memberof google.datastore.admin.v1.EntityFilter
2550 * @static
2551 * @param {google.datastore.admin.v1.EntityFilter} message EntityFilter
2552 * @param {$protobuf.IConversionOptions} [options] Conversion options
2553 * @returns {Object.<string,*>} Plain object
2554 */
2555 EntityFilter.toObject = function toObject(message, options) {
2556 if (!options)
2557 options = {};
2558 var object = {};
2559 if (options.arrays || options.defaults) {
2560 object.kinds = [];
2561 object.namespaceIds = [];
2562 }
2563 if (message.kinds && message.kinds.length) {
2564 object.kinds = [];
2565 for (var j = 0; j < message.kinds.length; ++j)
2566 object.kinds[j] = message.kinds[j];
2567 }
2568 if (message.namespaceIds && message.namespaceIds.length) {
2569 object.namespaceIds = [];
2570 for (var j = 0; j < message.namespaceIds.length; ++j)
2571 object.namespaceIds[j] = message.namespaceIds[j];
2572 }
2573 return object;
2574 };
2575
2576 /**
2577 * Converts this EntityFilter to JSON.
2578 * @function toJSON
2579 * @memberof google.datastore.admin.v1.EntityFilter
2580 * @instance
2581 * @returns {Object.<string,*>} JSON object
2582 */
2583 EntityFilter.prototype.toJSON = function toJSON() {
2584 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2585 };
2586
2587 return EntityFilter;
2588 })();
2589
2590 v1.CreateIndexRequest = (function() {
2591
2592 /**
2593 * Properties of a CreateIndexRequest.
2594 * @memberof google.datastore.admin.v1
2595 * @interface ICreateIndexRequest
2596 * @property {string|null} [projectId] CreateIndexRequest projectId
2597 * @property {google.datastore.admin.v1.IIndex|null} [index] CreateIndexRequest index
2598 */
2599
2600 /**
2601 * Constructs a new CreateIndexRequest.
2602 * @memberof google.datastore.admin.v1
2603 * @classdesc Represents a CreateIndexRequest.
2604 * @implements ICreateIndexRequest
2605 * @constructor
2606 * @param {google.datastore.admin.v1.ICreateIndexRequest=} [properties] Properties to set
2607 */
2608 function CreateIndexRequest(properties) {
2609 if (properties)
2610 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2611 if (properties[keys[i]] != null)
2612 this[keys[i]] = properties[keys[i]];
2613 }
2614
2615 /**
2616 * CreateIndexRequest projectId.
2617 * @member {string} projectId
2618 * @memberof google.datastore.admin.v1.CreateIndexRequest
2619 * @instance
2620 */
2621 CreateIndexRequest.prototype.projectId = "";
2622
2623 /**
2624 * CreateIndexRequest index.
2625 * @member {google.datastore.admin.v1.IIndex|null|undefined} index
2626 * @memberof google.datastore.admin.v1.CreateIndexRequest
2627 * @instance
2628 */
2629 CreateIndexRequest.prototype.index = null;
2630
2631 /**
2632 * Creates a new CreateIndexRequest instance using the specified properties.
2633 * @function create
2634 * @memberof google.datastore.admin.v1.CreateIndexRequest
2635 * @static
2636 * @param {google.datastore.admin.v1.ICreateIndexRequest=} [properties] Properties to set
2637 * @returns {google.datastore.admin.v1.CreateIndexRequest} CreateIndexRequest instance
2638 */
2639 CreateIndexRequest.create = function create(properties) {
2640 return new CreateIndexRequest(properties);
2641 };
2642
2643 /**
2644 * Encodes the specified CreateIndexRequest message. Does not implicitly {@link google.datastore.admin.v1.CreateIndexRequest.verify|verify} messages.
2645 * @function encode
2646 * @memberof google.datastore.admin.v1.CreateIndexRequest
2647 * @static
2648 * @param {google.datastore.admin.v1.ICreateIndexRequest} message CreateIndexRequest message or plain object to encode
2649 * @param {$protobuf.Writer} [writer] Writer to encode to
2650 * @returns {$protobuf.Writer} Writer
2651 */
2652 CreateIndexRequest.encode = function encode(message, writer) {
2653 if (!writer)
2654 writer = $Writer.create();
2655 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
2656 writer.uint32(/* id 1, wireType 2 =*/10).string(message.projectId);
2657 if (message.index != null && Object.hasOwnProperty.call(message, "index"))
2658 $root.google.datastore.admin.v1.Index.encode(message.index, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
2659 return writer;
2660 };
2661
2662 /**
2663 * Encodes the specified CreateIndexRequest message, length delimited. Does not implicitly {@link google.datastore.admin.v1.CreateIndexRequest.verify|verify} messages.
2664 * @function encodeDelimited
2665 * @memberof google.datastore.admin.v1.CreateIndexRequest
2666 * @static
2667 * @param {google.datastore.admin.v1.ICreateIndexRequest} message CreateIndexRequest message or plain object to encode
2668 * @param {$protobuf.Writer} [writer] Writer to encode to
2669 * @returns {$protobuf.Writer} Writer
2670 */
2671 CreateIndexRequest.encodeDelimited = function encodeDelimited(message, writer) {
2672 return this.encode(message, writer).ldelim();
2673 };
2674
2675 /**
2676 * Decodes a CreateIndexRequest message from the specified reader or buffer.
2677 * @function decode
2678 * @memberof google.datastore.admin.v1.CreateIndexRequest
2679 * @static
2680 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2681 * @param {number} [length] Message length if known beforehand
2682 * @returns {google.datastore.admin.v1.CreateIndexRequest} CreateIndexRequest
2683 * @throws {Error} If the payload is not a reader or valid buffer
2684 * @throws {$protobuf.util.ProtocolError} If required fields are missing
2685 */
2686 CreateIndexRequest.decode = function decode(reader, length) {
2687 if (!(reader instanceof $Reader))
2688 reader = $Reader.create(reader);
2689 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.CreateIndexRequest();
2690 while (reader.pos < end) {
2691 var tag = reader.uint32();
2692 switch (tag >>> 3) {
2693 case 1:
2694 message.projectId = reader.string();
2695 break;
2696 case 3:
2697 message.index = $root.google.datastore.admin.v1.Index.decode(reader, reader.uint32());
2698 break;
2699 default:
2700 reader.skipType(tag & 7);
2701 break;
2702 }
2703 }
2704 return message;
2705 };
2706
2707 /**
2708 * Decodes a CreateIndexRequest message from the specified reader or buffer, length delimited.
2709 * @function decodeDelimited
2710 * @memberof google.datastore.admin.v1.CreateIndexRequest
2711 * @static
2712 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2713 * @returns {google.datastore.admin.v1.CreateIndexRequest} CreateIndexRequest
2714 * @throws {Error} If the payload is not a reader or valid buffer
2715 * @throws {$protobuf.util.ProtocolError} If required fields are missing
2716 */
2717 CreateIndexRequest.decodeDelimited = function decodeDelimited(reader) {
2718 if (!(reader instanceof $Reader))
2719 reader = new $Reader(reader);
2720 return this.decode(reader, reader.uint32());
2721 };
2722
2723 /**
2724 * Verifies a CreateIndexRequest message.
2725 * @function verify
2726 * @memberof google.datastore.admin.v1.CreateIndexRequest
2727 * @static
2728 * @param {Object.<string,*>} message Plain object to verify
2729 * @returns {string|null} `null` if valid, otherwise the reason why it is not
2730 */
2731 CreateIndexRequest.verify = function verify(message) {
2732 if (typeof message !== "object" || message === null)
2733 return "object expected";
2734 if (message.projectId != null && message.hasOwnProperty("projectId"))
2735 if (!$util.isString(message.projectId))
2736 return "projectId: string expected";
2737 if (message.index != null && message.hasOwnProperty("index")) {
2738 var error = $root.google.datastore.admin.v1.Index.verify(message.index);
2739 if (error)
2740 return "index." + error;
2741 }
2742 return null;
2743 };
2744
2745 /**
2746 * Creates a CreateIndexRequest message from a plain object. Also converts values to their respective internal types.
2747 * @function fromObject
2748 * @memberof google.datastore.admin.v1.CreateIndexRequest
2749 * @static
2750 * @param {Object.<string,*>} object Plain object
2751 * @returns {google.datastore.admin.v1.CreateIndexRequest} CreateIndexRequest
2752 */
2753 CreateIndexRequest.fromObject = function fromObject(object) {
2754 if (object instanceof $root.google.datastore.admin.v1.CreateIndexRequest)
2755 return object;
2756 var message = new $root.google.datastore.admin.v1.CreateIndexRequest();
2757 if (object.projectId != null)
2758 message.projectId = String(object.projectId);
2759 if (object.index != null) {
2760 if (typeof object.index !== "object")
2761 throw TypeError(".google.datastore.admin.v1.CreateIndexRequest.index: object expected");
2762 message.index = $root.google.datastore.admin.v1.Index.fromObject(object.index);
2763 }
2764 return message;
2765 };
2766
2767 /**
2768 * Creates a plain object from a CreateIndexRequest message. Also converts values to other types if specified.
2769 * @function toObject
2770 * @memberof google.datastore.admin.v1.CreateIndexRequest
2771 * @static
2772 * @param {google.datastore.admin.v1.CreateIndexRequest} message CreateIndexRequest
2773 * @param {$protobuf.IConversionOptions} [options] Conversion options
2774 * @returns {Object.<string,*>} Plain object
2775 */
2776 CreateIndexRequest.toObject = function toObject(message, options) {
2777 if (!options)
2778 options = {};
2779 var object = {};
2780 if (options.defaults) {
2781 object.projectId = "";
2782 object.index = null;
2783 }
2784 if (message.projectId != null && message.hasOwnProperty("projectId"))
2785 object.projectId = message.projectId;
2786 if (message.index != null && message.hasOwnProperty("index"))
2787 object.index = $root.google.datastore.admin.v1.Index.toObject(message.index, options);
2788 return object;
2789 };
2790
2791 /**
2792 * Converts this CreateIndexRequest to JSON.
2793 * @function toJSON
2794 * @memberof google.datastore.admin.v1.CreateIndexRequest
2795 * @instance
2796 * @returns {Object.<string,*>} JSON object
2797 */
2798 CreateIndexRequest.prototype.toJSON = function toJSON() {
2799 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
2800 };
2801
2802 return CreateIndexRequest;
2803 })();
2804
2805 v1.DeleteIndexRequest = (function() {
2806
2807 /**
2808 * Properties of a DeleteIndexRequest.
2809 * @memberof google.datastore.admin.v1
2810 * @interface IDeleteIndexRequest
2811 * @property {string|null} [projectId] DeleteIndexRequest projectId
2812 * @property {string|null} [indexId] DeleteIndexRequest indexId
2813 */
2814
2815 /**
2816 * Constructs a new DeleteIndexRequest.
2817 * @memberof google.datastore.admin.v1
2818 * @classdesc Represents a DeleteIndexRequest.
2819 * @implements IDeleteIndexRequest
2820 * @constructor
2821 * @param {google.datastore.admin.v1.IDeleteIndexRequest=} [properties] Properties to set
2822 */
2823 function DeleteIndexRequest(properties) {
2824 if (properties)
2825 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
2826 if (properties[keys[i]] != null)
2827 this[keys[i]] = properties[keys[i]];
2828 }
2829
2830 /**
2831 * DeleteIndexRequest projectId.
2832 * @member {string} projectId
2833 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2834 * @instance
2835 */
2836 DeleteIndexRequest.prototype.projectId = "";
2837
2838 /**
2839 * DeleteIndexRequest indexId.
2840 * @member {string} indexId
2841 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2842 * @instance
2843 */
2844 DeleteIndexRequest.prototype.indexId = "";
2845
2846 /**
2847 * Creates a new DeleteIndexRequest instance using the specified properties.
2848 * @function create
2849 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2850 * @static
2851 * @param {google.datastore.admin.v1.IDeleteIndexRequest=} [properties] Properties to set
2852 * @returns {google.datastore.admin.v1.DeleteIndexRequest} DeleteIndexRequest instance
2853 */
2854 DeleteIndexRequest.create = function create(properties) {
2855 return new DeleteIndexRequest(properties);
2856 };
2857
2858 /**
2859 * Encodes the specified DeleteIndexRequest message. Does not implicitly {@link google.datastore.admin.v1.DeleteIndexRequest.verify|verify} messages.
2860 * @function encode
2861 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2862 * @static
2863 * @param {google.datastore.admin.v1.IDeleteIndexRequest} message DeleteIndexRequest message or plain object to encode
2864 * @param {$protobuf.Writer} [writer] Writer to encode to
2865 * @returns {$protobuf.Writer} Writer
2866 */
2867 DeleteIndexRequest.encode = function encode(message, writer) {
2868 if (!writer)
2869 writer = $Writer.create();
2870 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
2871 writer.uint32(/* id 1, wireType 2 =*/10).string(message.projectId);
2872 if (message.indexId != null && Object.hasOwnProperty.call(message, "indexId"))
2873 writer.uint32(/* id 3, wireType 2 =*/26).string(message.indexId);
2874 return writer;
2875 };
2876
2877 /**
2878 * Encodes the specified DeleteIndexRequest message, length delimited. Does not implicitly {@link google.datastore.admin.v1.DeleteIndexRequest.verify|verify} messages.
2879 * @function encodeDelimited
2880 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2881 * @static
2882 * @param {google.datastore.admin.v1.IDeleteIndexRequest} message DeleteIndexRequest message or plain object to encode
2883 * @param {$protobuf.Writer} [writer] Writer to encode to
2884 * @returns {$protobuf.Writer} Writer
2885 */
2886 DeleteIndexRequest.encodeDelimited = function encodeDelimited(message, writer) {
2887 return this.encode(message, writer).ldelim();
2888 };
2889
2890 /**
2891 * Decodes a DeleteIndexRequest message from the specified reader or buffer.
2892 * @function decode
2893 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2894 * @static
2895 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2896 * @param {number} [length] Message length if known beforehand
2897 * @returns {google.datastore.admin.v1.DeleteIndexRequest} DeleteIndexRequest
2898 * @throws {Error} If the payload is not a reader or valid buffer
2899 * @throws {$protobuf.util.ProtocolError} If required fields are missing
2900 */
2901 DeleteIndexRequest.decode = function decode(reader, length) {
2902 if (!(reader instanceof $Reader))
2903 reader = $Reader.create(reader);
2904 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.DeleteIndexRequest();
2905 while (reader.pos < end) {
2906 var tag = reader.uint32();
2907 switch (tag >>> 3) {
2908 case 1:
2909 message.projectId = reader.string();
2910 break;
2911 case 3:
2912 message.indexId = reader.string();
2913 break;
2914 default:
2915 reader.skipType(tag & 7);
2916 break;
2917 }
2918 }
2919 return message;
2920 };
2921
2922 /**
2923 * Decodes a DeleteIndexRequest message from the specified reader or buffer, length delimited.
2924 * @function decodeDelimited
2925 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2926 * @static
2927 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
2928 * @returns {google.datastore.admin.v1.DeleteIndexRequest} DeleteIndexRequest
2929 * @throws {Error} If the payload is not a reader or valid buffer
2930 * @throws {$protobuf.util.ProtocolError} If required fields are missing
2931 */
2932 DeleteIndexRequest.decodeDelimited = function decodeDelimited(reader) {
2933 if (!(reader instanceof $Reader))
2934 reader = new $Reader(reader);
2935 return this.decode(reader, reader.uint32());
2936 };
2937
2938 /**
2939 * Verifies a DeleteIndexRequest message.
2940 * @function verify
2941 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2942 * @static
2943 * @param {Object.<string,*>} message Plain object to verify
2944 * @returns {string|null} `null` if valid, otherwise the reason why it is not
2945 */
2946 DeleteIndexRequest.verify = function verify(message) {
2947 if (typeof message !== "object" || message === null)
2948 return "object expected";
2949 if (message.projectId != null && message.hasOwnProperty("projectId"))
2950 if (!$util.isString(message.projectId))
2951 return "projectId: string expected";
2952 if (message.indexId != null && message.hasOwnProperty("indexId"))
2953 if (!$util.isString(message.indexId))
2954 return "indexId: string expected";
2955 return null;
2956 };
2957
2958 /**
2959 * Creates a DeleteIndexRequest message from a plain object. Also converts values to their respective internal types.
2960 * @function fromObject
2961 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2962 * @static
2963 * @param {Object.<string,*>} object Plain object
2964 * @returns {google.datastore.admin.v1.DeleteIndexRequest} DeleteIndexRequest
2965 */
2966 DeleteIndexRequest.fromObject = function fromObject(object) {
2967 if (object instanceof $root.google.datastore.admin.v1.DeleteIndexRequest)
2968 return object;
2969 var message = new $root.google.datastore.admin.v1.DeleteIndexRequest();
2970 if (object.projectId != null)
2971 message.projectId = String(object.projectId);
2972 if (object.indexId != null)
2973 message.indexId = String(object.indexId);
2974 return message;
2975 };
2976
2977 /**
2978 * Creates a plain object from a DeleteIndexRequest message. Also converts values to other types if specified.
2979 * @function toObject
2980 * @memberof google.datastore.admin.v1.DeleteIndexRequest
2981 * @static
2982 * @param {google.datastore.admin.v1.DeleteIndexRequest} message DeleteIndexRequest
2983 * @param {$protobuf.IConversionOptions} [options] Conversion options
2984 * @returns {Object.<string,*>} Plain object
2985 */
2986 DeleteIndexRequest.toObject = function toObject(message, options) {
2987 if (!options)
2988 options = {};
2989 var object = {};
2990 if (options.defaults) {
2991 object.projectId = "";
2992 object.indexId = "";
2993 }
2994 if (message.projectId != null && message.hasOwnProperty("projectId"))
2995 object.projectId = message.projectId;
2996 if (message.indexId != null && message.hasOwnProperty("indexId"))
2997 object.indexId = message.indexId;
2998 return object;
2999 };
3000
3001 /**
3002 * Converts this DeleteIndexRequest to JSON.
3003 * @function toJSON
3004 * @memberof google.datastore.admin.v1.DeleteIndexRequest
3005 * @instance
3006 * @returns {Object.<string,*>} JSON object
3007 */
3008 DeleteIndexRequest.prototype.toJSON = function toJSON() {
3009 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3010 };
3011
3012 return DeleteIndexRequest;
3013 })();
3014
3015 v1.GetIndexRequest = (function() {
3016
3017 /**
3018 * Properties of a GetIndexRequest.
3019 * @memberof google.datastore.admin.v1
3020 * @interface IGetIndexRequest
3021 * @property {string|null} [projectId] GetIndexRequest projectId
3022 * @property {string|null} [indexId] GetIndexRequest indexId
3023 */
3024
3025 /**
3026 * Constructs a new GetIndexRequest.
3027 * @memberof google.datastore.admin.v1
3028 * @classdesc Represents a GetIndexRequest.
3029 * @implements IGetIndexRequest
3030 * @constructor
3031 * @param {google.datastore.admin.v1.IGetIndexRequest=} [properties] Properties to set
3032 */
3033 function GetIndexRequest(properties) {
3034 if (properties)
3035 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3036 if (properties[keys[i]] != null)
3037 this[keys[i]] = properties[keys[i]];
3038 }
3039
3040 /**
3041 * GetIndexRequest projectId.
3042 * @member {string} projectId
3043 * @memberof google.datastore.admin.v1.GetIndexRequest
3044 * @instance
3045 */
3046 GetIndexRequest.prototype.projectId = "";
3047
3048 /**
3049 * GetIndexRequest indexId.
3050 * @member {string} indexId
3051 * @memberof google.datastore.admin.v1.GetIndexRequest
3052 * @instance
3053 */
3054 GetIndexRequest.prototype.indexId = "";
3055
3056 /**
3057 * Creates a new GetIndexRequest instance using the specified properties.
3058 * @function create
3059 * @memberof google.datastore.admin.v1.GetIndexRequest
3060 * @static
3061 * @param {google.datastore.admin.v1.IGetIndexRequest=} [properties] Properties to set
3062 * @returns {google.datastore.admin.v1.GetIndexRequest} GetIndexRequest instance
3063 */
3064 GetIndexRequest.create = function create(properties) {
3065 return new GetIndexRequest(properties);
3066 };
3067
3068 /**
3069 * Encodes the specified GetIndexRequest message. Does not implicitly {@link google.datastore.admin.v1.GetIndexRequest.verify|verify} messages.
3070 * @function encode
3071 * @memberof google.datastore.admin.v1.GetIndexRequest
3072 * @static
3073 * @param {google.datastore.admin.v1.IGetIndexRequest} message GetIndexRequest message or plain object to encode
3074 * @param {$protobuf.Writer} [writer] Writer to encode to
3075 * @returns {$protobuf.Writer} Writer
3076 */
3077 GetIndexRequest.encode = function encode(message, writer) {
3078 if (!writer)
3079 writer = $Writer.create();
3080 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
3081 writer.uint32(/* id 1, wireType 2 =*/10).string(message.projectId);
3082 if (message.indexId != null && Object.hasOwnProperty.call(message, "indexId"))
3083 writer.uint32(/* id 3, wireType 2 =*/26).string(message.indexId);
3084 return writer;
3085 };
3086
3087 /**
3088 * Encodes the specified GetIndexRequest message, length delimited. Does not implicitly {@link google.datastore.admin.v1.GetIndexRequest.verify|verify} messages.
3089 * @function encodeDelimited
3090 * @memberof google.datastore.admin.v1.GetIndexRequest
3091 * @static
3092 * @param {google.datastore.admin.v1.IGetIndexRequest} message GetIndexRequest message or plain object to encode
3093 * @param {$protobuf.Writer} [writer] Writer to encode to
3094 * @returns {$protobuf.Writer} Writer
3095 */
3096 GetIndexRequest.encodeDelimited = function encodeDelimited(message, writer) {
3097 return this.encode(message, writer).ldelim();
3098 };
3099
3100 /**
3101 * Decodes a GetIndexRequest message from the specified reader or buffer.
3102 * @function decode
3103 * @memberof google.datastore.admin.v1.GetIndexRequest
3104 * @static
3105 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3106 * @param {number} [length] Message length if known beforehand
3107 * @returns {google.datastore.admin.v1.GetIndexRequest} GetIndexRequest
3108 * @throws {Error} If the payload is not a reader or valid buffer
3109 * @throws {$protobuf.util.ProtocolError} If required fields are missing
3110 */
3111 GetIndexRequest.decode = function decode(reader, length) {
3112 if (!(reader instanceof $Reader))
3113 reader = $Reader.create(reader);
3114 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.GetIndexRequest();
3115 while (reader.pos < end) {
3116 var tag = reader.uint32();
3117 switch (tag >>> 3) {
3118 case 1:
3119 message.projectId = reader.string();
3120 break;
3121 case 3:
3122 message.indexId = reader.string();
3123 break;
3124 default:
3125 reader.skipType(tag & 7);
3126 break;
3127 }
3128 }
3129 return message;
3130 };
3131
3132 /**
3133 * Decodes a GetIndexRequest message from the specified reader or buffer, length delimited.
3134 * @function decodeDelimited
3135 * @memberof google.datastore.admin.v1.GetIndexRequest
3136 * @static
3137 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3138 * @returns {google.datastore.admin.v1.GetIndexRequest} GetIndexRequest
3139 * @throws {Error} If the payload is not a reader or valid buffer
3140 * @throws {$protobuf.util.ProtocolError} If required fields are missing
3141 */
3142 GetIndexRequest.decodeDelimited = function decodeDelimited(reader) {
3143 if (!(reader instanceof $Reader))
3144 reader = new $Reader(reader);
3145 return this.decode(reader, reader.uint32());
3146 };
3147
3148 /**
3149 * Verifies a GetIndexRequest message.
3150 * @function verify
3151 * @memberof google.datastore.admin.v1.GetIndexRequest
3152 * @static
3153 * @param {Object.<string,*>} message Plain object to verify
3154 * @returns {string|null} `null` if valid, otherwise the reason why it is not
3155 */
3156 GetIndexRequest.verify = function verify(message) {
3157 if (typeof message !== "object" || message === null)
3158 return "object expected";
3159 if (message.projectId != null && message.hasOwnProperty("projectId"))
3160 if (!$util.isString(message.projectId))
3161 return "projectId: string expected";
3162 if (message.indexId != null && message.hasOwnProperty("indexId"))
3163 if (!$util.isString(message.indexId))
3164 return "indexId: string expected";
3165 return null;
3166 };
3167
3168 /**
3169 * Creates a GetIndexRequest message from a plain object. Also converts values to their respective internal types.
3170 * @function fromObject
3171 * @memberof google.datastore.admin.v1.GetIndexRequest
3172 * @static
3173 * @param {Object.<string,*>} object Plain object
3174 * @returns {google.datastore.admin.v1.GetIndexRequest} GetIndexRequest
3175 */
3176 GetIndexRequest.fromObject = function fromObject(object) {
3177 if (object instanceof $root.google.datastore.admin.v1.GetIndexRequest)
3178 return object;
3179 var message = new $root.google.datastore.admin.v1.GetIndexRequest();
3180 if (object.projectId != null)
3181 message.projectId = String(object.projectId);
3182 if (object.indexId != null)
3183 message.indexId = String(object.indexId);
3184 return message;
3185 };
3186
3187 /**
3188 * Creates a plain object from a GetIndexRequest message. Also converts values to other types if specified.
3189 * @function toObject
3190 * @memberof google.datastore.admin.v1.GetIndexRequest
3191 * @static
3192 * @param {google.datastore.admin.v1.GetIndexRequest} message GetIndexRequest
3193 * @param {$protobuf.IConversionOptions} [options] Conversion options
3194 * @returns {Object.<string,*>} Plain object
3195 */
3196 GetIndexRequest.toObject = function toObject(message, options) {
3197 if (!options)
3198 options = {};
3199 var object = {};
3200 if (options.defaults) {
3201 object.projectId = "";
3202 object.indexId = "";
3203 }
3204 if (message.projectId != null && message.hasOwnProperty("projectId"))
3205 object.projectId = message.projectId;
3206 if (message.indexId != null && message.hasOwnProperty("indexId"))
3207 object.indexId = message.indexId;
3208 return object;
3209 };
3210
3211 /**
3212 * Converts this GetIndexRequest to JSON.
3213 * @function toJSON
3214 * @memberof google.datastore.admin.v1.GetIndexRequest
3215 * @instance
3216 * @returns {Object.<string,*>} JSON object
3217 */
3218 GetIndexRequest.prototype.toJSON = function toJSON() {
3219 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3220 };
3221
3222 return GetIndexRequest;
3223 })();
3224
3225 v1.ListIndexesRequest = (function() {
3226
3227 /**
3228 * Properties of a ListIndexesRequest.
3229 * @memberof google.datastore.admin.v1
3230 * @interface IListIndexesRequest
3231 * @property {string|null} [projectId] ListIndexesRequest projectId
3232 * @property {string|null} [filter] ListIndexesRequest filter
3233 * @property {number|null} [pageSize] ListIndexesRequest pageSize
3234 * @property {string|null} [pageToken] ListIndexesRequest pageToken
3235 */
3236
3237 /**
3238 * Constructs a new ListIndexesRequest.
3239 * @memberof google.datastore.admin.v1
3240 * @classdesc Represents a ListIndexesRequest.
3241 * @implements IListIndexesRequest
3242 * @constructor
3243 * @param {google.datastore.admin.v1.IListIndexesRequest=} [properties] Properties to set
3244 */
3245 function ListIndexesRequest(properties) {
3246 if (properties)
3247 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3248 if (properties[keys[i]] != null)
3249 this[keys[i]] = properties[keys[i]];
3250 }
3251
3252 /**
3253 * ListIndexesRequest projectId.
3254 * @member {string} projectId
3255 * @memberof google.datastore.admin.v1.ListIndexesRequest
3256 * @instance
3257 */
3258 ListIndexesRequest.prototype.projectId = "";
3259
3260 /**
3261 * ListIndexesRequest filter.
3262 * @member {string} filter
3263 * @memberof google.datastore.admin.v1.ListIndexesRequest
3264 * @instance
3265 */
3266 ListIndexesRequest.prototype.filter = "";
3267
3268 /**
3269 * ListIndexesRequest pageSize.
3270 * @member {number} pageSize
3271 * @memberof google.datastore.admin.v1.ListIndexesRequest
3272 * @instance
3273 */
3274 ListIndexesRequest.prototype.pageSize = 0;
3275
3276 /**
3277 * ListIndexesRequest pageToken.
3278 * @member {string} pageToken
3279 * @memberof google.datastore.admin.v1.ListIndexesRequest
3280 * @instance
3281 */
3282 ListIndexesRequest.prototype.pageToken = "";
3283
3284 /**
3285 * Creates a new ListIndexesRequest instance using the specified properties.
3286 * @function create
3287 * @memberof google.datastore.admin.v1.ListIndexesRequest
3288 * @static
3289 * @param {google.datastore.admin.v1.IListIndexesRequest=} [properties] Properties to set
3290 * @returns {google.datastore.admin.v1.ListIndexesRequest} ListIndexesRequest instance
3291 */
3292 ListIndexesRequest.create = function create(properties) {
3293 return new ListIndexesRequest(properties);
3294 };
3295
3296 /**
3297 * Encodes the specified ListIndexesRequest message. Does not implicitly {@link google.datastore.admin.v1.ListIndexesRequest.verify|verify} messages.
3298 * @function encode
3299 * @memberof google.datastore.admin.v1.ListIndexesRequest
3300 * @static
3301 * @param {google.datastore.admin.v1.IListIndexesRequest} message ListIndexesRequest message or plain object to encode
3302 * @param {$protobuf.Writer} [writer] Writer to encode to
3303 * @returns {$protobuf.Writer} Writer
3304 */
3305 ListIndexesRequest.encode = function encode(message, writer) {
3306 if (!writer)
3307 writer = $Writer.create();
3308 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
3309 writer.uint32(/* id 1, wireType 2 =*/10).string(message.projectId);
3310 if (message.filter != null && Object.hasOwnProperty.call(message, "filter"))
3311 writer.uint32(/* id 3, wireType 2 =*/26).string(message.filter);
3312 if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize"))
3313 writer.uint32(/* id 4, wireType 0 =*/32).int32(message.pageSize);
3314 if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken"))
3315 writer.uint32(/* id 5, wireType 2 =*/42).string(message.pageToken);
3316 return writer;
3317 };
3318
3319 /**
3320 * Encodes the specified ListIndexesRequest message, length delimited. Does not implicitly {@link google.datastore.admin.v1.ListIndexesRequest.verify|verify} messages.
3321 * @function encodeDelimited
3322 * @memberof google.datastore.admin.v1.ListIndexesRequest
3323 * @static
3324 * @param {google.datastore.admin.v1.IListIndexesRequest} message ListIndexesRequest message or plain object to encode
3325 * @param {$protobuf.Writer} [writer] Writer to encode to
3326 * @returns {$protobuf.Writer} Writer
3327 */
3328 ListIndexesRequest.encodeDelimited = function encodeDelimited(message, writer) {
3329 return this.encode(message, writer).ldelim();
3330 };
3331
3332 /**
3333 * Decodes a ListIndexesRequest message from the specified reader or buffer.
3334 * @function decode
3335 * @memberof google.datastore.admin.v1.ListIndexesRequest
3336 * @static
3337 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3338 * @param {number} [length] Message length if known beforehand
3339 * @returns {google.datastore.admin.v1.ListIndexesRequest} ListIndexesRequest
3340 * @throws {Error} If the payload is not a reader or valid buffer
3341 * @throws {$protobuf.util.ProtocolError} If required fields are missing
3342 */
3343 ListIndexesRequest.decode = function decode(reader, length) {
3344 if (!(reader instanceof $Reader))
3345 reader = $Reader.create(reader);
3346 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.ListIndexesRequest();
3347 while (reader.pos < end) {
3348 var tag = reader.uint32();
3349 switch (tag >>> 3) {
3350 case 1:
3351 message.projectId = reader.string();
3352 break;
3353 case 3:
3354 message.filter = reader.string();
3355 break;
3356 case 4:
3357 message.pageSize = reader.int32();
3358 break;
3359 case 5:
3360 message.pageToken = reader.string();
3361 break;
3362 default:
3363 reader.skipType(tag & 7);
3364 break;
3365 }
3366 }
3367 return message;
3368 };
3369
3370 /**
3371 * Decodes a ListIndexesRequest message from the specified reader or buffer, length delimited.
3372 * @function decodeDelimited
3373 * @memberof google.datastore.admin.v1.ListIndexesRequest
3374 * @static
3375 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3376 * @returns {google.datastore.admin.v1.ListIndexesRequest} ListIndexesRequest
3377 * @throws {Error} If the payload is not a reader or valid buffer
3378 * @throws {$protobuf.util.ProtocolError} If required fields are missing
3379 */
3380 ListIndexesRequest.decodeDelimited = function decodeDelimited(reader) {
3381 if (!(reader instanceof $Reader))
3382 reader = new $Reader(reader);
3383 return this.decode(reader, reader.uint32());
3384 };
3385
3386 /**
3387 * Verifies a ListIndexesRequest message.
3388 * @function verify
3389 * @memberof google.datastore.admin.v1.ListIndexesRequest
3390 * @static
3391 * @param {Object.<string,*>} message Plain object to verify
3392 * @returns {string|null} `null` if valid, otherwise the reason why it is not
3393 */
3394 ListIndexesRequest.verify = function verify(message) {
3395 if (typeof message !== "object" || message === null)
3396 return "object expected";
3397 if (message.projectId != null && message.hasOwnProperty("projectId"))
3398 if (!$util.isString(message.projectId))
3399 return "projectId: string expected";
3400 if (message.filter != null && message.hasOwnProperty("filter"))
3401 if (!$util.isString(message.filter))
3402 return "filter: string expected";
3403 if (message.pageSize != null && message.hasOwnProperty("pageSize"))
3404 if (!$util.isInteger(message.pageSize))
3405 return "pageSize: integer expected";
3406 if (message.pageToken != null && message.hasOwnProperty("pageToken"))
3407 if (!$util.isString(message.pageToken))
3408 return "pageToken: string expected";
3409 return null;
3410 };
3411
3412 /**
3413 * Creates a ListIndexesRequest message from a plain object. Also converts values to their respective internal types.
3414 * @function fromObject
3415 * @memberof google.datastore.admin.v1.ListIndexesRequest
3416 * @static
3417 * @param {Object.<string,*>} object Plain object
3418 * @returns {google.datastore.admin.v1.ListIndexesRequest} ListIndexesRequest
3419 */
3420 ListIndexesRequest.fromObject = function fromObject(object) {
3421 if (object instanceof $root.google.datastore.admin.v1.ListIndexesRequest)
3422 return object;
3423 var message = new $root.google.datastore.admin.v1.ListIndexesRequest();
3424 if (object.projectId != null)
3425 message.projectId = String(object.projectId);
3426 if (object.filter != null)
3427 message.filter = String(object.filter);
3428 if (object.pageSize != null)
3429 message.pageSize = object.pageSize | 0;
3430 if (object.pageToken != null)
3431 message.pageToken = String(object.pageToken);
3432 return message;
3433 };
3434
3435 /**
3436 * Creates a plain object from a ListIndexesRequest message. Also converts values to other types if specified.
3437 * @function toObject
3438 * @memberof google.datastore.admin.v1.ListIndexesRequest
3439 * @static
3440 * @param {google.datastore.admin.v1.ListIndexesRequest} message ListIndexesRequest
3441 * @param {$protobuf.IConversionOptions} [options] Conversion options
3442 * @returns {Object.<string,*>} Plain object
3443 */
3444 ListIndexesRequest.toObject = function toObject(message, options) {
3445 if (!options)
3446 options = {};
3447 var object = {};
3448 if (options.defaults) {
3449 object.projectId = "";
3450 object.filter = "";
3451 object.pageSize = 0;
3452 object.pageToken = "";
3453 }
3454 if (message.projectId != null && message.hasOwnProperty("projectId"))
3455 object.projectId = message.projectId;
3456 if (message.filter != null && message.hasOwnProperty("filter"))
3457 object.filter = message.filter;
3458 if (message.pageSize != null && message.hasOwnProperty("pageSize"))
3459 object.pageSize = message.pageSize;
3460 if (message.pageToken != null && message.hasOwnProperty("pageToken"))
3461 object.pageToken = message.pageToken;
3462 return object;
3463 };
3464
3465 /**
3466 * Converts this ListIndexesRequest to JSON.
3467 * @function toJSON
3468 * @memberof google.datastore.admin.v1.ListIndexesRequest
3469 * @instance
3470 * @returns {Object.<string,*>} JSON object
3471 */
3472 ListIndexesRequest.prototype.toJSON = function toJSON() {
3473 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3474 };
3475
3476 return ListIndexesRequest;
3477 })();
3478
3479 v1.ListIndexesResponse = (function() {
3480
3481 /**
3482 * Properties of a ListIndexesResponse.
3483 * @memberof google.datastore.admin.v1
3484 * @interface IListIndexesResponse
3485 * @property {Array.<google.datastore.admin.v1.IIndex>|null} [indexes] ListIndexesResponse indexes
3486 * @property {string|null} [nextPageToken] ListIndexesResponse nextPageToken
3487 */
3488
3489 /**
3490 * Constructs a new ListIndexesResponse.
3491 * @memberof google.datastore.admin.v1
3492 * @classdesc Represents a ListIndexesResponse.
3493 * @implements IListIndexesResponse
3494 * @constructor
3495 * @param {google.datastore.admin.v1.IListIndexesResponse=} [properties] Properties to set
3496 */
3497 function ListIndexesResponse(properties) {
3498 this.indexes = [];
3499 if (properties)
3500 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3501 if (properties[keys[i]] != null)
3502 this[keys[i]] = properties[keys[i]];
3503 }
3504
3505 /**
3506 * ListIndexesResponse indexes.
3507 * @member {Array.<google.datastore.admin.v1.IIndex>} indexes
3508 * @memberof google.datastore.admin.v1.ListIndexesResponse
3509 * @instance
3510 */
3511 ListIndexesResponse.prototype.indexes = $util.emptyArray;
3512
3513 /**
3514 * ListIndexesResponse nextPageToken.
3515 * @member {string} nextPageToken
3516 * @memberof google.datastore.admin.v1.ListIndexesResponse
3517 * @instance
3518 */
3519 ListIndexesResponse.prototype.nextPageToken = "";
3520
3521 /**
3522 * Creates a new ListIndexesResponse instance using the specified properties.
3523 * @function create
3524 * @memberof google.datastore.admin.v1.ListIndexesResponse
3525 * @static
3526 * @param {google.datastore.admin.v1.IListIndexesResponse=} [properties] Properties to set
3527 * @returns {google.datastore.admin.v1.ListIndexesResponse} ListIndexesResponse instance
3528 */
3529 ListIndexesResponse.create = function create(properties) {
3530 return new ListIndexesResponse(properties);
3531 };
3532
3533 /**
3534 * Encodes the specified ListIndexesResponse message. Does not implicitly {@link google.datastore.admin.v1.ListIndexesResponse.verify|verify} messages.
3535 * @function encode
3536 * @memberof google.datastore.admin.v1.ListIndexesResponse
3537 * @static
3538 * @param {google.datastore.admin.v1.IListIndexesResponse} message ListIndexesResponse message or plain object to encode
3539 * @param {$protobuf.Writer} [writer] Writer to encode to
3540 * @returns {$protobuf.Writer} Writer
3541 */
3542 ListIndexesResponse.encode = function encode(message, writer) {
3543 if (!writer)
3544 writer = $Writer.create();
3545 if (message.indexes != null && message.indexes.length)
3546 for (var i = 0; i < message.indexes.length; ++i)
3547 $root.google.datastore.admin.v1.Index.encode(message.indexes[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
3548 if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
3549 writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
3550 return writer;
3551 };
3552
3553 /**
3554 * Encodes the specified ListIndexesResponse message, length delimited. Does not implicitly {@link google.datastore.admin.v1.ListIndexesResponse.verify|verify} messages.
3555 * @function encodeDelimited
3556 * @memberof google.datastore.admin.v1.ListIndexesResponse
3557 * @static
3558 * @param {google.datastore.admin.v1.IListIndexesResponse} message ListIndexesResponse message or plain object to encode
3559 * @param {$protobuf.Writer} [writer] Writer to encode to
3560 * @returns {$protobuf.Writer} Writer
3561 */
3562 ListIndexesResponse.encodeDelimited = function encodeDelimited(message, writer) {
3563 return this.encode(message, writer).ldelim();
3564 };
3565
3566 /**
3567 * Decodes a ListIndexesResponse message from the specified reader or buffer.
3568 * @function decode
3569 * @memberof google.datastore.admin.v1.ListIndexesResponse
3570 * @static
3571 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3572 * @param {number} [length] Message length if known beforehand
3573 * @returns {google.datastore.admin.v1.ListIndexesResponse} ListIndexesResponse
3574 * @throws {Error} If the payload is not a reader or valid buffer
3575 * @throws {$protobuf.util.ProtocolError} If required fields are missing
3576 */
3577 ListIndexesResponse.decode = function decode(reader, length) {
3578 if (!(reader instanceof $Reader))
3579 reader = $Reader.create(reader);
3580 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.ListIndexesResponse();
3581 while (reader.pos < end) {
3582 var tag = reader.uint32();
3583 switch (tag >>> 3) {
3584 case 1:
3585 if (!(message.indexes && message.indexes.length))
3586 message.indexes = [];
3587 message.indexes.push($root.google.datastore.admin.v1.Index.decode(reader, reader.uint32()));
3588 break;
3589 case 2:
3590 message.nextPageToken = reader.string();
3591 break;
3592 default:
3593 reader.skipType(tag & 7);
3594 break;
3595 }
3596 }
3597 return message;
3598 };
3599
3600 /**
3601 * Decodes a ListIndexesResponse message from the specified reader or buffer, length delimited.
3602 * @function decodeDelimited
3603 * @memberof google.datastore.admin.v1.ListIndexesResponse
3604 * @static
3605 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3606 * @returns {google.datastore.admin.v1.ListIndexesResponse} ListIndexesResponse
3607 * @throws {Error} If the payload is not a reader or valid buffer
3608 * @throws {$protobuf.util.ProtocolError} If required fields are missing
3609 */
3610 ListIndexesResponse.decodeDelimited = function decodeDelimited(reader) {
3611 if (!(reader instanceof $Reader))
3612 reader = new $Reader(reader);
3613 return this.decode(reader, reader.uint32());
3614 };
3615
3616 /**
3617 * Verifies a ListIndexesResponse message.
3618 * @function verify
3619 * @memberof google.datastore.admin.v1.ListIndexesResponse
3620 * @static
3621 * @param {Object.<string,*>} message Plain object to verify
3622 * @returns {string|null} `null` if valid, otherwise the reason why it is not
3623 */
3624 ListIndexesResponse.verify = function verify(message) {
3625 if (typeof message !== "object" || message === null)
3626 return "object expected";
3627 if (message.indexes != null && message.hasOwnProperty("indexes")) {
3628 if (!Array.isArray(message.indexes))
3629 return "indexes: array expected";
3630 for (var i = 0; i < message.indexes.length; ++i) {
3631 var error = $root.google.datastore.admin.v1.Index.verify(message.indexes[i]);
3632 if (error)
3633 return "indexes." + error;
3634 }
3635 }
3636 if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
3637 if (!$util.isString(message.nextPageToken))
3638 return "nextPageToken: string expected";
3639 return null;
3640 };
3641
3642 /**
3643 * Creates a ListIndexesResponse message from a plain object. Also converts values to their respective internal types.
3644 * @function fromObject
3645 * @memberof google.datastore.admin.v1.ListIndexesResponse
3646 * @static
3647 * @param {Object.<string,*>} object Plain object
3648 * @returns {google.datastore.admin.v1.ListIndexesResponse} ListIndexesResponse
3649 */
3650 ListIndexesResponse.fromObject = function fromObject(object) {
3651 if (object instanceof $root.google.datastore.admin.v1.ListIndexesResponse)
3652 return object;
3653 var message = new $root.google.datastore.admin.v1.ListIndexesResponse();
3654 if (object.indexes) {
3655 if (!Array.isArray(object.indexes))
3656 throw TypeError(".google.datastore.admin.v1.ListIndexesResponse.indexes: array expected");
3657 message.indexes = [];
3658 for (var i = 0; i < object.indexes.length; ++i) {
3659 if (typeof object.indexes[i] !== "object")
3660 throw TypeError(".google.datastore.admin.v1.ListIndexesResponse.indexes: object expected");
3661 message.indexes[i] = $root.google.datastore.admin.v1.Index.fromObject(object.indexes[i]);
3662 }
3663 }
3664 if (object.nextPageToken != null)
3665 message.nextPageToken = String(object.nextPageToken);
3666 return message;
3667 };
3668
3669 /**
3670 * Creates a plain object from a ListIndexesResponse message. Also converts values to other types if specified.
3671 * @function toObject
3672 * @memberof google.datastore.admin.v1.ListIndexesResponse
3673 * @static
3674 * @param {google.datastore.admin.v1.ListIndexesResponse} message ListIndexesResponse
3675 * @param {$protobuf.IConversionOptions} [options] Conversion options
3676 * @returns {Object.<string,*>} Plain object
3677 */
3678 ListIndexesResponse.toObject = function toObject(message, options) {
3679 if (!options)
3680 options = {};
3681 var object = {};
3682 if (options.arrays || options.defaults)
3683 object.indexes = [];
3684 if (options.defaults)
3685 object.nextPageToken = "";
3686 if (message.indexes && message.indexes.length) {
3687 object.indexes = [];
3688 for (var j = 0; j < message.indexes.length; ++j)
3689 object.indexes[j] = $root.google.datastore.admin.v1.Index.toObject(message.indexes[j], options);
3690 }
3691 if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
3692 object.nextPageToken = message.nextPageToken;
3693 return object;
3694 };
3695
3696 /**
3697 * Converts this ListIndexesResponse to JSON.
3698 * @function toJSON
3699 * @memberof google.datastore.admin.v1.ListIndexesResponse
3700 * @instance
3701 * @returns {Object.<string,*>} JSON object
3702 */
3703 ListIndexesResponse.prototype.toJSON = function toJSON() {
3704 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3705 };
3706
3707 return ListIndexesResponse;
3708 })();
3709
3710 v1.IndexOperationMetadata = (function() {
3711
3712 /**
3713 * Properties of an IndexOperationMetadata.
3714 * @memberof google.datastore.admin.v1
3715 * @interface IIndexOperationMetadata
3716 * @property {google.datastore.admin.v1.ICommonMetadata|null} [common] IndexOperationMetadata common
3717 * @property {google.datastore.admin.v1.IProgress|null} [progressEntities] IndexOperationMetadata progressEntities
3718 * @property {string|null} [indexId] IndexOperationMetadata indexId
3719 */
3720
3721 /**
3722 * Constructs a new IndexOperationMetadata.
3723 * @memberof google.datastore.admin.v1
3724 * @classdesc Represents an IndexOperationMetadata.
3725 * @implements IIndexOperationMetadata
3726 * @constructor
3727 * @param {google.datastore.admin.v1.IIndexOperationMetadata=} [properties] Properties to set
3728 */
3729 function IndexOperationMetadata(properties) {
3730 if (properties)
3731 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3732 if (properties[keys[i]] != null)
3733 this[keys[i]] = properties[keys[i]];
3734 }
3735
3736 /**
3737 * IndexOperationMetadata common.
3738 * @member {google.datastore.admin.v1.ICommonMetadata|null|undefined} common
3739 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3740 * @instance
3741 */
3742 IndexOperationMetadata.prototype.common = null;
3743
3744 /**
3745 * IndexOperationMetadata progressEntities.
3746 * @member {google.datastore.admin.v1.IProgress|null|undefined} progressEntities
3747 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3748 * @instance
3749 */
3750 IndexOperationMetadata.prototype.progressEntities = null;
3751
3752 /**
3753 * IndexOperationMetadata indexId.
3754 * @member {string} indexId
3755 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3756 * @instance
3757 */
3758 IndexOperationMetadata.prototype.indexId = "";
3759
3760 /**
3761 * Creates a new IndexOperationMetadata instance using the specified properties.
3762 * @function create
3763 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3764 * @static
3765 * @param {google.datastore.admin.v1.IIndexOperationMetadata=} [properties] Properties to set
3766 * @returns {google.datastore.admin.v1.IndexOperationMetadata} IndexOperationMetadata instance
3767 */
3768 IndexOperationMetadata.create = function create(properties) {
3769 return new IndexOperationMetadata(properties);
3770 };
3771
3772 /**
3773 * Encodes the specified IndexOperationMetadata message. Does not implicitly {@link google.datastore.admin.v1.IndexOperationMetadata.verify|verify} messages.
3774 * @function encode
3775 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3776 * @static
3777 * @param {google.datastore.admin.v1.IIndexOperationMetadata} message IndexOperationMetadata message or plain object to encode
3778 * @param {$protobuf.Writer} [writer] Writer to encode to
3779 * @returns {$protobuf.Writer} Writer
3780 */
3781 IndexOperationMetadata.encode = function encode(message, writer) {
3782 if (!writer)
3783 writer = $Writer.create();
3784 if (message.common != null && Object.hasOwnProperty.call(message, "common"))
3785 $root.google.datastore.admin.v1.CommonMetadata.encode(message.common, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
3786 if (message.progressEntities != null && Object.hasOwnProperty.call(message, "progressEntities"))
3787 $root.google.datastore.admin.v1.Progress.encode(message.progressEntities, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
3788 if (message.indexId != null && Object.hasOwnProperty.call(message, "indexId"))
3789 writer.uint32(/* id 3, wireType 2 =*/26).string(message.indexId);
3790 return writer;
3791 };
3792
3793 /**
3794 * Encodes the specified IndexOperationMetadata message, length delimited. Does not implicitly {@link google.datastore.admin.v1.IndexOperationMetadata.verify|verify} messages.
3795 * @function encodeDelimited
3796 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3797 * @static
3798 * @param {google.datastore.admin.v1.IIndexOperationMetadata} message IndexOperationMetadata message or plain object to encode
3799 * @param {$protobuf.Writer} [writer] Writer to encode to
3800 * @returns {$protobuf.Writer} Writer
3801 */
3802 IndexOperationMetadata.encodeDelimited = function encodeDelimited(message, writer) {
3803 return this.encode(message, writer).ldelim();
3804 };
3805
3806 /**
3807 * Decodes an IndexOperationMetadata message from the specified reader or buffer.
3808 * @function decode
3809 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3810 * @static
3811 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3812 * @param {number} [length] Message length if known beforehand
3813 * @returns {google.datastore.admin.v1.IndexOperationMetadata} IndexOperationMetadata
3814 * @throws {Error} If the payload is not a reader or valid buffer
3815 * @throws {$protobuf.util.ProtocolError} If required fields are missing
3816 */
3817 IndexOperationMetadata.decode = function decode(reader, length) {
3818 if (!(reader instanceof $Reader))
3819 reader = $Reader.create(reader);
3820 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.IndexOperationMetadata();
3821 while (reader.pos < end) {
3822 var tag = reader.uint32();
3823 switch (tag >>> 3) {
3824 case 1:
3825 message.common = $root.google.datastore.admin.v1.CommonMetadata.decode(reader, reader.uint32());
3826 break;
3827 case 2:
3828 message.progressEntities = $root.google.datastore.admin.v1.Progress.decode(reader, reader.uint32());
3829 break;
3830 case 3:
3831 message.indexId = reader.string();
3832 break;
3833 default:
3834 reader.skipType(tag & 7);
3835 break;
3836 }
3837 }
3838 return message;
3839 };
3840
3841 /**
3842 * Decodes an IndexOperationMetadata message from the specified reader or buffer, length delimited.
3843 * @function decodeDelimited
3844 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3845 * @static
3846 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
3847 * @returns {google.datastore.admin.v1.IndexOperationMetadata} IndexOperationMetadata
3848 * @throws {Error} If the payload is not a reader or valid buffer
3849 * @throws {$protobuf.util.ProtocolError} If required fields are missing
3850 */
3851 IndexOperationMetadata.decodeDelimited = function decodeDelimited(reader) {
3852 if (!(reader instanceof $Reader))
3853 reader = new $Reader(reader);
3854 return this.decode(reader, reader.uint32());
3855 };
3856
3857 /**
3858 * Verifies an IndexOperationMetadata message.
3859 * @function verify
3860 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3861 * @static
3862 * @param {Object.<string,*>} message Plain object to verify
3863 * @returns {string|null} `null` if valid, otherwise the reason why it is not
3864 */
3865 IndexOperationMetadata.verify = function verify(message) {
3866 if (typeof message !== "object" || message === null)
3867 return "object expected";
3868 if (message.common != null && message.hasOwnProperty("common")) {
3869 var error = $root.google.datastore.admin.v1.CommonMetadata.verify(message.common);
3870 if (error)
3871 return "common." + error;
3872 }
3873 if (message.progressEntities != null && message.hasOwnProperty("progressEntities")) {
3874 var error = $root.google.datastore.admin.v1.Progress.verify(message.progressEntities);
3875 if (error)
3876 return "progressEntities." + error;
3877 }
3878 if (message.indexId != null && message.hasOwnProperty("indexId"))
3879 if (!$util.isString(message.indexId))
3880 return "indexId: string expected";
3881 return null;
3882 };
3883
3884 /**
3885 * Creates an IndexOperationMetadata message from a plain object. Also converts values to their respective internal types.
3886 * @function fromObject
3887 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3888 * @static
3889 * @param {Object.<string,*>} object Plain object
3890 * @returns {google.datastore.admin.v1.IndexOperationMetadata} IndexOperationMetadata
3891 */
3892 IndexOperationMetadata.fromObject = function fromObject(object) {
3893 if (object instanceof $root.google.datastore.admin.v1.IndexOperationMetadata)
3894 return object;
3895 var message = new $root.google.datastore.admin.v1.IndexOperationMetadata();
3896 if (object.common != null) {
3897 if (typeof object.common !== "object")
3898 throw TypeError(".google.datastore.admin.v1.IndexOperationMetadata.common: object expected");
3899 message.common = $root.google.datastore.admin.v1.CommonMetadata.fromObject(object.common);
3900 }
3901 if (object.progressEntities != null) {
3902 if (typeof object.progressEntities !== "object")
3903 throw TypeError(".google.datastore.admin.v1.IndexOperationMetadata.progressEntities: object expected");
3904 message.progressEntities = $root.google.datastore.admin.v1.Progress.fromObject(object.progressEntities);
3905 }
3906 if (object.indexId != null)
3907 message.indexId = String(object.indexId);
3908 return message;
3909 };
3910
3911 /**
3912 * Creates a plain object from an IndexOperationMetadata message. Also converts values to other types if specified.
3913 * @function toObject
3914 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3915 * @static
3916 * @param {google.datastore.admin.v1.IndexOperationMetadata} message IndexOperationMetadata
3917 * @param {$protobuf.IConversionOptions} [options] Conversion options
3918 * @returns {Object.<string,*>} Plain object
3919 */
3920 IndexOperationMetadata.toObject = function toObject(message, options) {
3921 if (!options)
3922 options = {};
3923 var object = {};
3924 if (options.defaults) {
3925 object.common = null;
3926 object.progressEntities = null;
3927 object.indexId = "";
3928 }
3929 if (message.common != null && message.hasOwnProperty("common"))
3930 object.common = $root.google.datastore.admin.v1.CommonMetadata.toObject(message.common, options);
3931 if (message.progressEntities != null && message.hasOwnProperty("progressEntities"))
3932 object.progressEntities = $root.google.datastore.admin.v1.Progress.toObject(message.progressEntities, options);
3933 if (message.indexId != null && message.hasOwnProperty("indexId"))
3934 object.indexId = message.indexId;
3935 return object;
3936 };
3937
3938 /**
3939 * Converts this IndexOperationMetadata to JSON.
3940 * @function toJSON
3941 * @memberof google.datastore.admin.v1.IndexOperationMetadata
3942 * @instance
3943 * @returns {Object.<string,*>} JSON object
3944 */
3945 IndexOperationMetadata.prototype.toJSON = function toJSON() {
3946 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
3947 };
3948
3949 return IndexOperationMetadata;
3950 })();
3951
3952 v1.Index = (function() {
3953
3954 /**
3955 * Properties of an Index.
3956 * @memberof google.datastore.admin.v1
3957 * @interface IIndex
3958 * @property {string|null} [projectId] Index projectId
3959 * @property {string|null} [indexId] Index indexId
3960 * @property {string|null} [kind] Index kind
3961 * @property {google.datastore.admin.v1.Index.AncestorMode|null} [ancestor] Index ancestor
3962 * @property {Array.<google.datastore.admin.v1.Index.IIndexedProperty>|null} [properties] Index properties
3963 * @property {google.datastore.admin.v1.Index.State|null} [state] Index state
3964 */
3965
3966 /**
3967 * Constructs a new Index.
3968 * @memberof google.datastore.admin.v1
3969 * @classdesc Represents an Index.
3970 * @implements IIndex
3971 * @constructor
3972 * @param {google.datastore.admin.v1.IIndex=} [properties] Properties to set
3973 */
3974 function Index(properties) {
3975 this.properties = [];
3976 if (properties)
3977 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
3978 if (properties[keys[i]] != null)
3979 this[keys[i]] = properties[keys[i]];
3980 }
3981
3982 /**
3983 * Index projectId.
3984 * @member {string} projectId
3985 * @memberof google.datastore.admin.v1.Index
3986 * @instance
3987 */
3988 Index.prototype.projectId = "";
3989
3990 /**
3991 * Index indexId.
3992 * @member {string} indexId
3993 * @memberof google.datastore.admin.v1.Index
3994 * @instance
3995 */
3996 Index.prototype.indexId = "";
3997
3998 /**
3999 * Index kind.
4000 * @member {string} kind
4001 * @memberof google.datastore.admin.v1.Index
4002 * @instance
4003 */
4004 Index.prototype.kind = "";
4005
4006 /**
4007 * Index ancestor.
4008 * @member {google.datastore.admin.v1.Index.AncestorMode} ancestor
4009 * @memberof google.datastore.admin.v1.Index
4010 * @instance
4011 */
4012 Index.prototype.ancestor = 0;
4013
4014 /**
4015 * Index properties.
4016 * @member {Array.<google.datastore.admin.v1.Index.IIndexedProperty>} properties
4017 * @memberof google.datastore.admin.v1.Index
4018 * @instance
4019 */
4020 Index.prototype.properties = $util.emptyArray;
4021
4022 /**
4023 * Index state.
4024 * @member {google.datastore.admin.v1.Index.State} state
4025 * @memberof google.datastore.admin.v1.Index
4026 * @instance
4027 */
4028 Index.prototype.state = 0;
4029
4030 /**
4031 * Creates a new Index instance using the specified properties.
4032 * @function create
4033 * @memberof google.datastore.admin.v1.Index
4034 * @static
4035 * @param {google.datastore.admin.v1.IIndex=} [properties] Properties to set
4036 * @returns {google.datastore.admin.v1.Index} Index instance
4037 */
4038 Index.create = function create(properties) {
4039 return new Index(properties);
4040 };
4041
4042 /**
4043 * Encodes the specified Index message. Does not implicitly {@link google.datastore.admin.v1.Index.verify|verify} messages.
4044 * @function encode
4045 * @memberof google.datastore.admin.v1.Index
4046 * @static
4047 * @param {google.datastore.admin.v1.IIndex} message Index message or plain object to encode
4048 * @param {$protobuf.Writer} [writer] Writer to encode to
4049 * @returns {$protobuf.Writer} Writer
4050 */
4051 Index.encode = function encode(message, writer) {
4052 if (!writer)
4053 writer = $Writer.create();
4054 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
4055 writer.uint32(/* id 1, wireType 2 =*/10).string(message.projectId);
4056 if (message.indexId != null && Object.hasOwnProperty.call(message, "indexId"))
4057 writer.uint32(/* id 3, wireType 2 =*/26).string(message.indexId);
4058 if (message.kind != null && Object.hasOwnProperty.call(message, "kind"))
4059 writer.uint32(/* id 4, wireType 2 =*/34).string(message.kind);
4060 if (message.ancestor != null && Object.hasOwnProperty.call(message, "ancestor"))
4061 writer.uint32(/* id 5, wireType 0 =*/40).int32(message.ancestor);
4062 if (message.properties != null && message.properties.length)
4063 for (var i = 0; i < message.properties.length; ++i)
4064 $root.google.datastore.admin.v1.Index.IndexedProperty.encode(message.properties[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
4065 if (message.state != null && Object.hasOwnProperty.call(message, "state"))
4066 writer.uint32(/* id 7, wireType 0 =*/56).int32(message.state);
4067 return writer;
4068 };
4069
4070 /**
4071 * Encodes the specified Index message, length delimited. Does not implicitly {@link google.datastore.admin.v1.Index.verify|verify} messages.
4072 * @function encodeDelimited
4073 * @memberof google.datastore.admin.v1.Index
4074 * @static
4075 * @param {google.datastore.admin.v1.IIndex} message Index message or plain object to encode
4076 * @param {$protobuf.Writer} [writer] Writer to encode to
4077 * @returns {$protobuf.Writer} Writer
4078 */
4079 Index.encodeDelimited = function encodeDelimited(message, writer) {
4080 return this.encode(message, writer).ldelim();
4081 };
4082
4083 /**
4084 * Decodes an Index message from the specified reader or buffer.
4085 * @function decode
4086 * @memberof google.datastore.admin.v1.Index
4087 * @static
4088 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4089 * @param {number} [length] Message length if known beforehand
4090 * @returns {google.datastore.admin.v1.Index} Index
4091 * @throws {Error} If the payload is not a reader or valid buffer
4092 * @throws {$protobuf.util.ProtocolError} If required fields are missing
4093 */
4094 Index.decode = function decode(reader, length) {
4095 if (!(reader instanceof $Reader))
4096 reader = $Reader.create(reader);
4097 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.Index();
4098 while (reader.pos < end) {
4099 var tag = reader.uint32();
4100 switch (tag >>> 3) {
4101 case 1:
4102 message.projectId = reader.string();
4103 break;
4104 case 3:
4105 message.indexId = reader.string();
4106 break;
4107 case 4:
4108 message.kind = reader.string();
4109 break;
4110 case 5:
4111 message.ancestor = reader.int32();
4112 break;
4113 case 6:
4114 if (!(message.properties && message.properties.length))
4115 message.properties = [];
4116 message.properties.push($root.google.datastore.admin.v1.Index.IndexedProperty.decode(reader, reader.uint32()));
4117 break;
4118 case 7:
4119 message.state = reader.int32();
4120 break;
4121 default:
4122 reader.skipType(tag & 7);
4123 break;
4124 }
4125 }
4126 return message;
4127 };
4128
4129 /**
4130 * Decodes an Index message from the specified reader or buffer, length delimited.
4131 * @function decodeDelimited
4132 * @memberof google.datastore.admin.v1.Index
4133 * @static
4134 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4135 * @returns {google.datastore.admin.v1.Index} Index
4136 * @throws {Error} If the payload is not a reader or valid buffer
4137 * @throws {$protobuf.util.ProtocolError} If required fields are missing
4138 */
4139 Index.decodeDelimited = function decodeDelimited(reader) {
4140 if (!(reader instanceof $Reader))
4141 reader = new $Reader(reader);
4142 return this.decode(reader, reader.uint32());
4143 };
4144
4145 /**
4146 * Verifies an Index message.
4147 * @function verify
4148 * @memberof google.datastore.admin.v1.Index
4149 * @static
4150 * @param {Object.<string,*>} message Plain object to verify
4151 * @returns {string|null} `null` if valid, otherwise the reason why it is not
4152 */
4153 Index.verify = function verify(message) {
4154 if (typeof message !== "object" || message === null)
4155 return "object expected";
4156 if (message.projectId != null && message.hasOwnProperty("projectId"))
4157 if (!$util.isString(message.projectId))
4158 return "projectId: string expected";
4159 if (message.indexId != null && message.hasOwnProperty("indexId"))
4160 if (!$util.isString(message.indexId))
4161 return "indexId: string expected";
4162 if (message.kind != null && message.hasOwnProperty("kind"))
4163 if (!$util.isString(message.kind))
4164 return "kind: string expected";
4165 if (message.ancestor != null && message.hasOwnProperty("ancestor"))
4166 switch (message.ancestor) {
4167 default:
4168 return "ancestor: enum value expected";
4169 case 0:
4170 case 1:
4171 case 2:
4172 break;
4173 }
4174 if (message.properties != null && message.hasOwnProperty("properties")) {
4175 if (!Array.isArray(message.properties))
4176 return "properties: array expected";
4177 for (var i = 0; i < message.properties.length; ++i) {
4178 var error = $root.google.datastore.admin.v1.Index.IndexedProperty.verify(message.properties[i]);
4179 if (error)
4180 return "properties." + error;
4181 }
4182 }
4183 if (message.state != null && message.hasOwnProperty("state"))
4184 switch (message.state) {
4185 default:
4186 return "state: enum value expected";
4187 case 0:
4188 case 1:
4189 case 2:
4190 case 3:
4191 case 4:
4192 break;
4193 }
4194 return null;
4195 };
4196
4197 /**
4198 * Creates an Index message from a plain object. Also converts values to their respective internal types.
4199 * @function fromObject
4200 * @memberof google.datastore.admin.v1.Index
4201 * @static
4202 * @param {Object.<string,*>} object Plain object
4203 * @returns {google.datastore.admin.v1.Index} Index
4204 */
4205 Index.fromObject = function fromObject(object) {
4206 if (object instanceof $root.google.datastore.admin.v1.Index)
4207 return object;
4208 var message = new $root.google.datastore.admin.v1.Index();
4209 if (object.projectId != null)
4210 message.projectId = String(object.projectId);
4211 if (object.indexId != null)
4212 message.indexId = String(object.indexId);
4213 if (object.kind != null)
4214 message.kind = String(object.kind);
4215 switch (object.ancestor) {
4216 case "ANCESTOR_MODE_UNSPECIFIED":
4217 case 0:
4218 message.ancestor = 0;
4219 break;
4220 case "NONE":
4221 case 1:
4222 message.ancestor = 1;
4223 break;
4224 case "ALL_ANCESTORS":
4225 case 2:
4226 message.ancestor = 2;
4227 break;
4228 }
4229 if (object.properties) {
4230 if (!Array.isArray(object.properties))
4231 throw TypeError(".google.datastore.admin.v1.Index.properties: array expected");
4232 message.properties = [];
4233 for (var i = 0; i < object.properties.length; ++i) {
4234 if (typeof object.properties[i] !== "object")
4235 throw TypeError(".google.datastore.admin.v1.Index.properties: object expected");
4236 message.properties[i] = $root.google.datastore.admin.v1.Index.IndexedProperty.fromObject(object.properties[i]);
4237 }
4238 }
4239 switch (object.state) {
4240 case "STATE_UNSPECIFIED":
4241 case 0:
4242 message.state = 0;
4243 break;
4244 case "CREATING":
4245 case 1:
4246 message.state = 1;
4247 break;
4248 case "READY":
4249 case 2:
4250 message.state = 2;
4251 break;
4252 case "DELETING":
4253 case 3:
4254 message.state = 3;
4255 break;
4256 case "ERROR":
4257 case 4:
4258 message.state = 4;
4259 break;
4260 }
4261 return message;
4262 };
4263
4264 /**
4265 * Creates a plain object from an Index message. Also converts values to other types if specified.
4266 * @function toObject
4267 * @memberof google.datastore.admin.v1.Index
4268 * @static
4269 * @param {google.datastore.admin.v1.Index} message Index
4270 * @param {$protobuf.IConversionOptions} [options] Conversion options
4271 * @returns {Object.<string,*>} Plain object
4272 */
4273 Index.toObject = function toObject(message, options) {
4274 if (!options)
4275 options = {};
4276 var object = {};
4277 if (options.arrays || options.defaults)
4278 object.properties = [];
4279 if (options.defaults) {
4280 object.projectId = "";
4281 object.indexId = "";
4282 object.kind = "";
4283 object.ancestor = options.enums === String ? "ANCESTOR_MODE_UNSPECIFIED" : 0;
4284 object.state = options.enums === String ? "STATE_UNSPECIFIED" : 0;
4285 }
4286 if (message.projectId != null && message.hasOwnProperty("projectId"))
4287 object.projectId = message.projectId;
4288 if (message.indexId != null && message.hasOwnProperty("indexId"))
4289 object.indexId = message.indexId;
4290 if (message.kind != null && message.hasOwnProperty("kind"))
4291 object.kind = message.kind;
4292 if (message.ancestor != null && message.hasOwnProperty("ancestor"))
4293 object.ancestor = options.enums === String ? $root.google.datastore.admin.v1.Index.AncestorMode[message.ancestor] : message.ancestor;
4294 if (message.properties && message.properties.length) {
4295 object.properties = [];
4296 for (var j = 0; j < message.properties.length; ++j)
4297 object.properties[j] = $root.google.datastore.admin.v1.Index.IndexedProperty.toObject(message.properties[j], options);
4298 }
4299 if (message.state != null && message.hasOwnProperty("state"))
4300 object.state = options.enums === String ? $root.google.datastore.admin.v1.Index.State[message.state] : message.state;
4301 return object;
4302 };
4303
4304 /**
4305 * Converts this Index to JSON.
4306 * @function toJSON
4307 * @memberof google.datastore.admin.v1.Index
4308 * @instance
4309 * @returns {Object.<string,*>} JSON object
4310 */
4311 Index.prototype.toJSON = function toJSON() {
4312 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
4313 };
4314
4315 Index.IndexedProperty = (function() {
4316
4317 /**
4318 * Properties of an IndexedProperty.
4319 * @memberof google.datastore.admin.v1.Index
4320 * @interface IIndexedProperty
4321 * @property {string|null} [name] IndexedProperty name
4322 * @property {google.datastore.admin.v1.Index.Direction|null} [direction] IndexedProperty direction
4323 */
4324
4325 /**
4326 * Constructs a new IndexedProperty.
4327 * @memberof google.datastore.admin.v1.Index
4328 * @classdesc Represents an IndexedProperty.
4329 * @implements IIndexedProperty
4330 * @constructor
4331 * @param {google.datastore.admin.v1.Index.IIndexedProperty=} [properties] Properties to set
4332 */
4333 function IndexedProperty(properties) {
4334 if (properties)
4335 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
4336 if (properties[keys[i]] != null)
4337 this[keys[i]] = properties[keys[i]];
4338 }
4339
4340 /**
4341 * IndexedProperty name.
4342 * @member {string} name
4343 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4344 * @instance
4345 */
4346 IndexedProperty.prototype.name = "";
4347
4348 /**
4349 * IndexedProperty direction.
4350 * @member {google.datastore.admin.v1.Index.Direction} direction
4351 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4352 * @instance
4353 */
4354 IndexedProperty.prototype.direction = 0;
4355
4356 /**
4357 * Creates a new IndexedProperty instance using the specified properties.
4358 * @function create
4359 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4360 * @static
4361 * @param {google.datastore.admin.v1.Index.IIndexedProperty=} [properties] Properties to set
4362 * @returns {google.datastore.admin.v1.Index.IndexedProperty} IndexedProperty instance
4363 */
4364 IndexedProperty.create = function create(properties) {
4365 return new IndexedProperty(properties);
4366 };
4367
4368 /**
4369 * Encodes the specified IndexedProperty message. Does not implicitly {@link google.datastore.admin.v1.Index.IndexedProperty.verify|verify} messages.
4370 * @function encode
4371 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4372 * @static
4373 * @param {google.datastore.admin.v1.Index.IIndexedProperty} message IndexedProperty message or plain object to encode
4374 * @param {$protobuf.Writer} [writer] Writer to encode to
4375 * @returns {$protobuf.Writer} Writer
4376 */
4377 IndexedProperty.encode = function encode(message, writer) {
4378 if (!writer)
4379 writer = $Writer.create();
4380 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
4381 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
4382 if (message.direction != null && Object.hasOwnProperty.call(message, "direction"))
4383 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.direction);
4384 return writer;
4385 };
4386
4387 /**
4388 * Encodes the specified IndexedProperty message, length delimited. Does not implicitly {@link google.datastore.admin.v1.Index.IndexedProperty.verify|verify} messages.
4389 * @function encodeDelimited
4390 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4391 * @static
4392 * @param {google.datastore.admin.v1.Index.IIndexedProperty} message IndexedProperty message or plain object to encode
4393 * @param {$protobuf.Writer} [writer] Writer to encode to
4394 * @returns {$protobuf.Writer} Writer
4395 */
4396 IndexedProperty.encodeDelimited = function encodeDelimited(message, writer) {
4397 return this.encode(message, writer).ldelim();
4398 };
4399
4400 /**
4401 * Decodes an IndexedProperty message from the specified reader or buffer.
4402 * @function decode
4403 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4404 * @static
4405 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4406 * @param {number} [length] Message length if known beforehand
4407 * @returns {google.datastore.admin.v1.Index.IndexedProperty} IndexedProperty
4408 * @throws {Error} If the payload is not a reader or valid buffer
4409 * @throws {$protobuf.util.ProtocolError} If required fields are missing
4410 */
4411 IndexedProperty.decode = function decode(reader, length) {
4412 if (!(reader instanceof $Reader))
4413 reader = $Reader.create(reader);
4414 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.admin.v1.Index.IndexedProperty();
4415 while (reader.pos < end) {
4416 var tag = reader.uint32();
4417 switch (tag >>> 3) {
4418 case 1:
4419 message.name = reader.string();
4420 break;
4421 case 2:
4422 message.direction = reader.int32();
4423 break;
4424 default:
4425 reader.skipType(tag & 7);
4426 break;
4427 }
4428 }
4429 return message;
4430 };
4431
4432 /**
4433 * Decodes an IndexedProperty message from the specified reader or buffer, length delimited.
4434 * @function decodeDelimited
4435 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4436 * @static
4437 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4438 * @returns {google.datastore.admin.v1.Index.IndexedProperty} IndexedProperty
4439 * @throws {Error} If the payload is not a reader or valid buffer
4440 * @throws {$protobuf.util.ProtocolError} If required fields are missing
4441 */
4442 IndexedProperty.decodeDelimited = function decodeDelimited(reader) {
4443 if (!(reader instanceof $Reader))
4444 reader = new $Reader(reader);
4445 return this.decode(reader, reader.uint32());
4446 };
4447
4448 /**
4449 * Verifies an IndexedProperty message.
4450 * @function verify
4451 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4452 * @static
4453 * @param {Object.<string,*>} message Plain object to verify
4454 * @returns {string|null} `null` if valid, otherwise the reason why it is not
4455 */
4456 IndexedProperty.verify = function verify(message) {
4457 if (typeof message !== "object" || message === null)
4458 return "object expected";
4459 if (message.name != null && message.hasOwnProperty("name"))
4460 if (!$util.isString(message.name))
4461 return "name: string expected";
4462 if (message.direction != null && message.hasOwnProperty("direction"))
4463 switch (message.direction) {
4464 default:
4465 return "direction: enum value expected";
4466 case 0:
4467 case 1:
4468 case 2:
4469 break;
4470 }
4471 return null;
4472 };
4473
4474 /**
4475 * Creates an IndexedProperty message from a plain object. Also converts values to their respective internal types.
4476 * @function fromObject
4477 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4478 * @static
4479 * @param {Object.<string,*>} object Plain object
4480 * @returns {google.datastore.admin.v1.Index.IndexedProperty} IndexedProperty
4481 */
4482 IndexedProperty.fromObject = function fromObject(object) {
4483 if (object instanceof $root.google.datastore.admin.v1.Index.IndexedProperty)
4484 return object;
4485 var message = new $root.google.datastore.admin.v1.Index.IndexedProperty();
4486 if (object.name != null)
4487 message.name = String(object.name);
4488 switch (object.direction) {
4489 case "DIRECTION_UNSPECIFIED":
4490 case 0:
4491 message.direction = 0;
4492 break;
4493 case "ASCENDING":
4494 case 1:
4495 message.direction = 1;
4496 break;
4497 case "DESCENDING":
4498 case 2:
4499 message.direction = 2;
4500 break;
4501 }
4502 return message;
4503 };
4504
4505 /**
4506 * Creates a plain object from an IndexedProperty message. Also converts values to other types if specified.
4507 * @function toObject
4508 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4509 * @static
4510 * @param {google.datastore.admin.v1.Index.IndexedProperty} message IndexedProperty
4511 * @param {$protobuf.IConversionOptions} [options] Conversion options
4512 * @returns {Object.<string,*>} Plain object
4513 */
4514 IndexedProperty.toObject = function toObject(message, options) {
4515 if (!options)
4516 options = {};
4517 var object = {};
4518 if (options.defaults) {
4519 object.name = "";
4520 object.direction = options.enums === String ? "DIRECTION_UNSPECIFIED" : 0;
4521 }
4522 if (message.name != null && message.hasOwnProperty("name"))
4523 object.name = message.name;
4524 if (message.direction != null && message.hasOwnProperty("direction"))
4525 object.direction = options.enums === String ? $root.google.datastore.admin.v1.Index.Direction[message.direction] : message.direction;
4526 return object;
4527 };
4528
4529 /**
4530 * Converts this IndexedProperty to JSON.
4531 * @function toJSON
4532 * @memberof google.datastore.admin.v1.Index.IndexedProperty
4533 * @instance
4534 * @returns {Object.<string,*>} JSON object
4535 */
4536 IndexedProperty.prototype.toJSON = function toJSON() {
4537 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
4538 };
4539
4540 return IndexedProperty;
4541 })();
4542
4543 /**
4544 * AncestorMode enum.
4545 * @name google.datastore.admin.v1.Index.AncestorMode
4546 * @enum {number}
4547 * @property {number} ANCESTOR_MODE_UNSPECIFIED=0 ANCESTOR_MODE_UNSPECIFIED value
4548 * @property {number} NONE=1 NONE value
4549 * @property {number} ALL_ANCESTORS=2 ALL_ANCESTORS value
4550 */
4551 Index.AncestorMode = (function() {
4552 var valuesById = {}, values = Object.create(valuesById);
4553 values[valuesById[0] = "ANCESTOR_MODE_UNSPECIFIED"] = 0;
4554 values[valuesById[1] = "NONE"] = 1;
4555 values[valuesById[2] = "ALL_ANCESTORS"] = 2;
4556 return values;
4557 })();
4558
4559 /**
4560 * Direction enum.
4561 * @name google.datastore.admin.v1.Index.Direction
4562 * @enum {number}
4563 * @property {number} DIRECTION_UNSPECIFIED=0 DIRECTION_UNSPECIFIED value
4564 * @property {number} ASCENDING=1 ASCENDING value
4565 * @property {number} DESCENDING=2 DESCENDING value
4566 */
4567 Index.Direction = (function() {
4568 var valuesById = {}, values = Object.create(valuesById);
4569 values[valuesById[0] = "DIRECTION_UNSPECIFIED"] = 0;
4570 values[valuesById[1] = "ASCENDING"] = 1;
4571 values[valuesById[2] = "DESCENDING"] = 2;
4572 return values;
4573 })();
4574
4575 /**
4576 * State enum.
4577 * @name google.datastore.admin.v1.Index.State
4578 * @enum {number}
4579 * @property {number} STATE_UNSPECIFIED=0 STATE_UNSPECIFIED value
4580 * @property {number} CREATING=1 CREATING value
4581 * @property {number} READY=2 READY value
4582 * @property {number} DELETING=3 DELETING value
4583 * @property {number} ERROR=4 ERROR value
4584 */
4585 Index.State = (function() {
4586 var valuesById = {}, values = Object.create(valuesById);
4587 values[valuesById[0] = "STATE_UNSPECIFIED"] = 0;
4588 values[valuesById[1] = "CREATING"] = 1;
4589 values[valuesById[2] = "READY"] = 2;
4590 values[valuesById[3] = "DELETING"] = 3;
4591 values[valuesById[4] = "ERROR"] = 4;
4592 return values;
4593 })();
4594
4595 return Index;
4596 })();
4597
4598 return v1;
4599 })();
4600
4601 return admin;
4602 })();
4603
4604 datastore.v1 = (function() {
4605
4606 /**
4607 * Namespace v1.
4608 * @memberof google.datastore
4609 * @namespace
4610 */
4611 var v1 = {};
4612
4613 v1.Datastore = (function() {
4614
4615 /**
4616 * Constructs a new Datastore service.
4617 * @memberof google.datastore.v1
4618 * @classdesc Represents a Datastore
4619 * @extends $protobuf.rpc.Service
4620 * @constructor
4621 * @param {$protobuf.RPCImpl} rpcImpl RPC implementation
4622 * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
4623 * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
4624 */
4625 function Datastore(rpcImpl, requestDelimited, responseDelimited) {
4626 $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
4627 }
4628
4629 (Datastore.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = Datastore;
4630
4631 /**
4632 * Creates new Datastore service using the specified rpc implementation.
4633 * @function create
4634 * @memberof google.datastore.v1.Datastore
4635 * @static
4636 * @param {$protobuf.RPCImpl} rpcImpl RPC implementation
4637 * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
4638 * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
4639 * @returns {Datastore} RPC service. Useful where requests and/or responses are streamed.
4640 */
4641 Datastore.create = function create(rpcImpl, requestDelimited, responseDelimited) {
4642 return new this(rpcImpl, requestDelimited, responseDelimited);
4643 };
4644
4645 /**
4646 * Callback as used by {@link google.datastore.v1.Datastore#lookup}.
4647 * @memberof google.datastore.v1.Datastore
4648 * @typedef LookupCallback
4649 * @type {function}
4650 * @param {Error|null} error Error, if any
4651 * @param {google.datastore.v1.LookupResponse} [response] LookupResponse
4652 */
4653
4654 /**
4655 * Calls Lookup.
4656 * @function lookup
4657 * @memberof google.datastore.v1.Datastore
4658 * @instance
4659 * @param {google.datastore.v1.ILookupRequest} request LookupRequest message or plain object
4660 * @param {google.datastore.v1.Datastore.LookupCallback} callback Node-style callback called with the error, if any, and LookupResponse
4661 * @returns {undefined}
4662 * @variation 1
4663 */
4664 Object.defineProperty(Datastore.prototype.lookup = function lookup(request, callback) {
4665 return this.rpcCall(lookup, $root.google.datastore.v1.LookupRequest, $root.google.datastore.v1.LookupResponse, request, callback);
4666 }, "name", { value: "Lookup" });
4667
4668 /**
4669 * Calls Lookup.
4670 * @function lookup
4671 * @memberof google.datastore.v1.Datastore
4672 * @instance
4673 * @param {google.datastore.v1.ILookupRequest} request LookupRequest message or plain object
4674 * @returns {Promise<google.datastore.v1.LookupResponse>} Promise
4675 * @variation 2
4676 */
4677
4678 /**
4679 * Callback as used by {@link google.datastore.v1.Datastore#runQuery}.
4680 * @memberof google.datastore.v1.Datastore
4681 * @typedef RunQueryCallback
4682 * @type {function}
4683 * @param {Error|null} error Error, if any
4684 * @param {google.datastore.v1.RunQueryResponse} [response] RunQueryResponse
4685 */
4686
4687 /**
4688 * Calls RunQuery.
4689 * @function runQuery
4690 * @memberof google.datastore.v1.Datastore
4691 * @instance
4692 * @param {google.datastore.v1.IRunQueryRequest} request RunQueryRequest message or plain object
4693 * @param {google.datastore.v1.Datastore.RunQueryCallback} callback Node-style callback called with the error, if any, and RunQueryResponse
4694 * @returns {undefined}
4695 * @variation 1
4696 */
4697 Object.defineProperty(Datastore.prototype.runQuery = function runQuery(request, callback) {
4698 return this.rpcCall(runQuery, $root.google.datastore.v1.RunQueryRequest, $root.google.datastore.v1.RunQueryResponse, request, callback);
4699 }, "name", { value: "RunQuery" });
4700
4701 /**
4702 * Calls RunQuery.
4703 * @function runQuery
4704 * @memberof google.datastore.v1.Datastore
4705 * @instance
4706 * @param {google.datastore.v1.IRunQueryRequest} request RunQueryRequest message or plain object
4707 * @returns {Promise<google.datastore.v1.RunQueryResponse>} Promise
4708 * @variation 2
4709 */
4710
4711 /**
4712 * Callback as used by {@link google.datastore.v1.Datastore#beginTransaction}.
4713 * @memberof google.datastore.v1.Datastore
4714 * @typedef BeginTransactionCallback
4715 * @type {function}
4716 * @param {Error|null} error Error, if any
4717 * @param {google.datastore.v1.BeginTransactionResponse} [response] BeginTransactionResponse
4718 */
4719
4720 /**
4721 * Calls BeginTransaction.
4722 * @function beginTransaction
4723 * @memberof google.datastore.v1.Datastore
4724 * @instance
4725 * @param {google.datastore.v1.IBeginTransactionRequest} request BeginTransactionRequest message or plain object
4726 * @param {google.datastore.v1.Datastore.BeginTransactionCallback} callback Node-style callback called with the error, if any, and BeginTransactionResponse
4727 * @returns {undefined}
4728 * @variation 1
4729 */
4730 Object.defineProperty(Datastore.prototype.beginTransaction = function beginTransaction(request, callback) {
4731 return this.rpcCall(beginTransaction, $root.google.datastore.v1.BeginTransactionRequest, $root.google.datastore.v1.BeginTransactionResponse, request, callback);
4732 }, "name", { value: "BeginTransaction" });
4733
4734 /**
4735 * Calls BeginTransaction.
4736 * @function beginTransaction
4737 * @memberof google.datastore.v1.Datastore
4738 * @instance
4739 * @param {google.datastore.v1.IBeginTransactionRequest} request BeginTransactionRequest message or plain object
4740 * @returns {Promise<google.datastore.v1.BeginTransactionResponse>} Promise
4741 * @variation 2
4742 */
4743
4744 /**
4745 * Callback as used by {@link google.datastore.v1.Datastore#commit}.
4746 * @memberof google.datastore.v1.Datastore
4747 * @typedef CommitCallback
4748 * @type {function}
4749 * @param {Error|null} error Error, if any
4750 * @param {google.datastore.v1.CommitResponse} [response] CommitResponse
4751 */
4752
4753 /**
4754 * Calls Commit.
4755 * @function commit
4756 * @memberof google.datastore.v1.Datastore
4757 * @instance
4758 * @param {google.datastore.v1.ICommitRequest} request CommitRequest message or plain object
4759 * @param {google.datastore.v1.Datastore.CommitCallback} callback Node-style callback called with the error, if any, and CommitResponse
4760 * @returns {undefined}
4761 * @variation 1
4762 */
4763 Object.defineProperty(Datastore.prototype.commit = function commit(request, callback) {
4764 return this.rpcCall(commit, $root.google.datastore.v1.CommitRequest, $root.google.datastore.v1.CommitResponse, request, callback);
4765 }, "name", { value: "Commit" });
4766
4767 /**
4768 * Calls Commit.
4769 * @function commit
4770 * @memberof google.datastore.v1.Datastore
4771 * @instance
4772 * @param {google.datastore.v1.ICommitRequest} request CommitRequest message or plain object
4773 * @returns {Promise<google.datastore.v1.CommitResponse>} Promise
4774 * @variation 2
4775 */
4776
4777 /**
4778 * Callback as used by {@link google.datastore.v1.Datastore#rollback}.
4779 * @memberof google.datastore.v1.Datastore
4780 * @typedef RollbackCallback
4781 * @type {function}
4782 * @param {Error|null} error Error, if any
4783 * @param {google.datastore.v1.RollbackResponse} [response] RollbackResponse
4784 */
4785
4786 /**
4787 * Calls Rollback.
4788 * @function rollback
4789 * @memberof google.datastore.v1.Datastore
4790 * @instance
4791 * @param {google.datastore.v1.IRollbackRequest} request RollbackRequest message or plain object
4792 * @param {google.datastore.v1.Datastore.RollbackCallback} callback Node-style callback called with the error, if any, and RollbackResponse
4793 * @returns {undefined}
4794 * @variation 1
4795 */
4796 Object.defineProperty(Datastore.prototype.rollback = function rollback(request, callback) {
4797 return this.rpcCall(rollback, $root.google.datastore.v1.RollbackRequest, $root.google.datastore.v1.RollbackResponse, request, callback);
4798 }, "name", { value: "Rollback" });
4799
4800 /**
4801 * Calls Rollback.
4802 * @function rollback
4803 * @memberof google.datastore.v1.Datastore
4804 * @instance
4805 * @param {google.datastore.v1.IRollbackRequest} request RollbackRequest message or plain object
4806 * @returns {Promise<google.datastore.v1.RollbackResponse>} Promise
4807 * @variation 2
4808 */
4809
4810 /**
4811 * Callback as used by {@link google.datastore.v1.Datastore#allocateIds}.
4812 * @memberof google.datastore.v1.Datastore
4813 * @typedef AllocateIdsCallback
4814 * @type {function}
4815 * @param {Error|null} error Error, if any
4816 * @param {google.datastore.v1.AllocateIdsResponse} [response] AllocateIdsResponse
4817 */
4818
4819 /**
4820 * Calls AllocateIds.
4821 * @function allocateIds
4822 * @memberof google.datastore.v1.Datastore
4823 * @instance
4824 * @param {google.datastore.v1.IAllocateIdsRequest} request AllocateIdsRequest message or plain object
4825 * @param {google.datastore.v1.Datastore.AllocateIdsCallback} callback Node-style callback called with the error, if any, and AllocateIdsResponse
4826 * @returns {undefined}
4827 * @variation 1
4828 */
4829 Object.defineProperty(Datastore.prototype.allocateIds = function allocateIds(request, callback) {
4830 return this.rpcCall(allocateIds, $root.google.datastore.v1.AllocateIdsRequest, $root.google.datastore.v1.AllocateIdsResponse, request, callback);
4831 }, "name", { value: "AllocateIds" });
4832
4833 /**
4834 * Calls AllocateIds.
4835 * @function allocateIds
4836 * @memberof google.datastore.v1.Datastore
4837 * @instance
4838 * @param {google.datastore.v1.IAllocateIdsRequest} request AllocateIdsRequest message or plain object
4839 * @returns {Promise<google.datastore.v1.AllocateIdsResponse>} Promise
4840 * @variation 2
4841 */
4842
4843 /**
4844 * Callback as used by {@link google.datastore.v1.Datastore#reserveIds}.
4845 * @memberof google.datastore.v1.Datastore
4846 * @typedef ReserveIdsCallback
4847 * @type {function}
4848 * @param {Error|null} error Error, if any
4849 * @param {google.datastore.v1.ReserveIdsResponse} [response] ReserveIdsResponse
4850 */
4851
4852 /**
4853 * Calls ReserveIds.
4854 * @function reserveIds
4855 * @memberof google.datastore.v1.Datastore
4856 * @instance
4857 * @param {google.datastore.v1.IReserveIdsRequest} request ReserveIdsRequest message or plain object
4858 * @param {google.datastore.v1.Datastore.ReserveIdsCallback} callback Node-style callback called with the error, if any, and ReserveIdsResponse
4859 * @returns {undefined}
4860 * @variation 1
4861 */
4862 Object.defineProperty(Datastore.prototype.reserveIds = function reserveIds(request, callback) {
4863 return this.rpcCall(reserveIds, $root.google.datastore.v1.ReserveIdsRequest, $root.google.datastore.v1.ReserveIdsResponse, request, callback);
4864 }, "name", { value: "ReserveIds" });
4865
4866 /**
4867 * Calls ReserveIds.
4868 * @function reserveIds
4869 * @memberof google.datastore.v1.Datastore
4870 * @instance
4871 * @param {google.datastore.v1.IReserveIdsRequest} request ReserveIdsRequest message or plain object
4872 * @returns {Promise<google.datastore.v1.ReserveIdsResponse>} Promise
4873 * @variation 2
4874 */
4875
4876 return Datastore;
4877 })();
4878
4879 v1.LookupRequest = (function() {
4880
4881 /**
4882 * Properties of a LookupRequest.
4883 * @memberof google.datastore.v1
4884 * @interface ILookupRequest
4885 * @property {string|null} [projectId] LookupRequest projectId
4886 * @property {google.datastore.v1.IReadOptions|null} [readOptions] LookupRequest readOptions
4887 * @property {Array.<google.datastore.v1.IKey>|null} [keys] LookupRequest keys
4888 */
4889
4890 /**
4891 * Constructs a new LookupRequest.
4892 * @memberof google.datastore.v1
4893 * @classdesc Represents a LookupRequest.
4894 * @implements ILookupRequest
4895 * @constructor
4896 * @param {google.datastore.v1.ILookupRequest=} [properties] Properties to set
4897 */
4898 function LookupRequest(properties) {
4899 this.keys = [];
4900 if (properties)
4901 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
4902 if (properties[keys[i]] != null)
4903 this[keys[i]] = properties[keys[i]];
4904 }
4905
4906 /**
4907 * LookupRequest projectId.
4908 * @member {string} projectId
4909 * @memberof google.datastore.v1.LookupRequest
4910 * @instance
4911 */
4912 LookupRequest.prototype.projectId = "";
4913
4914 /**
4915 * LookupRequest readOptions.
4916 * @member {google.datastore.v1.IReadOptions|null|undefined} readOptions
4917 * @memberof google.datastore.v1.LookupRequest
4918 * @instance
4919 */
4920 LookupRequest.prototype.readOptions = null;
4921
4922 /**
4923 * LookupRequest keys.
4924 * @member {Array.<google.datastore.v1.IKey>} keys
4925 * @memberof google.datastore.v1.LookupRequest
4926 * @instance
4927 */
4928 LookupRequest.prototype.keys = $util.emptyArray;
4929
4930 /**
4931 * Creates a new LookupRequest instance using the specified properties.
4932 * @function create
4933 * @memberof google.datastore.v1.LookupRequest
4934 * @static
4935 * @param {google.datastore.v1.ILookupRequest=} [properties] Properties to set
4936 * @returns {google.datastore.v1.LookupRequest} LookupRequest instance
4937 */
4938 LookupRequest.create = function create(properties) {
4939 return new LookupRequest(properties);
4940 };
4941
4942 /**
4943 * Encodes the specified LookupRequest message. Does not implicitly {@link google.datastore.v1.LookupRequest.verify|verify} messages.
4944 * @function encode
4945 * @memberof google.datastore.v1.LookupRequest
4946 * @static
4947 * @param {google.datastore.v1.ILookupRequest} message LookupRequest message or plain object to encode
4948 * @param {$protobuf.Writer} [writer] Writer to encode to
4949 * @returns {$protobuf.Writer} Writer
4950 */
4951 LookupRequest.encode = function encode(message, writer) {
4952 if (!writer)
4953 writer = $Writer.create();
4954 if (message.readOptions != null && Object.hasOwnProperty.call(message, "readOptions"))
4955 $root.google.datastore.v1.ReadOptions.encode(message.readOptions, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
4956 if (message.keys != null && message.keys.length)
4957 for (var i = 0; i < message.keys.length; ++i)
4958 $root.google.datastore.v1.Key.encode(message.keys[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
4959 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
4960 writer.uint32(/* id 8, wireType 2 =*/66).string(message.projectId);
4961 return writer;
4962 };
4963
4964 /**
4965 * Encodes the specified LookupRequest message, length delimited. Does not implicitly {@link google.datastore.v1.LookupRequest.verify|verify} messages.
4966 * @function encodeDelimited
4967 * @memberof google.datastore.v1.LookupRequest
4968 * @static
4969 * @param {google.datastore.v1.ILookupRequest} message LookupRequest message or plain object to encode
4970 * @param {$protobuf.Writer} [writer] Writer to encode to
4971 * @returns {$protobuf.Writer} Writer
4972 */
4973 LookupRequest.encodeDelimited = function encodeDelimited(message, writer) {
4974 return this.encode(message, writer).ldelim();
4975 };
4976
4977 /**
4978 * Decodes a LookupRequest message from the specified reader or buffer.
4979 * @function decode
4980 * @memberof google.datastore.v1.LookupRequest
4981 * @static
4982 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
4983 * @param {number} [length] Message length if known beforehand
4984 * @returns {google.datastore.v1.LookupRequest} LookupRequest
4985 * @throws {Error} If the payload is not a reader or valid buffer
4986 * @throws {$protobuf.util.ProtocolError} If required fields are missing
4987 */
4988 LookupRequest.decode = function decode(reader, length) {
4989 if (!(reader instanceof $Reader))
4990 reader = $Reader.create(reader);
4991 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.LookupRequest();
4992 while (reader.pos < end) {
4993 var tag = reader.uint32();
4994 switch (tag >>> 3) {
4995 case 8:
4996 message.projectId = reader.string();
4997 break;
4998 case 1:
4999 message.readOptions = $root.google.datastore.v1.ReadOptions.decode(reader, reader.uint32());
5000 break;
5001 case 3:
5002 if (!(message.keys && message.keys.length))
5003 message.keys = [];
5004 message.keys.push($root.google.datastore.v1.Key.decode(reader, reader.uint32()));
5005 break;
5006 default:
5007 reader.skipType(tag & 7);
5008 break;
5009 }
5010 }
5011 return message;
5012 };
5013
5014 /**
5015 * Decodes a LookupRequest message from the specified reader or buffer, length delimited.
5016 * @function decodeDelimited
5017 * @memberof google.datastore.v1.LookupRequest
5018 * @static
5019 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5020 * @returns {google.datastore.v1.LookupRequest} LookupRequest
5021 * @throws {Error} If the payload is not a reader or valid buffer
5022 * @throws {$protobuf.util.ProtocolError} If required fields are missing
5023 */
5024 LookupRequest.decodeDelimited = function decodeDelimited(reader) {
5025 if (!(reader instanceof $Reader))
5026 reader = new $Reader(reader);
5027 return this.decode(reader, reader.uint32());
5028 };
5029
5030 /**
5031 * Verifies a LookupRequest message.
5032 * @function verify
5033 * @memberof google.datastore.v1.LookupRequest
5034 * @static
5035 * @param {Object.<string,*>} message Plain object to verify
5036 * @returns {string|null} `null` if valid, otherwise the reason why it is not
5037 */
5038 LookupRequest.verify = function verify(message) {
5039 if (typeof message !== "object" || message === null)
5040 return "object expected";
5041 if (message.projectId != null && message.hasOwnProperty("projectId"))
5042 if (!$util.isString(message.projectId))
5043 return "projectId: string expected";
5044 if (message.readOptions != null && message.hasOwnProperty("readOptions")) {
5045 var error = $root.google.datastore.v1.ReadOptions.verify(message.readOptions);
5046 if (error)
5047 return "readOptions." + error;
5048 }
5049 if (message.keys != null && message.hasOwnProperty("keys")) {
5050 if (!Array.isArray(message.keys))
5051 return "keys: array expected";
5052 for (var i = 0; i < message.keys.length; ++i) {
5053 var error = $root.google.datastore.v1.Key.verify(message.keys[i]);
5054 if (error)
5055 return "keys." + error;
5056 }
5057 }
5058 return null;
5059 };
5060
5061 /**
5062 * Creates a LookupRequest message from a plain object. Also converts values to their respective internal types.
5063 * @function fromObject
5064 * @memberof google.datastore.v1.LookupRequest
5065 * @static
5066 * @param {Object.<string,*>} object Plain object
5067 * @returns {google.datastore.v1.LookupRequest} LookupRequest
5068 */
5069 LookupRequest.fromObject = function fromObject(object) {
5070 if (object instanceof $root.google.datastore.v1.LookupRequest)
5071 return object;
5072 var message = new $root.google.datastore.v1.LookupRequest();
5073 if (object.projectId != null)
5074 message.projectId = String(object.projectId);
5075 if (object.readOptions != null) {
5076 if (typeof object.readOptions !== "object")
5077 throw TypeError(".google.datastore.v1.LookupRequest.readOptions: object expected");
5078 message.readOptions = $root.google.datastore.v1.ReadOptions.fromObject(object.readOptions);
5079 }
5080 if (object.keys) {
5081 if (!Array.isArray(object.keys))
5082 throw TypeError(".google.datastore.v1.LookupRequest.keys: array expected");
5083 message.keys = [];
5084 for (var i = 0; i < object.keys.length; ++i) {
5085 if (typeof object.keys[i] !== "object")
5086 throw TypeError(".google.datastore.v1.LookupRequest.keys: object expected");
5087 message.keys[i] = $root.google.datastore.v1.Key.fromObject(object.keys[i]);
5088 }
5089 }
5090 return message;
5091 };
5092
5093 /**
5094 * Creates a plain object from a LookupRequest message. Also converts values to other types if specified.
5095 * @function toObject
5096 * @memberof google.datastore.v1.LookupRequest
5097 * @static
5098 * @param {google.datastore.v1.LookupRequest} message LookupRequest
5099 * @param {$protobuf.IConversionOptions} [options] Conversion options
5100 * @returns {Object.<string,*>} Plain object
5101 */
5102 LookupRequest.toObject = function toObject(message, options) {
5103 if (!options)
5104 options = {};
5105 var object = {};
5106 if (options.arrays || options.defaults)
5107 object.keys = [];
5108 if (options.defaults) {
5109 object.readOptions = null;
5110 object.projectId = "";
5111 }
5112 if (message.readOptions != null && message.hasOwnProperty("readOptions"))
5113 object.readOptions = $root.google.datastore.v1.ReadOptions.toObject(message.readOptions, options);
5114 if (message.keys && message.keys.length) {
5115 object.keys = [];
5116 for (var j = 0; j < message.keys.length; ++j)
5117 object.keys[j] = $root.google.datastore.v1.Key.toObject(message.keys[j], options);
5118 }
5119 if (message.projectId != null && message.hasOwnProperty("projectId"))
5120 object.projectId = message.projectId;
5121 return object;
5122 };
5123
5124 /**
5125 * Converts this LookupRequest to JSON.
5126 * @function toJSON
5127 * @memberof google.datastore.v1.LookupRequest
5128 * @instance
5129 * @returns {Object.<string,*>} JSON object
5130 */
5131 LookupRequest.prototype.toJSON = function toJSON() {
5132 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
5133 };
5134
5135 return LookupRequest;
5136 })();
5137
5138 v1.LookupResponse = (function() {
5139
5140 /**
5141 * Properties of a LookupResponse.
5142 * @memberof google.datastore.v1
5143 * @interface ILookupResponse
5144 * @property {Array.<google.datastore.v1.IEntityResult>|null} [found] LookupResponse found
5145 * @property {Array.<google.datastore.v1.IEntityResult>|null} [missing] LookupResponse missing
5146 * @property {Array.<google.datastore.v1.IKey>|null} [deferred] LookupResponse deferred
5147 */
5148
5149 /**
5150 * Constructs a new LookupResponse.
5151 * @memberof google.datastore.v1
5152 * @classdesc Represents a LookupResponse.
5153 * @implements ILookupResponse
5154 * @constructor
5155 * @param {google.datastore.v1.ILookupResponse=} [properties] Properties to set
5156 */
5157 function LookupResponse(properties) {
5158 this.found = [];
5159 this.missing = [];
5160 this.deferred = [];
5161 if (properties)
5162 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
5163 if (properties[keys[i]] != null)
5164 this[keys[i]] = properties[keys[i]];
5165 }
5166
5167 /**
5168 * LookupResponse found.
5169 * @member {Array.<google.datastore.v1.IEntityResult>} found
5170 * @memberof google.datastore.v1.LookupResponse
5171 * @instance
5172 */
5173 LookupResponse.prototype.found = $util.emptyArray;
5174
5175 /**
5176 * LookupResponse missing.
5177 * @member {Array.<google.datastore.v1.IEntityResult>} missing
5178 * @memberof google.datastore.v1.LookupResponse
5179 * @instance
5180 */
5181 LookupResponse.prototype.missing = $util.emptyArray;
5182
5183 /**
5184 * LookupResponse deferred.
5185 * @member {Array.<google.datastore.v1.IKey>} deferred
5186 * @memberof google.datastore.v1.LookupResponse
5187 * @instance
5188 */
5189 LookupResponse.prototype.deferred = $util.emptyArray;
5190
5191 /**
5192 * Creates a new LookupResponse instance using the specified properties.
5193 * @function create
5194 * @memberof google.datastore.v1.LookupResponse
5195 * @static
5196 * @param {google.datastore.v1.ILookupResponse=} [properties] Properties to set
5197 * @returns {google.datastore.v1.LookupResponse} LookupResponse instance
5198 */
5199 LookupResponse.create = function create(properties) {
5200 return new LookupResponse(properties);
5201 };
5202
5203 /**
5204 * Encodes the specified LookupResponse message. Does not implicitly {@link google.datastore.v1.LookupResponse.verify|verify} messages.
5205 * @function encode
5206 * @memberof google.datastore.v1.LookupResponse
5207 * @static
5208 * @param {google.datastore.v1.ILookupResponse} message LookupResponse message or plain object to encode
5209 * @param {$protobuf.Writer} [writer] Writer to encode to
5210 * @returns {$protobuf.Writer} Writer
5211 */
5212 LookupResponse.encode = function encode(message, writer) {
5213 if (!writer)
5214 writer = $Writer.create();
5215 if (message.found != null && message.found.length)
5216 for (var i = 0; i < message.found.length; ++i)
5217 $root.google.datastore.v1.EntityResult.encode(message.found[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
5218 if (message.missing != null && message.missing.length)
5219 for (var i = 0; i < message.missing.length; ++i)
5220 $root.google.datastore.v1.EntityResult.encode(message.missing[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
5221 if (message.deferred != null && message.deferred.length)
5222 for (var i = 0; i < message.deferred.length; ++i)
5223 $root.google.datastore.v1.Key.encode(message.deferred[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
5224 return writer;
5225 };
5226
5227 /**
5228 * Encodes the specified LookupResponse message, length delimited. Does not implicitly {@link google.datastore.v1.LookupResponse.verify|verify} messages.
5229 * @function encodeDelimited
5230 * @memberof google.datastore.v1.LookupResponse
5231 * @static
5232 * @param {google.datastore.v1.ILookupResponse} message LookupResponse message or plain object to encode
5233 * @param {$protobuf.Writer} [writer] Writer to encode to
5234 * @returns {$protobuf.Writer} Writer
5235 */
5236 LookupResponse.encodeDelimited = function encodeDelimited(message, writer) {
5237 return this.encode(message, writer).ldelim();
5238 };
5239
5240 /**
5241 * Decodes a LookupResponse message from the specified reader or buffer.
5242 * @function decode
5243 * @memberof google.datastore.v1.LookupResponse
5244 * @static
5245 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5246 * @param {number} [length] Message length if known beforehand
5247 * @returns {google.datastore.v1.LookupResponse} LookupResponse
5248 * @throws {Error} If the payload is not a reader or valid buffer
5249 * @throws {$protobuf.util.ProtocolError} If required fields are missing
5250 */
5251 LookupResponse.decode = function decode(reader, length) {
5252 if (!(reader instanceof $Reader))
5253 reader = $Reader.create(reader);
5254 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.LookupResponse();
5255 while (reader.pos < end) {
5256 var tag = reader.uint32();
5257 switch (tag >>> 3) {
5258 case 1:
5259 if (!(message.found && message.found.length))
5260 message.found = [];
5261 message.found.push($root.google.datastore.v1.EntityResult.decode(reader, reader.uint32()));
5262 break;
5263 case 2:
5264 if (!(message.missing && message.missing.length))
5265 message.missing = [];
5266 message.missing.push($root.google.datastore.v1.EntityResult.decode(reader, reader.uint32()));
5267 break;
5268 case 3:
5269 if (!(message.deferred && message.deferred.length))
5270 message.deferred = [];
5271 message.deferred.push($root.google.datastore.v1.Key.decode(reader, reader.uint32()));
5272 break;
5273 default:
5274 reader.skipType(tag & 7);
5275 break;
5276 }
5277 }
5278 return message;
5279 };
5280
5281 /**
5282 * Decodes a LookupResponse message from the specified reader or buffer, length delimited.
5283 * @function decodeDelimited
5284 * @memberof google.datastore.v1.LookupResponse
5285 * @static
5286 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5287 * @returns {google.datastore.v1.LookupResponse} LookupResponse
5288 * @throws {Error} If the payload is not a reader or valid buffer
5289 * @throws {$protobuf.util.ProtocolError} If required fields are missing
5290 */
5291 LookupResponse.decodeDelimited = function decodeDelimited(reader) {
5292 if (!(reader instanceof $Reader))
5293 reader = new $Reader(reader);
5294 return this.decode(reader, reader.uint32());
5295 };
5296
5297 /**
5298 * Verifies a LookupResponse message.
5299 * @function verify
5300 * @memberof google.datastore.v1.LookupResponse
5301 * @static
5302 * @param {Object.<string,*>} message Plain object to verify
5303 * @returns {string|null} `null` if valid, otherwise the reason why it is not
5304 */
5305 LookupResponse.verify = function verify(message) {
5306 if (typeof message !== "object" || message === null)
5307 return "object expected";
5308 if (message.found != null && message.hasOwnProperty("found")) {
5309 if (!Array.isArray(message.found))
5310 return "found: array expected";
5311 for (var i = 0; i < message.found.length; ++i) {
5312 var error = $root.google.datastore.v1.EntityResult.verify(message.found[i]);
5313 if (error)
5314 return "found." + error;
5315 }
5316 }
5317 if (message.missing != null && message.hasOwnProperty("missing")) {
5318 if (!Array.isArray(message.missing))
5319 return "missing: array expected";
5320 for (var i = 0; i < message.missing.length; ++i) {
5321 var error = $root.google.datastore.v1.EntityResult.verify(message.missing[i]);
5322 if (error)
5323 return "missing." + error;
5324 }
5325 }
5326 if (message.deferred != null && message.hasOwnProperty("deferred")) {
5327 if (!Array.isArray(message.deferred))
5328 return "deferred: array expected";
5329 for (var i = 0; i < message.deferred.length; ++i) {
5330 var error = $root.google.datastore.v1.Key.verify(message.deferred[i]);
5331 if (error)
5332 return "deferred." + error;
5333 }
5334 }
5335 return null;
5336 };
5337
5338 /**
5339 * Creates a LookupResponse message from a plain object. Also converts values to their respective internal types.
5340 * @function fromObject
5341 * @memberof google.datastore.v1.LookupResponse
5342 * @static
5343 * @param {Object.<string,*>} object Plain object
5344 * @returns {google.datastore.v1.LookupResponse} LookupResponse
5345 */
5346 LookupResponse.fromObject = function fromObject(object) {
5347 if (object instanceof $root.google.datastore.v1.LookupResponse)
5348 return object;
5349 var message = new $root.google.datastore.v1.LookupResponse();
5350 if (object.found) {
5351 if (!Array.isArray(object.found))
5352 throw TypeError(".google.datastore.v1.LookupResponse.found: array expected");
5353 message.found = [];
5354 for (var i = 0; i < object.found.length; ++i) {
5355 if (typeof object.found[i] !== "object")
5356 throw TypeError(".google.datastore.v1.LookupResponse.found: object expected");
5357 message.found[i] = $root.google.datastore.v1.EntityResult.fromObject(object.found[i]);
5358 }
5359 }
5360 if (object.missing) {
5361 if (!Array.isArray(object.missing))
5362 throw TypeError(".google.datastore.v1.LookupResponse.missing: array expected");
5363 message.missing = [];
5364 for (var i = 0; i < object.missing.length; ++i) {
5365 if (typeof object.missing[i] !== "object")
5366 throw TypeError(".google.datastore.v1.LookupResponse.missing: object expected");
5367 message.missing[i] = $root.google.datastore.v1.EntityResult.fromObject(object.missing[i]);
5368 }
5369 }
5370 if (object.deferred) {
5371 if (!Array.isArray(object.deferred))
5372 throw TypeError(".google.datastore.v1.LookupResponse.deferred: array expected");
5373 message.deferred = [];
5374 for (var i = 0; i < object.deferred.length; ++i) {
5375 if (typeof object.deferred[i] !== "object")
5376 throw TypeError(".google.datastore.v1.LookupResponse.deferred: object expected");
5377 message.deferred[i] = $root.google.datastore.v1.Key.fromObject(object.deferred[i]);
5378 }
5379 }
5380 return message;
5381 };
5382
5383 /**
5384 * Creates a plain object from a LookupResponse message. Also converts values to other types if specified.
5385 * @function toObject
5386 * @memberof google.datastore.v1.LookupResponse
5387 * @static
5388 * @param {google.datastore.v1.LookupResponse} message LookupResponse
5389 * @param {$protobuf.IConversionOptions} [options] Conversion options
5390 * @returns {Object.<string,*>} Plain object
5391 */
5392 LookupResponse.toObject = function toObject(message, options) {
5393 if (!options)
5394 options = {};
5395 var object = {};
5396 if (options.arrays || options.defaults) {
5397 object.found = [];
5398 object.missing = [];
5399 object.deferred = [];
5400 }
5401 if (message.found && message.found.length) {
5402 object.found = [];
5403 for (var j = 0; j < message.found.length; ++j)
5404 object.found[j] = $root.google.datastore.v1.EntityResult.toObject(message.found[j], options);
5405 }
5406 if (message.missing && message.missing.length) {
5407 object.missing = [];
5408 for (var j = 0; j < message.missing.length; ++j)
5409 object.missing[j] = $root.google.datastore.v1.EntityResult.toObject(message.missing[j], options);
5410 }
5411 if (message.deferred && message.deferred.length) {
5412 object.deferred = [];
5413 for (var j = 0; j < message.deferred.length; ++j)
5414 object.deferred[j] = $root.google.datastore.v1.Key.toObject(message.deferred[j], options);
5415 }
5416 return object;
5417 };
5418
5419 /**
5420 * Converts this LookupResponse to JSON.
5421 * @function toJSON
5422 * @memberof google.datastore.v1.LookupResponse
5423 * @instance
5424 * @returns {Object.<string,*>} JSON object
5425 */
5426 LookupResponse.prototype.toJSON = function toJSON() {
5427 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
5428 };
5429
5430 return LookupResponse;
5431 })();
5432
5433 v1.RunQueryRequest = (function() {
5434
5435 /**
5436 * Properties of a RunQueryRequest.
5437 * @memberof google.datastore.v1
5438 * @interface IRunQueryRequest
5439 * @property {string|null} [projectId] RunQueryRequest projectId
5440 * @property {google.datastore.v1.IPartitionId|null} [partitionId] RunQueryRequest partitionId
5441 * @property {google.datastore.v1.IReadOptions|null} [readOptions] RunQueryRequest readOptions
5442 * @property {google.datastore.v1.IQuery|null} [query] RunQueryRequest query
5443 * @property {google.datastore.v1.IGqlQuery|null} [gqlQuery] RunQueryRequest gqlQuery
5444 */
5445
5446 /**
5447 * Constructs a new RunQueryRequest.
5448 * @memberof google.datastore.v1
5449 * @classdesc Represents a RunQueryRequest.
5450 * @implements IRunQueryRequest
5451 * @constructor
5452 * @param {google.datastore.v1.IRunQueryRequest=} [properties] Properties to set
5453 */
5454 function RunQueryRequest(properties) {
5455 if (properties)
5456 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
5457 if (properties[keys[i]] != null)
5458 this[keys[i]] = properties[keys[i]];
5459 }
5460
5461 /**
5462 * RunQueryRequest projectId.
5463 * @member {string} projectId
5464 * @memberof google.datastore.v1.RunQueryRequest
5465 * @instance
5466 */
5467 RunQueryRequest.prototype.projectId = "";
5468
5469 /**
5470 * RunQueryRequest partitionId.
5471 * @member {google.datastore.v1.IPartitionId|null|undefined} partitionId
5472 * @memberof google.datastore.v1.RunQueryRequest
5473 * @instance
5474 */
5475 RunQueryRequest.prototype.partitionId = null;
5476
5477 /**
5478 * RunQueryRequest readOptions.
5479 * @member {google.datastore.v1.IReadOptions|null|undefined} readOptions
5480 * @memberof google.datastore.v1.RunQueryRequest
5481 * @instance
5482 */
5483 RunQueryRequest.prototype.readOptions = null;
5484
5485 /**
5486 * RunQueryRequest query.
5487 * @member {google.datastore.v1.IQuery|null|undefined} query
5488 * @memberof google.datastore.v1.RunQueryRequest
5489 * @instance
5490 */
5491 RunQueryRequest.prototype.query = null;
5492
5493 /**
5494 * RunQueryRequest gqlQuery.
5495 * @member {google.datastore.v1.IGqlQuery|null|undefined} gqlQuery
5496 * @memberof google.datastore.v1.RunQueryRequest
5497 * @instance
5498 */
5499 RunQueryRequest.prototype.gqlQuery = null;
5500
5501 // OneOf field names bound to virtual getters and setters
5502 var $oneOfFields;
5503
5504 /**
5505 * RunQueryRequest queryType.
5506 * @member {"query"|"gqlQuery"|undefined} queryType
5507 * @memberof google.datastore.v1.RunQueryRequest
5508 * @instance
5509 */
5510 Object.defineProperty(RunQueryRequest.prototype, "queryType", {
5511 get: $util.oneOfGetter($oneOfFields = ["query", "gqlQuery"]),
5512 set: $util.oneOfSetter($oneOfFields)
5513 });
5514
5515 /**
5516 * Creates a new RunQueryRequest instance using the specified properties.
5517 * @function create
5518 * @memberof google.datastore.v1.RunQueryRequest
5519 * @static
5520 * @param {google.datastore.v1.IRunQueryRequest=} [properties] Properties to set
5521 * @returns {google.datastore.v1.RunQueryRequest} RunQueryRequest instance
5522 */
5523 RunQueryRequest.create = function create(properties) {
5524 return new RunQueryRequest(properties);
5525 };
5526
5527 /**
5528 * Encodes the specified RunQueryRequest message. Does not implicitly {@link google.datastore.v1.RunQueryRequest.verify|verify} messages.
5529 * @function encode
5530 * @memberof google.datastore.v1.RunQueryRequest
5531 * @static
5532 * @param {google.datastore.v1.IRunQueryRequest} message RunQueryRequest message or plain object to encode
5533 * @param {$protobuf.Writer} [writer] Writer to encode to
5534 * @returns {$protobuf.Writer} Writer
5535 */
5536 RunQueryRequest.encode = function encode(message, writer) {
5537 if (!writer)
5538 writer = $Writer.create();
5539 if (message.readOptions != null && Object.hasOwnProperty.call(message, "readOptions"))
5540 $root.google.datastore.v1.ReadOptions.encode(message.readOptions, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
5541 if (message.partitionId != null && Object.hasOwnProperty.call(message, "partitionId"))
5542 $root.google.datastore.v1.PartitionId.encode(message.partitionId, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
5543 if (message.query != null && Object.hasOwnProperty.call(message, "query"))
5544 $root.google.datastore.v1.Query.encode(message.query, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
5545 if (message.gqlQuery != null && Object.hasOwnProperty.call(message, "gqlQuery"))
5546 $root.google.datastore.v1.GqlQuery.encode(message.gqlQuery, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
5547 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
5548 writer.uint32(/* id 8, wireType 2 =*/66).string(message.projectId);
5549 return writer;
5550 };
5551
5552 /**
5553 * Encodes the specified RunQueryRequest message, length delimited. Does not implicitly {@link google.datastore.v1.RunQueryRequest.verify|verify} messages.
5554 * @function encodeDelimited
5555 * @memberof google.datastore.v1.RunQueryRequest
5556 * @static
5557 * @param {google.datastore.v1.IRunQueryRequest} message RunQueryRequest message or plain object to encode
5558 * @param {$protobuf.Writer} [writer] Writer to encode to
5559 * @returns {$protobuf.Writer} Writer
5560 */
5561 RunQueryRequest.encodeDelimited = function encodeDelimited(message, writer) {
5562 return this.encode(message, writer).ldelim();
5563 };
5564
5565 /**
5566 * Decodes a RunQueryRequest message from the specified reader or buffer.
5567 * @function decode
5568 * @memberof google.datastore.v1.RunQueryRequest
5569 * @static
5570 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5571 * @param {number} [length] Message length if known beforehand
5572 * @returns {google.datastore.v1.RunQueryRequest} RunQueryRequest
5573 * @throws {Error} If the payload is not a reader or valid buffer
5574 * @throws {$protobuf.util.ProtocolError} If required fields are missing
5575 */
5576 RunQueryRequest.decode = function decode(reader, length) {
5577 if (!(reader instanceof $Reader))
5578 reader = $Reader.create(reader);
5579 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.RunQueryRequest();
5580 while (reader.pos < end) {
5581 var tag = reader.uint32();
5582 switch (tag >>> 3) {
5583 case 8:
5584 message.projectId = reader.string();
5585 break;
5586 case 2:
5587 message.partitionId = $root.google.datastore.v1.PartitionId.decode(reader, reader.uint32());
5588 break;
5589 case 1:
5590 message.readOptions = $root.google.datastore.v1.ReadOptions.decode(reader, reader.uint32());
5591 break;
5592 case 3:
5593 message.query = $root.google.datastore.v1.Query.decode(reader, reader.uint32());
5594 break;
5595 case 7:
5596 message.gqlQuery = $root.google.datastore.v1.GqlQuery.decode(reader, reader.uint32());
5597 break;
5598 default:
5599 reader.skipType(tag & 7);
5600 break;
5601 }
5602 }
5603 return message;
5604 };
5605
5606 /**
5607 * Decodes a RunQueryRequest message from the specified reader or buffer, length delimited.
5608 * @function decodeDelimited
5609 * @memberof google.datastore.v1.RunQueryRequest
5610 * @static
5611 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5612 * @returns {google.datastore.v1.RunQueryRequest} RunQueryRequest
5613 * @throws {Error} If the payload is not a reader or valid buffer
5614 * @throws {$protobuf.util.ProtocolError} If required fields are missing
5615 */
5616 RunQueryRequest.decodeDelimited = function decodeDelimited(reader) {
5617 if (!(reader instanceof $Reader))
5618 reader = new $Reader(reader);
5619 return this.decode(reader, reader.uint32());
5620 };
5621
5622 /**
5623 * Verifies a RunQueryRequest message.
5624 * @function verify
5625 * @memberof google.datastore.v1.RunQueryRequest
5626 * @static
5627 * @param {Object.<string,*>} message Plain object to verify
5628 * @returns {string|null} `null` if valid, otherwise the reason why it is not
5629 */
5630 RunQueryRequest.verify = function verify(message) {
5631 if (typeof message !== "object" || message === null)
5632 return "object expected";
5633 var properties = {};
5634 if (message.projectId != null && message.hasOwnProperty("projectId"))
5635 if (!$util.isString(message.projectId))
5636 return "projectId: string expected";
5637 if (message.partitionId != null && message.hasOwnProperty("partitionId")) {
5638 var error = $root.google.datastore.v1.PartitionId.verify(message.partitionId);
5639 if (error)
5640 return "partitionId." + error;
5641 }
5642 if (message.readOptions != null && message.hasOwnProperty("readOptions")) {
5643 var error = $root.google.datastore.v1.ReadOptions.verify(message.readOptions);
5644 if (error)
5645 return "readOptions." + error;
5646 }
5647 if (message.query != null && message.hasOwnProperty("query")) {
5648 properties.queryType = 1;
5649 {
5650 var error = $root.google.datastore.v1.Query.verify(message.query);
5651 if (error)
5652 return "query." + error;
5653 }
5654 }
5655 if (message.gqlQuery != null && message.hasOwnProperty("gqlQuery")) {
5656 if (properties.queryType === 1)
5657 return "queryType: multiple values";
5658 properties.queryType = 1;
5659 {
5660 var error = $root.google.datastore.v1.GqlQuery.verify(message.gqlQuery);
5661 if (error)
5662 return "gqlQuery." + error;
5663 }
5664 }
5665 return null;
5666 };
5667
5668 /**
5669 * Creates a RunQueryRequest message from a plain object. Also converts values to their respective internal types.
5670 * @function fromObject
5671 * @memberof google.datastore.v1.RunQueryRequest
5672 * @static
5673 * @param {Object.<string,*>} object Plain object
5674 * @returns {google.datastore.v1.RunQueryRequest} RunQueryRequest
5675 */
5676 RunQueryRequest.fromObject = function fromObject(object) {
5677 if (object instanceof $root.google.datastore.v1.RunQueryRequest)
5678 return object;
5679 var message = new $root.google.datastore.v1.RunQueryRequest();
5680 if (object.projectId != null)
5681 message.projectId = String(object.projectId);
5682 if (object.partitionId != null) {
5683 if (typeof object.partitionId !== "object")
5684 throw TypeError(".google.datastore.v1.RunQueryRequest.partitionId: object expected");
5685 message.partitionId = $root.google.datastore.v1.PartitionId.fromObject(object.partitionId);
5686 }
5687 if (object.readOptions != null) {
5688 if (typeof object.readOptions !== "object")
5689 throw TypeError(".google.datastore.v1.RunQueryRequest.readOptions: object expected");
5690 message.readOptions = $root.google.datastore.v1.ReadOptions.fromObject(object.readOptions);
5691 }
5692 if (object.query != null) {
5693 if (typeof object.query !== "object")
5694 throw TypeError(".google.datastore.v1.RunQueryRequest.query: object expected");
5695 message.query = $root.google.datastore.v1.Query.fromObject(object.query);
5696 }
5697 if (object.gqlQuery != null) {
5698 if (typeof object.gqlQuery !== "object")
5699 throw TypeError(".google.datastore.v1.RunQueryRequest.gqlQuery: object expected");
5700 message.gqlQuery = $root.google.datastore.v1.GqlQuery.fromObject(object.gqlQuery);
5701 }
5702 return message;
5703 };
5704
5705 /**
5706 * Creates a plain object from a RunQueryRequest message. Also converts values to other types if specified.
5707 * @function toObject
5708 * @memberof google.datastore.v1.RunQueryRequest
5709 * @static
5710 * @param {google.datastore.v1.RunQueryRequest} message RunQueryRequest
5711 * @param {$protobuf.IConversionOptions} [options] Conversion options
5712 * @returns {Object.<string,*>} Plain object
5713 */
5714 RunQueryRequest.toObject = function toObject(message, options) {
5715 if (!options)
5716 options = {};
5717 var object = {};
5718 if (options.defaults) {
5719 object.readOptions = null;
5720 object.partitionId = null;
5721 object.projectId = "";
5722 }
5723 if (message.readOptions != null && message.hasOwnProperty("readOptions"))
5724 object.readOptions = $root.google.datastore.v1.ReadOptions.toObject(message.readOptions, options);
5725 if (message.partitionId != null && message.hasOwnProperty("partitionId"))
5726 object.partitionId = $root.google.datastore.v1.PartitionId.toObject(message.partitionId, options);
5727 if (message.query != null && message.hasOwnProperty("query")) {
5728 object.query = $root.google.datastore.v1.Query.toObject(message.query, options);
5729 if (options.oneofs)
5730 object.queryType = "query";
5731 }
5732 if (message.gqlQuery != null && message.hasOwnProperty("gqlQuery")) {
5733 object.gqlQuery = $root.google.datastore.v1.GqlQuery.toObject(message.gqlQuery, options);
5734 if (options.oneofs)
5735 object.queryType = "gqlQuery";
5736 }
5737 if (message.projectId != null && message.hasOwnProperty("projectId"))
5738 object.projectId = message.projectId;
5739 return object;
5740 };
5741
5742 /**
5743 * Converts this RunQueryRequest to JSON.
5744 * @function toJSON
5745 * @memberof google.datastore.v1.RunQueryRequest
5746 * @instance
5747 * @returns {Object.<string,*>} JSON object
5748 */
5749 RunQueryRequest.prototype.toJSON = function toJSON() {
5750 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
5751 };
5752
5753 return RunQueryRequest;
5754 })();
5755
5756 v1.RunQueryResponse = (function() {
5757
5758 /**
5759 * Properties of a RunQueryResponse.
5760 * @memberof google.datastore.v1
5761 * @interface IRunQueryResponse
5762 * @property {google.datastore.v1.IQueryResultBatch|null} [batch] RunQueryResponse batch
5763 * @property {google.datastore.v1.IQuery|null} [query] RunQueryResponse query
5764 */
5765
5766 /**
5767 * Constructs a new RunQueryResponse.
5768 * @memberof google.datastore.v1
5769 * @classdesc Represents a RunQueryResponse.
5770 * @implements IRunQueryResponse
5771 * @constructor
5772 * @param {google.datastore.v1.IRunQueryResponse=} [properties] Properties to set
5773 */
5774 function RunQueryResponse(properties) {
5775 if (properties)
5776 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
5777 if (properties[keys[i]] != null)
5778 this[keys[i]] = properties[keys[i]];
5779 }
5780
5781 /**
5782 * RunQueryResponse batch.
5783 * @member {google.datastore.v1.IQueryResultBatch|null|undefined} batch
5784 * @memberof google.datastore.v1.RunQueryResponse
5785 * @instance
5786 */
5787 RunQueryResponse.prototype.batch = null;
5788
5789 /**
5790 * RunQueryResponse query.
5791 * @member {google.datastore.v1.IQuery|null|undefined} query
5792 * @memberof google.datastore.v1.RunQueryResponse
5793 * @instance
5794 */
5795 RunQueryResponse.prototype.query = null;
5796
5797 /**
5798 * Creates a new RunQueryResponse instance using the specified properties.
5799 * @function create
5800 * @memberof google.datastore.v1.RunQueryResponse
5801 * @static
5802 * @param {google.datastore.v1.IRunQueryResponse=} [properties] Properties to set
5803 * @returns {google.datastore.v1.RunQueryResponse} RunQueryResponse instance
5804 */
5805 RunQueryResponse.create = function create(properties) {
5806 return new RunQueryResponse(properties);
5807 };
5808
5809 /**
5810 * Encodes the specified RunQueryResponse message. Does not implicitly {@link google.datastore.v1.RunQueryResponse.verify|verify} messages.
5811 * @function encode
5812 * @memberof google.datastore.v1.RunQueryResponse
5813 * @static
5814 * @param {google.datastore.v1.IRunQueryResponse} message RunQueryResponse message or plain object to encode
5815 * @param {$protobuf.Writer} [writer] Writer to encode to
5816 * @returns {$protobuf.Writer} Writer
5817 */
5818 RunQueryResponse.encode = function encode(message, writer) {
5819 if (!writer)
5820 writer = $Writer.create();
5821 if (message.batch != null && Object.hasOwnProperty.call(message, "batch"))
5822 $root.google.datastore.v1.QueryResultBatch.encode(message.batch, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
5823 if (message.query != null && Object.hasOwnProperty.call(message, "query"))
5824 $root.google.datastore.v1.Query.encode(message.query, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
5825 return writer;
5826 };
5827
5828 /**
5829 * Encodes the specified RunQueryResponse message, length delimited. Does not implicitly {@link google.datastore.v1.RunQueryResponse.verify|verify} messages.
5830 * @function encodeDelimited
5831 * @memberof google.datastore.v1.RunQueryResponse
5832 * @static
5833 * @param {google.datastore.v1.IRunQueryResponse} message RunQueryResponse message or plain object to encode
5834 * @param {$protobuf.Writer} [writer] Writer to encode to
5835 * @returns {$protobuf.Writer} Writer
5836 */
5837 RunQueryResponse.encodeDelimited = function encodeDelimited(message, writer) {
5838 return this.encode(message, writer).ldelim();
5839 };
5840
5841 /**
5842 * Decodes a RunQueryResponse message from the specified reader or buffer.
5843 * @function decode
5844 * @memberof google.datastore.v1.RunQueryResponse
5845 * @static
5846 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5847 * @param {number} [length] Message length if known beforehand
5848 * @returns {google.datastore.v1.RunQueryResponse} RunQueryResponse
5849 * @throws {Error} If the payload is not a reader or valid buffer
5850 * @throws {$protobuf.util.ProtocolError} If required fields are missing
5851 */
5852 RunQueryResponse.decode = function decode(reader, length) {
5853 if (!(reader instanceof $Reader))
5854 reader = $Reader.create(reader);
5855 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.RunQueryResponse();
5856 while (reader.pos < end) {
5857 var tag = reader.uint32();
5858 switch (tag >>> 3) {
5859 case 1:
5860 message.batch = $root.google.datastore.v1.QueryResultBatch.decode(reader, reader.uint32());
5861 break;
5862 case 2:
5863 message.query = $root.google.datastore.v1.Query.decode(reader, reader.uint32());
5864 break;
5865 default:
5866 reader.skipType(tag & 7);
5867 break;
5868 }
5869 }
5870 return message;
5871 };
5872
5873 /**
5874 * Decodes a RunQueryResponse message from the specified reader or buffer, length delimited.
5875 * @function decodeDelimited
5876 * @memberof google.datastore.v1.RunQueryResponse
5877 * @static
5878 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
5879 * @returns {google.datastore.v1.RunQueryResponse} RunQueryResponse
5880 * @throws {Error} If the payload is not a reader or valid buffer
5881 * @throws {$protobuf.util.ProtocolError} If required fields are missing
5882 */
5883 RunQueryResponse.decodeDelimited = function decodeDelimited(reader) {
5884 if (!(reader instanceof $Reader))
5885 reader = new $Reader(reader);
5886 return this.decode(reader, reader.uint32());
5887 };
5888
5889 /**
5890 * Verifies a RunQueryResponse message.
5891 * @function verify
5892 * @memberof google.datastore.v1.RunQueryResponse
5893 * @static
5894 * @param {Object.<string,*>} message Plain object to verify
5895 * @returns {string|null} `null` if valid, otherwise the reason why it is not
5896 */
5897 RunQueryResponse.verify = function verify(message) {
5898 if (typeof message !== "object" || message === null)
5899 return "object expected";
5900 if (message.batch != null && message.hasOwnProperty("batch")) {
5901 var error = $root.google.datastore.v1.QueryResultBatch.verify(message.batch);
5902 if (error)
5903 return "batch." + error;
5904 }
5905 if (message.query != null && message.hasOwnProperty("query")) {
5906 var error = $root.google.datastore.v1.Query.verify(message.query);
5907 if (error)
5908 return "query." + error;
5909 }
5910 return null;
5911 };
5912
5913 /**
5914 * Creates a RunQueryResponse message from a plain object. Also converts values to their respective internal types.
5915 * @function fromObject
5916 * @memberof google.datastore.v1.RunQueryResponse
5917 * @static
5918 * @param {Object.<string,*>} object Plain object
5919 * @returns {google.datastore.v1.RunQueryResponse} RunQueryResponse
5920 */
5921 RunQueryResponse.fromObject = function fromObject(object) {
5922 if (object instanceof $root.google.datastore.v1.RunQueryResponse)
5923 return object;
5924 var message = new $root.google.datastore.v1.RunQueryResponse();
5925 if (object.batch != null) {
5926 if (typeof object.batch !== "object")
5927 throw TypeError(".google.datastore.v1.RunQueryResponse.batch: object expected");
5928 message.batch = $root.google.datastore.v1.QueryResultBatch.fromObject(object.batch);
5929 }
5930 if (object.query != null) {
5931 if (typeof object.query !== "object")
5932 throw TypeError(".google.datastore.v1.RunQueryResponse.query: object expected");
5933 message.query = $root.google.datastore.v1.Query.fromObject(object.query);
5934 }
5935 return message;
5936 };
5937
5938 /**
5939 * Creates a plain object from a RunQueryResponse message. Also converts values to other types if specified.
5940 * @function toObject
5941 * @memberof google.datastore.v1.RunQueryResponse
5942 * @static
5943 * @param {google.datastore.v1.RunQueryResponse} message RunQueryResponse
5944 * @param {$protobuf.IConversionOptions} [options] Conversion options
5945 * @returns {Object.<string,*>} Plain object
5946 */
5947 RunQueryResponse.toObject = function toObject(message, options) {
5948 if (!options)
5949 options = {};
5950 var object = {};
5951 if (options.defaults) {
5952 object.batch = null;
5953 object.query = null;
5954 }
5955 if (message.batch != null && message.hasOwnProperty("batch"))
5956 object.batch = $root.google.datastore.v1.QueryResultBatch.toObject(message.batch, options);
5957 if (message.query != null && message.hasOwnProperty("query"))
5958 object.query = $root.google.datastore.v1.Query.toObject(message.query, options);
5959 return object;
5960 };
5961
5962 /**
5963 * Converts this RunQueryResponse to JSON.
5964 * @function toJSON
5965 * @memberof google.datastore.v1.RunQueryResponse
5966 * @instance
5967 * @returns {Object.<string,*>} JSON object
5968 */
5969 RunQueryResponse.prototype.toJSON = function toJSON() {
5970 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
5971 };
5972
5973 return RunQueryResponse;
5974 })();
5975
5976 v1.BeginTransactionRequest = (function() {
5977
5978 /**
5979 * Properties of a BeginTransactionRequest.
5980 * @memberof google.datastore.v1
5981 * @interface IBeginTransactionRequest
5982 * @property {string|null} [projectId] BeginTransactionRequest projectId
5983 * @property {google.datastore.v1.ITransactionOptions|null} [transactionOptions] BeginTransactionRequest transactionOptions
5984 */
5985
5986 /**
5987 * Constructs a new BeginTransactionRequest.
5988 * @memberof google.datastore.v1
5989 * @classdesc Represents a BeginTransactionRequest.
5990 * @implements IBeginTransactionRequest
5991 * @constructor
5992 * @param {google.datastore.v1.IBeginTransactionRequest=} [properties] Properties to set
5993 */
5994 function BeginTransactionRequest(properties) {
5995 if (properties)
5996 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
5997 if (properties[keys[i]] != null)
5998 this[keys[i]] = properties[keys[i]];
5999 }
6000
6001 /**
6002 * BeginTransactionRequest projectId.
6003 * @member {string} projectId
6004 * @memberof google.datastore.v1.BeginTransactionRequest
6005 * @instance
6006 */
6007 BeginTransactionRequest.prototype.projectId = "";
6008
6009 /**
6010 * BeginTransactionRequest transactionOptions.
6011 * @member {google.datastore.v1.ITransactionOptions|null|undefined} transactionOptions
6012 * @memberof google.datastore.v1.BeginTransactionRequest
6013 * @instance
6014 */
6015 BeginTransactionRequest.prototype.transactionOptions = null;
6016
6017 /**
6018 * Creates a new BeginTransactionRequest instance using the specified properties.
6019 * @function create
6020 * @memberof google.datastore.v1.BeginTransactionRequest
6021 * @static
6022 * @param {google.datastore.v1.IBeginTransactionRequest=} [properties] Properties to set
6023 * @returns {google.datastore.v1.BeginTransactionRequest} BeginTransactionRequest instance
6024 */
6025 BeginTransactionRequest.create = function create(properties) {
6026 return new BeginTransactionRequest(properties);
6027 };
6028
6029 /**
6030 * Encodes the specified BeginTransactionRequest message. Does not implicitly {@link google.datastore.v1.BeginTransactionRequest.verify|verify} messages.
6031 * @function encode
6032 * @memberof google.datastore.v1.BeginTransactionRequest
6033 * @static
6034 * @param {google.datastore.v1.IBeginTransactionRequest} message BeginTransactionRequest message or plain object to encode
6035 * @param {$protobuf.Writer} [writer] Writer to encode to
6036 * @returns {$protobuf.Writer} Writer
6037 */
6038 BeginTransactionRequest.encode = function encode(message, writer) {
6039 if (!writer)
6040 writer = $Writer.create();
6041 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
6042 writer.uint32(/* id 8, wireType 2 =*/66).string(message.projectId);
6043 if (message.transactionOptions != null && Object.hasOwnProperty.call(message, "transactionOptions"))
6044 $root.google.datastore.v1.TransactionOptions.encode(message.transactionOptions, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
6045 return writer;
6046 };
6047
6048 /**
6049 * Encodes the specified BeginTransactionRequest message, length delimited. Does not implicitly {@link google.datastore.v1.BeginTransactionRequest.verify|verify} messages.
6050 * @function encodeDelimited
6051 * @memberof google.datastore.v1.BeginTransactionRequest
6052 * @static
6053 * @param {google.datastore.v1.IBeginTransactionRequest} message BeginTransactionRequest message or plain object to encode
6054 * @param {$protobuf.Writer} [writer] Writer to encode to
6055 * @returns {$protobuf.Writer} Writer
6056 */
6057 BeginTransactionRequest.encodeDelimited = function encodeDelimited(message, writer) {
6058 return this.encode(message, writer).ldelim();
6059 };
6060
6061 /**
6062 * Decodes a BeginTransactionRequest message from the specified reader or buffer.
6063 * @function decode
6064 * @memberof google.datastore.v1.BeginTransactionRequest
6065 * @static
6066 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6067 * @param {number} [length] Message length if known beforehand
6068 * @returns {google.datastore.v1.BeginTransactionRequest} BeginTransactionRequest
6069 * @throws {Error} If the payload is not a reader or valid buffer
6070 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6071 */
6072 BeginTransactionRequest.decode = function decode(reader, length) {
6073 if (!(reader instanceof $Reader))
6074 reader = $Reader.create(reader);
6075 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.BeginTransactionRequest();
6076 while (reader.pos < end) {
6077 var tag = reader.uint32();
6078 switch (tag >>> 3) {
6079 case 8:
6080 message.projectId = reader.string();
6081 break;
6082 case 10:
6083 message.transactionOptions = $root.google.datastore.v1.TransactionOptions.decode(reader, reader.uint32());
6084 break;
6085 default:
6086 reader.skipType(tag & 7);
6087 break;
6088 }
6089 }
6090 return message;
6091 };
6092
6093 /**
6094 * Decodes a BeginTransactionRequest message from the specified reader or buffer, length delimited.
6095 * @function decodeDelimited
6096 * @memberof google.datastore.v1.BeginTransactionRequest
6097 * @static
6098 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6099 * @returns {google.datastore.v1.BeginTransactionRequest} BeginTransactionRequest
6100 * @throws {Error} If the payload is not a reader or valid buffer
6101 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6102 */
6103 BeginTransactionRequest.decodeDelimited = function decodeDelimited(reader) {
6104 if (!(reader instanceof $Reader))
6105 reader = new $Reader(reader);
6106 return this.decode(reader, reader.uint32());
6107 };
6108
6109 /**
6110 * Verifies a BeginTransactionRequest message.
6111 * @function verify
6112 * @memberof google.datastore.v1.BeginTransactionRequest
6113 * @static
6114 * @param {Object.<string,*>} message Plain object to verify
6115 * @returns {string|null} `null` if valid, otherwise the reason why it is not
6116 */
6117 BeginTransactionRequest.verify = function verify(message) {
6118 if (typeof message !== "object" || message === null)
6119 return "object expected";
6120 if (message.projectId != null && message.hasOwnProperty("projectId"))
6121 if (!$util.isString(message.projectId))
6122 return "projectId: string expected";
6123 if (message.transactionOptions != null && message.hasOwnProperty("transactionOptions")) {
6124 var error = $root.google.datastore.v1.TransactionOptions.verify(message.transactionOptions);
6125 if (error)
6126 return "transactionOptions." + error;
6127 }
6128 return null;
6129 };
6130
6131 /**
6132 * Creates a BeginTransactionRequest message from a plain object. Also converts values to their respective internal types.
6133 * @function fromObject
6134 * @memberof google.datastore.v1.BeginTransactionRequest
6135 * @static
6136 * @param {Object.<string,*>} object Plain object
6137 * @returns {google.datastore.v1.BeginTransactionRequest} BeginTransactionRequest
6138 */
6139 BeginTransactionRequest.fromObject = function fromObject(object) {
6140 if (object instanceof $root.google.datastore.v1.BeginTransactionRequest)
6141 return object;
6142 var message = new $root.google.datastore.v1.BeginTransactionRequest();
6143 if (object.projectId != null)
6144 message.projectId = String(object.projectId);
6145 if (object.transactionOptions != null) {
6146 if (typeof object.transactionOptions !== "object")
6147 throw TypeError(".google.datastore.v1.BeginTransactionRequest.transactionOptions: object expected");
6148 message.transactionOptions = $root.google.datastore.v1.TransactionOptions.fromObject(object.transactionOptions);
6149 }
6150 return message;
6151 };
6152
6153 /**
6154 * Creates a plain object from a BeginTransactionRequest message. Also converts values to other types if specified.
6155 * @function toObject
6156 * @memberof google.datastore.v1.BeginTransactionRequest
6157 * @static
6158 * @param {google.datastore.v1.BeginTransactionRequest} message BeginTransactionRequest
6159 * @param {$protobuf.IConversionOptions} [options] Conversion options
6160 * @returns {Object.<string,*>} Plain object
6161 */
6162 BeginTransactionRequest.toObject = function toObject(message, options) {
6163 if (!options)
6164 options = {};
6165 var object = {};
6166 if (options.defaults) {
6167 object.projectId = "";
6168 object.transactionOptions = null;
6169 }
6170 if (message.projectId != null && message.hasOwnProperty("projectId"))
6171 object.projectId = message.projectId;
6172 if (message.transactionOptions != null && message.hasOwnProperty("transactionOptions"))
6173 object.transactionOptions = $root.google.datastore.v1.TransactionOptions.toObject(message.transactionOptions, options);
6174 return object;
6175 };
6176
6177 /**
6178 * Converts this BeginTransactionRequest to JSON.
6179 * @function toJSON
6180 * @memberof google.datastore.v1.BeginTransactionRequest
6181 * @instance
6182 * @returns {Object.<string,*>} JSON object
6183 */
6184 BeginTransactionRequest.prototype.toJSON = function toJSON() {
6185 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
6186 };
6187
6188 return BeginTransactionRequest;
6189 })();
6190
6191 v1.BeginTransactionResponse = (function() {
6192
6193 /**
6194 * Properties of a BeginTransactionResponse.
6195 * @memberof google.datastore.v1
6196 * @interface IBeginTransactionResponse
6197 * @property {Uint8Array|null} [transaction] BeginTransactionResponse transaction
6198 */
6199
6200 /**
6201 * Constructs a new BeginTransactionResponse.
6202 * @memberof google.datastore.v1
6203 * @classdesc Represents a BeginTransactionResponse.
6204 * @implements IBeginTransactionResponse
6205 * @constructor
6206 * @param {google.datastore.v1.IBeginTransactionResponse=} [properties] Properties to set
6207 */
6208 function BeginTransactionResponse(properties) {
6209 if (properties)
6210 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
6211 if (properties[keys[i]] != null)
6212 this[keys[i]] = properties[keys[i]];
6213 }
6214
6215 /**
6216 * BeginTransactionResponse transaction.
6217 * @member {Uint8Array} transaction
6218 * @memberof google.datastore.v1.BeginTransactionResponse
6219 * @instance
6220 */
6221 BeginTransactionResponse.prototype.transaction = $util.newBuffer([]);
6222
6223 /**
6224 * Creates a new BeginTransactionResponse instance using the specified properties.
6225 * @function create
6226 * @memberof google.datastore.v1.BeginTransactionResponse
6227 * @static
6228 * @param {google.datastore.v1.IBeginTransactionResponse=} [properties] Properties to set
6229 * @returns {google.datastore.v1.BeginTransactionResponse} BeginTransactionResponse instance
6230 */
6231 BeginTransactionResponse.create = function create(properties) {
6232 return new BeginTransactionResponse(properties);
6233 };
6234
6235 /**
6236 * Encodes the specified BeginTransactionResponse message. Does not implicitly {@link google.datastore.v1.BeginTransactionResponse.verify|verify} messages.
6237 * @function encode
6238 * @memberof google.datastore.v1.BeginTransactionResponse
6239 * @static
6240 * @param {google.datastore.v1.IBeginTransactionResponse} message BeginTransactionResponse message or plain object to encode
6241 * @param {$protobuf.Writer} [writer] Writer to encode to
6242 * @returns {$protobuf.Writer} Writer
6243 */
6244 BeginTransactionResponse.encode = function encode(message, writer) {
6245 if (!writer)
6246 writer = $Writer.create();
6247 if (message.transaction != null && Object.hasOwnProperty.call(message, "transaction"))
6248 writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.transaction);
6249 return writer;
6250 };
6251
6252 /**
6253 * Encodes the specified BeginTransactionResponse message, length delimited. Does not implicitly {@link google.datastore.v1.BeginTransactionResponse.verify|verify} messages.
6254 * @function encodeDelimited
6255 * @memberof google.datastore.v1.BeginTransactionResponse
6256 * @static
6257 * @param {google.datastore.v1.IBeginTransactionResponse} message BeginTransactionResponse message or plain object to encode
6258 * @param {$protobuf.Writer} [writer] Writer to encode to
6259 * @returns {$protobuf.Writer} Writer
6260 */
6261 BeginTransactionResponse.encodeDelimited = function encodeDelimited(message, writer) {
6262 return this.encode(message, writer).ldelim();
6263 };
6264
6265 /**
6266 * Decodes a BeginTransactionResponse message from the specified reader or buffer.
6267 * @function decode
6268 * @memberof google.datastore.v1.BeginTransactionResponse
6269 * @static
6270 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6271 * @param {number} [length] Message length if known beforehand
6272 * @returns {google.datastore.v1.BeginTransactionResponse} BeginTransactionResponse
6273 * @throws {Error} If the payload is not a reader or valid buffer
6274 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6275 */
6276 BeginTransactionResponse.decode = function decode(reader, length) {
6277 if (!(reader instanceof $Reader))
6278 reader = $Reader.create(reader);
6279 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.BeginTransactionResponse();
6280 while (reader.pos < end) {
6281 var tag = reader.uint32();
6282 switch (tag >>> 3) {
6283 case 1:
6284 message.transaction = reader.bytes();
6285 break;
6286 default:
6287 reader.skipType(tag & 7);
6288 break;
6289 }
6290 }
6291 return message;
6292 };
6293
6294 /**
6295 * Decodes a BeginTransactionResponse message from the specified reader or buffer, length delimited.
6296 * @function decodeDelimited
6297 * @memberof google.datastore.v1.BeginTransactionResponse
6298 * @static
6299 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6300 * @returns {google.datastore.v1.BeginTransactionResponse} BeginTransactionResponse
6301 * @throws {Error} If the payload is not a reader or valid buffer
6302 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6303 */
6304 BeginTransactionResponse.decodeDelimited = function decodeDelimited(reader) {
6305 if (!(reader instanceof $Reader))
6306 reader = new $Reader(reader);
6307 return this.decode(reader, reader.uint32());
6308 };
6309
6310 /**
6311 * Verifies a BeginTransactionResponse message.
6312 * @function verify
6313 * @memberof google.datastore.v1.BeginTransactionResponse
6314 * @static
6315 * @param {Object.<string,*>} message Plain object to verify
6316 * @returns {string|null} `null` if valid, otherwise the reason why it is not
6317 */
6318 BeginTransactionResponse.verify = function verify(message) {
6319 if (typeof message !== "object" || message === null)
6320 return "object expected";
6321 if (message.transaction != null && message.hasOwnProperty("transaction"))
6322 if (!(message.transaction && typeof message.transaction.length === "number" || $util.isString(message.transaction)))
6323 return "transaction: buffer expected";
6324 return null;
6325 };
6326
6327 /**
6328 * Creates a BeginTransactionResponse message from a plain object. Also converts values to their respective internal types.
6329 * @function fromObject
6330 * @memberof google.datastore.v1.BeginTransactionResponse
6331 * @static
6332 * @param {Object.<string,*>} object Plain object
6333 * @returns {google.datastore.v1.BeginTransactionResponse} BeginTransactionResponse
6334 */
6335 BeginTransactionResponse.fromObject = function fromObject(object) {
6336 if (object instanceof $root.google.datastore.v1.BeginTransactionResponse)
6337 return object;
6338 var message = new $root.google.datastore.v1.BeginTransactionResponse();
6339 if (object.transaction != null)
6340 if (typeof object.transaction === "string")
6341 $util.base64.decode(object.transaction, message.transaction = $util.newBuffer($util.base64.length(object.transaction)), 0);
6342 else if (object.transaction.length)
6343 message.transaction = object.transaction;
6344 return message;
6345 };
6346
6347 /**
6348 * Creates a plain object from a BeginTransactionResponse message. Also converts values to other types if specified.
6349 * @function toObject
6350 * @memberof google.datastore.v1.BeginTransactionResponse
6351 * @static
6352 * @param {google.datastore.v1.BeginTransactionResponse} message BeginTransactionResponse
6353 * @param {$protobuf.IConversionOptions} [options] Conversion options
6354 * @returns {Object.<string,*>} Plain object
6355 */
6356 BeginTransactionResponse.toObject = function toObject(message, options) {
6357 if (!options)
6358 options = {};
6359 var object = {};
6360 if (options.defaults)
6361 if (options.bytes === String)
6362 object.transaction = "";
6363 else {
6364 object.transaction = [];
6365 if (options.bytes !== Array)
6366 object.transaction = $util.newBuffer(object.transaction);
6367 }
6368 if (message.transaction != null && message.hasOwnProperty("transaction"))
6369 object.transaction = options.bytes === String ? $util.base64.encode(message.transaction, 0, message.transaction.length) : options.bytes === Array ? Array.prototype.slice.call(message.transaction) : message.transaction;
6370 return object;
6371 };
6372
6373 /**
6374 * Converts this BeginTransactionResponse to JSON.
6375 * @function toJSON
6376 * @memberof google.datastore.v1.BeginTransactionResponse
6377 * @instance
6378 * @returns {Object.<string,*>} JSON object
6379 */
6380 BeginTransactionResponse.prototype.toJSON = function toJSON() {
6381 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
6382 };
6383
6384 return BeginTransactionResponse;
6385 })();
6386
6387 v1.RollbackRequest = (function() {
6388
6389 /**
6390 * Properties of a RollbackRequest.
6391 * @memberof google.datastore.v1
6392 * @interface IRollbackRequest
6393 * @property {string|null} [projectId] RollbackRequest projectId
6394 * @property {Uint8Array|null} [transaction] RollbackRequest transaction
6395 */
6396
6397 /**
6398 * Constructs a new RollbackRequest.
6399 * @memberof google.datastore.v1
6400 * @classdesc Represents a RollbackRequest.
6401 * @implements IRollbackRequest
6402 * @constructor
6403 * @param {google.datastore.v1.IRollbackRequest=} [properties] Properties to set
6404 */
6405 function RollbackRequest(properties) {
6406 if (properties)
6407 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
6408 if (properties[keys[i]] != null)
6409 this[keys[i]] = properties[keys[i]];
6410 }
6411
6412 /**
6413 * RollbackRequest projectId.
6414 * @member {string} projectId
6415 * @memberof google.datastore.v1.RollbackRequest
6416 * @instance
6417 */
6418 RollbackRequest.prototype.projectId = "";
6419
6420 /**
6421 * RollbackRequest transaction.
6422 * @member {Uint8Array} transaction
6423 * @memberof google.datastore.v1.RollbackRequest
6424 * @instance
6425 */
6426 RollbackRequest.prototype.transaction = $util.newBuffer([]);
6427
6428 /**
6429 * Creates a new RollbackRequest instance using the specified properties.
6430 * @function create
6431 * @memberof google.datastore.v1.RollbackRequest
6432 * @static
6433 * @param {google.datastore.v1.IRollbackRequest=} [properties] Properties to set
6434 * @returns {google.datastore.v1.RollbackRequest} RollbackRequest instance
6435 */
6436 RollbackRequest.create = function create(properties) {
6437 return new RollbackRequest(properties);
6438 };
6439
6440 /**
6441 * Encodes the specified RollbackRequest message. Does not implicitly {@link google.datastore.v1.RollbackRequest.verify|verify} messages.
6442 * @function encode
6443 * @memberof google.datastore.v1.RollbackRequest
6444 * @static
6445 * @param {google.datastore.v1.IRollbackRequest} message RollbackRequest message or plain object to encode
6446 * @param {$protobuf.Writer} [writer] Writer to encode to
6447 * @returns {$protobuf.Writer} Writer
6448 */
6449 RollbackRequest.encode = function encode(message, writer) {
6450 if (!writer)
6451 writer = $Writer.create();
6452 if (message.transaction != null && Object.hasOwnProperty.call(message, "transaction"))
6453 writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.transaction);
6454 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
6455 writer.uint32(/* id 8, wireType 2 =*/66).string(message.projectId);
6456 return writer;
6457 };
6458
6459 /**
6460 * Encodes the specified RollbackRequest message, length delimited. Does not implicitly {@link google.datastore.v1.RollbackRequest.verify|verify} messages.
6461 * @function encodeDelimited
6462 * @memberof google.datastore.v1.RollbackRequest
6463 * @static
6464 * @param {google.datastore.v1.IRollbackRequest} message RollbackRequest message or plain object to encode
6465 * @param {$protobuf.Writer} [writer] Writer to encode to
6466 * @returns {$protobuf.Writer} Writer
6467 */
6468 RollbackRequest.encodeDelimited = function encodeDelimited(message, writer) {
6469 return this.encode(message, writer).ldelim();
6470 };
6471
6472 /**
6473 * Decodes a RollbackRequest message from the specified reader or buffer.
6474 * @function decode
6475 * @memberof google.datastore.v1.RollbackRequest
6476 * @static
6477 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6478 * @param {number} [length] Message length if known beforehand
6479 * @returns {google.datastore.v1.RollbackRequest} RollbackRequest
6480 * @throws {Error} If the payload is not a reader or valid buffer
6481 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6482 */
6483 RollbackRequest.decode = function decode(reader, length) {
6484 if (!(reader instanceof $Reader))
6485 reader = $Reader.create(reader);
6486 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.RollbackRequest();
6487 while (reader.pos < end) {
6488 var tag = reader.uint32();
6489 switch (tag >>> 3) {
6490 case 8:
6491 message.projectId = reader.string();
6492 break;
6493 case 1:
6494 message.transaction = reader.bytes();
6495 break;
6496 default:
6497 reader.skipType(tag & 7);
6498 break;
6499 }
6500 }
6501 return message;
6502 };
6503
6504 /**
6505 * Decodes a RollbackRequest message from the specified reader or buffer, length delimited.
6506 * @function decodeDelimited
6507 * @memberof google.datastore.v1.RollbackRequest
6508 * @static
6509 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6510 * @returns {google.datastore.v1.RollbackRequest} RollbackRequest
6511 * @throws {Error} If the payload is not a reader or valid buffer
6512 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6513 */
6514 RollbackRequest.decodeDelimited = function decodeDelimited(reader) {
6515 if (!(reader instanceof $Reader))
6516 reader = new $Reader(reader);
6517 return this.decode(reader, reader.uint32());
6518 };
6519
6520 /**
6521 * Verifies a RollbackRequest message.
6522 * @function verify
6523 * @memberof google.datastore.v1.RollbackRequest
6524 * @static
6525 * @param {Object.<string,*>} message Plain object to verify
6526 * @returns {string|null} `null` if valid, otherwise the reason why it is not
6527 */
6528 RollbackRequest.verify = function verify(message) {
6529 if (typeof message !== "object" || message === null)
6530 return "object expected";
6531 if (message.projectId != null && message.hasOwnProperty("projectId"))
6532 if (!$util.isString(message.projectId))
6533 return "projectId: string expected";
6534 if (message.transaction != null && message.hasOwnProperty("transaction"))
6535 if (!(message.transaction && typeof message.transaction.length === "number" || $util.isString(message.transaction)))
6536 return "transaction: buffer expected";
6537 return null;
6538 };
6539
6540 /**
6541 * Creates a RollbackRequest message from a plain object. Also converts values to their respective internal types.
6542 * @function fromObject
6543 * @memberof google.datastore.v1.RollbackRequest
6544 * @static
6545 * @param {Object.<string,*>} object Plain object
6546 * @returns {google.datastore.v1.RollbackRequest} RollbackRequest
6547 */
6548 RollbackRequest.fromObject = function fromObject(object) {
6549 if (object instanceof $root.google.datastore.v1.RollbackRequest)
6550 return object;
6551 var message = new $root.google.datastore.v1.RollbackRequest();
6552 if (object.projectId != null)
6553 message.projectId = String(object.projectId);
6554 if (object.transaction != null)
6555 if (typeof object.transaction === "string")
6556 $util.base64.decode(object.transaction, message.transaction = $util.newBuffer($util.base64.length(object.transaction)), 0);
6557 else if (object.transaction.length)
6558 message.transaction = object.transaction;
6559 return message;
6560 };
6561
6562 /**
6563 * Creates a plain object from a RollbackRequest message. Also converts values to other types if specified.
6564 * @function toObject
6565 * @memberof google.datastore.v1.RollbackRequest
6566 * @static
6567 * @param {google.datastore.v1.RollbackRequest} message RollbackRequest
6568 * @param {$protobuf.IConversionOptions} [options] Conversion options
6569 * @returns {Object.<string,*>} Plain object
6570 */
6571 RollbackRequest.toObject = function toObject(message, options) {
6572 if (!options)
6573 options = {};
6574 var object = {};
6575 if (options.defaults) {
6576 if (options.bytes === String)
6577 object.transaction = "";
6578 else {
6579 object.transaction = [];
6580 if (options.bytes !== Array)
6581 object.transaction = $util.newBuffer(object.transaction);
6582 }
6583 object.projectId = "";
6584 }
6585 if (message.transaction != null && message.hasOwnProperty("transaction"))
6586 object.transaction = options.bytes === String ? $util.base64.encode(message.transaction, 0, message.transaction.length) : options.bytes === Array ? Array.prototype.slice.call(message.transaction) : message.transaction;
6587 if (message.projectId != null && message.hasOwnProperty("projectId"))
6588 object.projectId = message.projectId;
6589 return object;
6590 };
6591
6592 /**
6593 * Converts this RollbackRequest to JSON.
6594 * @function toJSON
6595 * @memberof google.datastore.v1.RollbackRequest
6596 * @instance
6597 * @returns {Object.<string,*>} JSON object
6598 */
6599 RollbackRequest.prototype.toJSON = function toJSON() {
6600 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
6601 };
6602
6603 return RollbackRequest;
6604 })();
6605
6606 v1.RollbackResponse = (function() {
6607
6608 /**
6609 * Properties of a RollbackResponse.
6610 * @memberof google.datastore.v1
6611 * @interface IRollbackResponse
6612 */
6613
6614 /**
6615 * Constructs a new RollbackResponse.
6616 * @memberof google.datastore.v1
6617 * @classdesc Represents a RollbackResponse.
6618 * @implements IRollbackResponse
6619 * @constructor
6620 * @param {google.datastore.v1.IRollbackResponse=} [properties] Properties to set
6621 */
6622 function RollbackResponse(properties) {
6623 if (properties)
6624 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
6625 if (properties[keys[i]] != null)
6626 this[keys[i]] = properties[keys[i]];
6627 }
6628
6629 /**
6630 * Creates a new RollbackResponse instance using the specified properties.
6631 * @function create
6632 * @memberof google.datastore.v1.RollbackResponse
6633 * @static
6634 * @param {google.datastore.v1.IRollbackResponse=} [properties] Properties to set
6635 * @returns {google.datastore.v1.RollbackResponse} RollbackResponse instance
6636 */
6637 RollbackResponse.create = function create(properties) {
6638 return new RollbackResponse(properties);
6639 };
6640
6641 /**
6642 * Encodes the specified RollbackResponse message. Does not implicitly {@link google.datastore.v1.RollbackResponse.verify|verify} messages.
6643 * @function encode
6644 * @memberof google.datastore.v1.RollbackResponse
6645 * @static
6646 * @param {google.datastore.v1.IRollbackResponse} message RollbackResponse message or plain object to encode
6647 * @param {$protobuf.Writer} [writer] Writer to encode to
6648 * @returns {$protobuf.Writer} Writer
6649 */
6650 RollbackResponse.encode = function encode(message, writer) {
6651 if (!writer)
6652 writer = $Writer.create();
6653 return writer;
6654 };
6655
6656 /**
6657 * Encodes the specified RollbackResponse message, length delimited. Does not implicitly {@link google.datastore.v1.RollbackResponse.verify|verify} messages.
6658 * @function encodeDelimited
6659 * @memberof google.datastore.v1.RollbackResponse
6660 * @static
6661 * @param {google.datastore.v1.IRollbackResponse} message RollbackResponse message or plain object to encode
6662 * @param {$protobuf.Writer} [writer] Writer to encode to
6663 * @returns {$protobuf.Writer} Writer
6664 */
6665 RollbackResponse.encodeDelimited = function encodeDelimited(message, writer) {
6666 return this.encode(message, writer).ldelim();
6667 };
6668
6669 /**
6670 * Decodes a RollbackResponse message from the specified reader or buffer.
6671 * @function decode
6672 * @memberof google.datastore.v1.RollbackResponse
6673 * @static
6674 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6675 * @param {number} [length] Message length if known beforehand
6676 * @returns {google.datastore.v1.RollbackResponse} RollbackResponse
6677 * @throws {Error} If the payload is not a reader or valid buffer
6678 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6679 */
6680 RollbackResponse.decode = function decode(reader, length) {
6681 if (!(reader instanceof $Reader))
6682 reader = $Reader.create(reader);
6683 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.RollbackResponse();
6684 while (reader.pos < end) {
6685 var tag = reader.uint32();
6686 switch (tag >>> 3) {
6687 default:
6688 reader.skipType(tag & 7);
6689 break;
6690 }
6691 }
6692 return message;
6693 };
6694
6695 /**
6696 * Decodes a RollbackResponse message from the specified reader or buffer, length delimited.
6697 * @function decodeDelimited
6698 * @memberof google.datastore.v1.RollbackResponse
6699 * @static
6700 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6701 * @returns {google.datastore.v1.RollbackResponse} RollbackResponse
6702 * @throws {Error} If the payload is not a reader or valid buffer
6703 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6704 */
6705 RollbackResponse.decodeDelimited = function decodeDelimited(reader) {
6706 if (!(reader instanceof $Reader))
6707 reader = new $Reader(reader);
6708 return this.decode(reader, reader.uint32());
6709 };
6710
6711 /**
6712 * Verifies a RollbackResponse message.
6713 * @function verify
6714 * @memberof google.datastore.v1.RollbackResponse
6715 * @static
6716 * @param {Object.<string,*>} message Plain object to verify
6717 * @returns {string|null} `null` if valid, otherwise the reason why it is not
6718 */
6719 RollbackResponse.verify = function verify(message) {
6720 if (typeof message !== "object" || message === null)
6721 return "object expected";
6722 return null;
6723 };
6724
6725 /**
6726 * Creates a RollbackResponse message from a plain object. Also converts values to their respective internal types.
6727 * @function fromObject
6728 * @memberof google.datastore.v1.RollbackResponse
6729 * @static
6730 * @param {Object.<string,*>} object Plain object
6731 * @returns {google.datastore.v1.RollbackResponse} RollbackResponse
6732 */
6733 RollbackResponse.fromObject = function fromObject(object) {
6734 if (object instanceof $root.google.datastore.v1.RollbackResponse)
6735 return object;
6736 return new $root.google.datastore.v1.RollbackResponse();
6737 };
6738
6739 /**
6740 * Creates a plain object from a RollbackResponse message. Also converts values to other types if specified.
6741 * @function toObject
6742 * @memberof google.datastore.v1.RollbackResponse
6743 * @static
6744 * @param {google.datastore.v1.RollbackResponse} message RollbackResponse
6745 * @param {$protobuf.IConversionOptions} [options] Conversion options
6746 * @returns {Object.<string,*>} Plain object
6747 */
6748 RollbackResponse.toObject = function toObject() {
6749 return {};
6750 };
6751
6752 /**
6753 * Converts this RollbackResponse to JSON.
6754 * @function toJSON
6755 * @memberof google.datastore.v1.RollbackResponse
6756 * @instance
6757 * @returns {Object.<string,*>} JSON object
6758 */
6759 RollbackResponse.prototype.toJSON = function toJSON() {
6760 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
6761 };
6762
6763 return RollbackResponse;
6764 })();
6765
6766 v1.CommitRequest = (function() {
6767
6768 /**
6769 * Properties of a CommitRequest.
6770 * @memberof google.datastore.v1
6771 * @interface ICommitRequest
6772 * @property {string|null} [projectId] CommitRequest projectId
6773 * @property {google.datastore.v1.CommitRequest.Mode|null} [mode] CommitRequest mode
6774 * @property {Uint8Array|null} [transaction] CommitRequest transaction
6775 * @property {Array.<google.datastore.v1.IMutation>|null} [mutations] CommitRequest mutations
6776 */
6777
6778 /**
6779 * Constructs a new CommitRequest.
6780 * @memberof google.datastore.v1
6781 * @classdesc Represents a CommitRequest.
6782 * @implements ICommitRequest
6783 * @constructor
6784 * @param {google.datastore.v1.ICommitRequest=} [properties] Properties to set
6785 */
6786 function CommitRequest(properties) {
6787 this.mutations = [];
6788 if (properties)
6789 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
6790 if (properties[keys[i]] != null)
6791 this[keys[i]] = properties[keys[i]];
6792 }
6793
6794 /**
6795 * CommitRequest projectId.
6796 * @member {string} projectId
6797 * @memberof google.datastore.v1.CommitRequest
6798 * @instance
6799 */
6800 CommitRequest.prototype.projectId = "";
6801
6802 /**
6803 * CommitRequest mode.
6804 * @member {google.datastore.v1.CommitRequest.Mode} mode
6805 * @memberof google.datastore.v1.CommitRequest
6806 * @instance
6807 */
6808 CommitRequest.prototype.mode = 0;
6809
6810 /**
6811 * CommitRequest transaction.
6812 * @member {Uint8Array} transaction
6813 * @memberof google.datastore.v1.CommitRequest
6814 * @instance
6815 */
6816 CommitRequest.prototype.transaction = $util.newBuffer([]);
6817
6818 /**
6819 * CommitRequest mutations.
6820 * @member {Array.<google.datastore.v1.IMutation>} mutations
6821 * @memberof google.datastore.v1.CommitRequest
6822 * @instance
6823 */
6824 CommitRequest.prototype.mutations = $util.emptyArray;
6825
6826 // OneOf field names bound to virtual getters and setters
6827 var $oneOfFields;
6828
6829 /**
6830 * CommitRequest transactionSelector.
6831 * @member {"transaction"|undefined} transactionSelector
6832 * @memberof google.datastore.v1.CommitRequest
6833 * @instance
6834 */
6835 Object.defineProperty(CommitRequest.prototype, "transactionSelector", {
6836 get: $util.oneOfGetter($oneOfFields = ["transaction"]),
6837 set: $util.oneOfSetter($oneOfFields)
6838 });
6839
6840 /**
6841 * Creates a new CommitRequest instance using the specified properties.
6842 * @function create
6843 * @memberof google.datastore.v1.CommitRequest
6844 * @static
6845 * @param {google.datastore.v1.ICommitRequest=} [properties] Properties to set
6846 * @returns {google.datastore.v1.CommitRequest} CommitRequest instance
6847 */
6848 CommitRequest.create = function create(properties) {
6849 return new CommitRequest(properties);
6850 };
6851
6852 /**
6853 * Encodes the specified CommitRequest message. Does not implicitly {@link google.datastore.v1.CommitRequest.verify|verify} messages.
6854 * @function encode
6855 * @memberof google.datastore.v1.CommitRequest
6856 * @static
6857 * @param {google.datastore.v1.ICommitRequest} message CommitRequest message or plain object to encode
6858 * @param {$protobuf.Writer} [writer] Writer to encode to
6859 * @returns {$protobuf.Writer} Writer
6860 */
6861 CommitRequest.encode = function encode(message, writer) {
6862 if (!writer)
6863 writer = $Writer.create();
6864 if (message.transaction != null && Object.hasOwnProperty.call(message, "transaction"))
6865 writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.transaction);
6866 if (message.mode != null && Object.hasOwnProperty.call(message, "mode"))
6867 writer.uint32(/* id 5, wireType 0 =*/40).int32(message.mode);
6868 if (message.mutations != null && message.mutations.length)
6869 for (var i = 0; i < message.mutations.length; ++i)
6870 $root.google.datastore.v1.Mutation.encode(message.mutations[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
6871 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
6872 writer.uint32(/* id 8, wireType 2 =*/66).string(message.projectId);
6873 return writer;
6874 };
6875
6876 /**
6877 * Encodes the specified CommitRequest message, length delimited. Does not implicitly {@link google.datastore.v1.CommitRequest.verify|verify} messages.
6878 * @function encodeDelimited
6879 * @memberof google.datastore.v1.CommitRequest
6880 * @static
6881 * @param {google.datastore.v1.ICommitRequest} message CommitRequest message or plain object to encode
6882 * @param {$protobuf.Writer} [writer] Writer to encode to
6883 * @returns {$protobuf.Writer} Writer
6884 */
6885 CommitRequest.encodeDelimited = function encodeDelimited(message, writer) {
6886 return this.encode(message, writer).ldelim();
6887 };
6888
6889 /**
6890 * Decodes a CommitRequest message from the specified reader or buffer.
6891 * @function decode
6892 * @memberof google.datastore.v1.CommitRequest
6893 * @static
6894 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6895 * @param {number} [length] Message length if known beforehand
6896 * @returns {google.datastore.v1.CommitRequest} CommitRequest
6897 * @throws {Error} If the payload is not a reader or valid buffer
6898 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6899 */
6900 CommitRequest.decode = function decode(reader, length) {
6901 if (!(reader instanceof $Reader))
6902 reader = $Reader.create(reader);
6903 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.CommitRequest();
6904 while (reader.pos < end) {
6905 var tag = reader.uint32();
6906 switch (tag >>> 3) {
6907 case 8:
6908 message.projectId = reader.string();
6909 break;
6910 case 5:
6911 message.mode = reader.int32();
6912 break;
6913 case 1:
6914 message.transaction = reader.bytes();
6915 break;
6916 case 6:
6917 if (!(message.mutations && message.mutations.length))
6918 message.mutations = [];
6919 message.mutations.push($root.google.datastore.v1.Mutation.decode(reader, reader.uint32()));
6920 break;
6921 default:
6922 reader.skipType(tag & 7);
6923 break;
6924 }
6925 }
6926 return message;
6927 };
6928
6929 /**
6930 * Decodes a CommitRequest message from the specified reader or buffer, length delimited.
6931 * @function decodeDelimited
6932 * @memberof google.datastore.v1.CommitRequest
6933 * @static
6934 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
6935 * @returns {google.datastore.v1.CommitRequest} CommitRequest
6936 * @throws {Error} If the payload is not a reader or valid buffer
6937 * @throws {$protobuf.util.ProtocolError} If required fields are missing
6938 */
6939 CommitRequest.decodeDelimited = function decodeDelimited(reader) {
6940 if (!(reader instanceof $Reader))
6941 reader = new $Reader(reader);
6942 return this.decode(reader, reader.uint32());
6943 };
6944
6945 /**
6946 * Verifies a CommitRequest message.
6947 * @function verify
6948 * @memberof google.datastore.v1.CommitRequest
6949 * @static
6950 * @param {Object.<string,*>} message Plain object to verify
6951 * @returns {string|null} `null` if valid, otherwise the reason why it is not
6952 */
6953 CommitRequest.verify = function verify(message) {
6954 if (typeof message !== "object" || message === null)
6955 return "object expected";
6956 var properties = {};
6957 if (message.projectId != null && message.hasOwnProperty("projectId"))
6958 if (!$util.isString(message.projectId))
6959 return "projectId: string expected";
6960 if (message.mode != null && message.hasOwnProperty("mode"))
6961 switch (message.mode) {
6962 default:
6963 return "mode: enum value expected";
6964 case 0:
6965 case 1:
6966 case 2:
6967 break;
6968 }
6969 if (message.transaction != null && message.hasOwnProperty("transaction")) {
6970 properties.transactionSelector = 1;
6971 if (!(message.transaction && typeof message.transaction.length === "number" || $util.isString(message.transaction)))
6972 return "transaction: buffer expected";
6973 }
6974 if (message.mutations != null && message.hasOwnProperty("mutations")) {
6975 if (!Array.isArray(message.mutations))
6976 return "mutations: array expected";
6977 for (var i = 0; i < message.mutations.length; ++i) {
6978 var error = $root.google.datastore.v1.Mutation.verify(message.mutations[i]);
6979 if (error)
6980 return "mutations." + error;
6981 }
6982 }
6983 return null;
6984 };
6985
6986 /**
6987 * Creates a CommitRequest message from a plain object. Also converts values to their respective internal types.
6988 * @function fromObject
6989 * @memberof google.datastore.v1.CommitRequest
6990 * @static
6991 * @param {Object.<string,*>} object Plain object
6992 * @returns {google.datastore.v1.CommitRequest} CommitRequest
6993 */
6994 CommitRequest.fromObject = function fromObject(object) {
6995 if (object instanceof $root.google.datastore.v1.CommitRequest)
6996 return object;
6997 var message = new $root.google.datastore.v1.CommitRequest();
6998 if (object.projectId != null)
6999 message.projectId = String(object.projectId);
7000 switch (object.mode) {
7001 case "MODE_UNSPECIFIED":
7002 case 0:
7003 message.mode = 0;
7004 break;
7005 case "TRANSACTIONAL":
7006 case 1:
7007 message.mode = 1;
7008 break;
7009 case "NON_TRANSACTIONAL":
7010 case 2:
7011 message.mode = 2;
7012 break;
7013 }
7014 if (object.transaction != null)
7015 if (typeof object.transaction === "string")
7016 $util.base64.decode(object.transaction, message.transaction = $util.newBuffer($util.base64.length(object.transaction)), 0);
7017 else if (object.transaction.length)
7018 message.transaction = object.transaction;
7019 if (object.mutations) {
7020 if (!Array.isArray(object.mutations))
7021 throw TypeError(".google.datastore.v1.CommitRequest.mutations: array expected");
7022 message.mutations = [];
7023 for (var i = 0; i < object.mutations.length; ++i) {
7024 if (typeof object.mutations[i] !== "object")
7025 throw TypeError(".google.datastore.v1.CommitRequest.mutations: object expected");
7026 message.mutations[i] = $root.google.datastore.v1.Mutation.fromObject(object.mutations[i]);
7027 }
7028 }
7029 return message;
7030 };
7031
7032 /**
7033 * Creates a plain object from a CommitRequest message. Also converts values to other types if specified.
7034 * @function toObject
7035 * @memberof google.datastore.v1.CommitRequest
7036 * @static
7037 * @param {google.datastore.v1.CommitRequest} message CommitRequest
7038 * @param {$protobuf.IConversionOptions} [options] Conversion options
7039 * @returns {Object.<string,*>} Plain object
7040 */
7041 CommitRequest.toObject = function toObject(message, options) {
7042 if (!options)
7043 options = {};
7044 var object = {};
7045 if (options.arrays || options.defaults)
7046 object.mutations = [];
7047 if (options.defaults) {
7048 object.mode = options.enums === String ? "MODE_UNSPECIFIED" : 0;
7049 object.projectId = "";
7050 }
7051 if (message.transaction != null && message.hasOwnProperty("transaction")) {
7052 object.transaction = options.bytes === String ? $util.base64.encode(message.transaction, 0, message.transaction.length) : options.bytes === Array ? Array.prototype.slice.call(message.transaction) : message.transaction;
7053 if (options.oneofs)
7054 object.transactionSelector = "transaction";
7055 }
7056 if (message.mode != null && message.hasOwnProperty("mode"))
7057 object.mode = options.enums === String ? $root.google.datastore.v1.CommitRequest.Mode[message.mode] : message.mode;
7058 if (message.mutations && message.mutations.length) {
7059 object.mutations = [];
7060 for (var j = 0; j < message.mutations.length; ++j)
7061 object.mutations[j] = $root.google.datastore.v1.Mutation.toObject(message.mutations[j], options);
7062 }
7063 if (message.projectId != null && message.hasOwnProperty("projectId"))
7064 object.projectId = message.projectId;
7065 return object;
7066 };
7067
7068 /**
7069 * Converts this CommitRequest to JSON.
7070 * @function toJSON
7071 * @memberof google.datastore.v1.CommitRequest
7072 * @instance
7073 * @returns {Object.<string,*>} JSON object
7074 */
7075 CommitRequest.prototype.toJSON = function toJSON() {
7076 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
7077 };
7078
7079 /**
7080 * Mode enum.
7081 * @name google.datastore.v1.CommitRequest.Mode
7082 * @enum {number}
7083 * @property {number} MODE_UNSPECIFIED=0 MODE_UNSPECIFIED value
7084 * @property {number} TRANSACTIONAL=1 TRANSACTIONAL value
7085 * @property {number} NON_TRANSACTIONAL=2 NON_TRANSACTIONAL value
7086 */
7087 CommitRequest.Mode = (function() {
7088 var valuesById = {}, values = Object.create(valuesById);
7089 values[valuesById[0] = "MODE_UNSPECIFIED"] = 0;
7090 values[valuesById[1] = "TRANSACTIONAL"] = 1;
7091 values[valuesById[2] = "NON_TRANSACTIONAL"] = 2;
7092 return values;
7093 })();
7094
7095 return CommitRequest;
7096 })();
7097
7098 v1.CommitResponse = (function() {
7099
7100 /**
7101 * Properties of a CommitResponse.
7102 * @memberof google.datastore.v1
7103 * @interface ICommitResponse
7104 * @property {Array.<google.datastore.v1.IMutationResult>|null} [mutationResults] CommitResponse mutationResults
7105 * @property {number|null} [indexUpdates] CommitResponse indexUpdates
7106 */
7107
7108 /**
7109 * Constructs a new CommitResponse.
7110 * @memberof google.datastore.v1
7111 * @classdesc Represents a CommitResponse.
7112 * @implements ICommitResponse
7113 * @constructor
7114 * @param {google.datastore.v1.ICommitResponse=} [properties] Properties to set
7115 */
7116 function CommitResponse(properties) {
7117 this.mutationResults = [];
7118 if (properties)
7119 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
7120 if (properties[keys[i]] != null)
7121 this[keys[i]] = properties[keys[i]];
7122 }
7123
7124 /**
7125 * CommitResponse mutationResults.
7126 * @member {Array.<google.datastore.v1.IMutationResult>} mutationResults
7127 * @memberof google.datastore.v1.CommitResponse
7128 * @instance
7129 */
7130 CommitResponse.prototype.mutationResults = $util.emptyArray;
7131
7132 /**
7133 * CommitResponse indexUpdates.
7134 * @member {number} indexUpdates
7135 * @memberof google.datastore.v1.CommitResponse
7136 * @instance
7137 */
7138 CommitResponse.prototype.indexUpdates = 0;
7139
7140 /**
7141 * Creates a new CommitResponse instance using the specified properties.
7142 * @function create
7143 * @memberof google.datastore.v1.CommitResponse
7144 * @static
7145 * @param {google.datastore.v1.ICommitResponse=} [properties] Properties to set
7146 * @returns {google.datastore.v1.CommitResponse} CommitResponse instance
7147 */
7148 CommitResponse.create = function create(properties) {
7149 return new CommitResponse(properties);
7150 };
7151
7152 /**
7153 * Encodes the specified CommitResponse message. Does not implicitly {@link google.datastore.v1.CommitResponse.verify|verify} messages.
7154 * @function encode
7155 * @memberof google.datastore.v1.CommitResponse
7156 * @static
7157 * @param {google.datastore.v1.ICommitResponse} message CommitResponse message or plain object to encode
7158 * @param {$protobuf.Writer} [writer] Writer to encode to
7159 * @returns {$protobuf.Writer} Writer
7160 */
7161 CommitResponse.encode = function encode(message, writer) {
7162 if (!writer)
7163 writer = $Writer.create();
7164 if (message.mutationResults != null && message.mutationResults.length)
7165 for (var i = 0; i < message.mutationResults.length; ++i)
7166 $root.google.datastore.v1.MutationResult.encode(message.mutationResults[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
7167 if (message.indexUpdates != null && Object.hasOwnProperty.call(message, "indexUpdates"))
7168 writer.uint32(/* id 4, wireType 0 =*/32).int32(message.indexUpdates);
7169 return writer;
7170 };
7171
7172 /**
7173 * Encodes the specified CommitResponse message, length delimited. Does not implicitly {@link google.datastore.v1.CommitResponse.verify|verify} messages.
7174 * @function encodeDelimited
7175 * @memberof google.datastore.v1.CommitResponse
7176 * @static
7177 * @param {google.datastore.v1.ICommitResponse} message CommitResponse message or plain object to encode
7178 * @param {$protobuf.Writer} [writer] Writer to encode to
7179 * @returns {$protobuf.Writer} Writer
7180 */
7181 CommitResponse.encodeDelimited = function encodeDelimited(message, writer) {
7182 return this.encode(message, writer).ldelim();
7183 };
7184
7185 /**
7186 * Decodes a CommitResponse message from the specified reader or buffer.
7187 * @function decode
7188 * @memberof google.datastore.v1.CommitResponse
7189 * @static
7190 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7191 * @param {number} [length] Message length if known beforehand
7192 * @returns {google.datastore.v1.CommitResponse} CommitResponse
7193 * @throws {Error} If the payload is not a reader or valid buffer
7194 * @throws {$protobuf.util.ProtocolError} If required fields are missing
7195 */
7196 CommitResponse.decode = function decode(reader, length) {
7197 if (!(reader instanceof $Reader))
7198 reader = $Reader.create(reader);
7199 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.CommitResponse();
7200 while (reader.pos < end) {
7201 var tag = reader.uint32();
7202 switch (tag >>> 3) {
7203 case 3:
7204 if (!(message.mutationResults && message.mutationResults.length))
7205 message.mutationResults = [];
7206 message.mutationResults.push($root.google.datastore.v1.MutationResult.decode(reader, reader.uint32()));
7207 break;
7208 case 4:
7209 message.indexUpdates = reader.int32();
7210 break;
7211 default:
7212 reader.skipType(tag & 7);
7213 break;
7214 }
7215 }
7216 return message;
7217 };
7218
7219 /**
7220 * Decodes a CommitResponse message from the specified reader or buffer, length delimited.
7221 * @function decodeDelimited
7222 * @memberof google.datastore.v1.CommitResponse
7223 * @static
7224 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7225 * @returns {google.datastore.v1.CommitResponse} CommitResponse
7226 * @throws {Error} If the payload is not a reader or valid buffer
7227 * @throws {$protobuf.util.ProtocolError} If required fields are missing
7228 */
7229 CommitResponse.decodeDelimited = function decodeDelimited(reader) {
7230 if (!(reader instanceof $Reader))
7231 reader = new $Reader(reader);
7232 return this.decode(reader, reader.uint32());
7233 };
7234
7235 /**
7236 * Verifies a CommitResponse message.
7237 * @function verify
7238 * @memberof google.datastore.v1.CommitResponse
7239 * @static
7240 * @param {Object.<string,*>} message Plain object to verify
7241 * @returns {string|null} `null` if valid, otherwise the reason why it is not
7242 */
7243 CommitResponse.verify = function verify(message) {
7244 if (typeof message !== "object" || message === null)
7245 return "object expected";
7246 if (message.mutationResults != null && message.hasOwnProperty("mutationResults")) {
7247 if (!Array.isArray(message.mutationResults))
7248 return "mutationResults: array expected";
7249 for (var i = 0; i < message.mutationResults.length; ++i) {
7250 var error = $root.google.datastore.v1.MutationResult.verify(message.mutationResults[i]);
7251 if (error)
7252 return "mutationResults." + error;
7253 }
7254 }
7255 if (message.indexUpdates != null && message.hasOwnProperty("indexUpdates"))
7256 if (!$util.isInteger(message.indexUpdates))
7257 return "indexUpdates: integer expected";
7258 return null;
7259 };
7260
7261 /**
7262 * Creates a CommitResponse message from a plain object. Also converts values to their respective internal types.
7263 * @function fromObject
7264 * @memberof google.datastore.v1.CommitResponse
7265 * @static
7266 * @param {Object.<string,*>} object Plain object
7267 * @returns {google.datastore.v1.CommitResponse} CommitResponse
7268 */
7269 CommitResponse.fromObject = function fromObject(object) {
7270 if (object instanceof $root.google.datastore.v1.CommitResponse)
7271 return object;
7272 var message = new $root.google.datastore.v1.CommitResponse();
7273 if (object.mutationResults) {
7274 if (!Array.isArray(object.mutationResults))
7275 throw TypeError(".google.datastore.v1.CommitResponse.mutationResults: array expected");
7276 message.mutationResults = [];
7277 for (var i = 0; i < object.mutationResults.length; ++i) {
7278 if (typeof object.mutationResults[i] !== "object")
7279 throw TypeError(".google.datastore.v1.CommitResponse.mutationResults: object expected");
7280 message.mutationResults[i] = $root.google.datastore.v1.MutationResult.fromObject(object.mutationResults[i]);
7281 }
7282 }
7283 if (object.indexUpdates != null)
7284 message.indexUpdates = object.indexUpdates | 0;
7285 return message;
7286 };
7287
7288 /**
7289 * Creates a plain object from a CommitResponse message. Also converts values to other types if specified.
7290 * @function toObject
7291 * @memberof google.datastore.v1.CommitResponse
7292 * @static
7293 * @param {google.datastore.v1.CommitResponse} message CommitResponse
7294 * @param {$protobuf.IConversionOptions} [options] Conversion options
7295 * @returns {Object.<string,*>} Plain object
7296 */
7297 CommitResponse.toObject = function toObject(message, options) {
7298 if (!options)
7299 options = {};
7300 var object = {};
7301 if (options.arrays || options.defaults)
7302 object.mutationResults = [];
7303 if (options.defaults)
7304 object.indexUpdates = 0;
7305 if (message.mutationResults && message.mutationResults.length) {
7306 object.mutationResults = [];
7307 for (var j = 0; j < message.mutationResults.length; ++j)
7308 object.mutationResults[j] = $root.google.datastore.v1.MutationResult.toObject(message.mutationResults[j], options);
7309 }
7310 if (message.indexUpdates != null && message.hasOwnProperty("indexUpdates"))
7311 object.indexUpdates = message.indexUpdates;
7312 return object;
7313 };
7314
7315 /**
7316 * Converts this CommitResponse to JSON.
7317 * @function toJSON
7318 * @memberof google.datastore.v1.CommitResponse
7319 * @instance
7320 * @returns {Object.<string,*>} JSON object
7321 */
7322 CommitResponse.prototype.toJSON = function toJSON() {
7323 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
7324 };
7325
7326 return CommitResponse;
7327 })();
7328
7329 v1.AllocateIdsRequest = (function() {
7330
7331 /**
7332 * Properties of an AllocateIdsRequest.
7333 * @memberof google.datastore.v1
7334 * @interface IAllocateIdsRequest
7335 * @property {string|null} [projectId] AllocateIdsRequest projectId
7336 * @property {Array.<google.datastore.v1.IKey>|null} [keys] AllocateIdsRequest keys
7337 */
7338
7339 /**
7340 * Constructs a new AllocateIdsRequest.
7341 * @memberof google.datastore.v1
7342 * @classdesc Represents an AllocateIdsRequest.
7343 * @implements IAllocateIdsRequest
7344 * @constructor
7345 * @param {google.datastore.v1.IAllocateIdsRequest=} [properties] Properties to set
7346 */
7347 function AllocateIdsRequest(properties) {
7348 this.keys = [];
7349 if (properties)
7350 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
7351 if (properties[keys[i]] != null)
7352 this[keys[i]] = properties[keys[i]];
7353 }
7354
7355 /**
7356 * AllocateIdsRequest projectId.
7357 * @member {string} projectId
7358 * @memberof google.datastore.v1.AllocateIdsRequest
7359 * @instance
7360 */
7361 AllocateIdsRequest.prototype.projectId = "";
7362
7363 /**
7364 * AllocateIdsRequest keys.
7365 * @member {Array.<google.datastore.v1.IKey>} keys
7366 * @memberof google.datastore.v1.AllocateIdsRequest
7367 * @instance
7368 */
7369 AllocateIdsRequest.prototype.keys = $util.emptyArray;
7370
7371 /**
7372 * Creates a new AllocateIdsRequest instance using the specified properties.
7373 * @function create
7374 * @memberof google.datastore.v1.AllocateIdsRequest
7375 * @static
7376 * @param {google.datastore.v1.IAllocateIdsRequest=} [properties] Properties to set
7377 * @returns {google.datastore.v1.AllocateIdsRequest} AllocateIdsRequest instance
7378 */
7379 AllocateIdsRequest.create = function create(properties) {
7380 return new AllocateIdsRequest(properties);
7381 };
7382
7383 /**
7384 * Encodes the specified AllocateIdsRequest message. Does not implicitly {@link google.datastore.v1.AllocateIdsRequest.verify|verify} messages.
7385 * @function encode
7386 * @memberof google.datastore.v1.AllocateIdsRequest
7387 * @static
7388 * @param {google.datastore.v1.IAllocateIdsRequest} message AllocateIdsRequest message or plain object to encode
7389 * @param {$protobuf.Writer} [writer] Writer to encode to
7390 * @returns {$protobuf.Writer} Writer
7391 */
7392 AllocateIdsRequest.encode = function encode(message, writer) {
7393 if (!writer)
7394 writer = $Writer.create();
7395 if (message.keys != null && message.keys.length)
7396 for (var i = 0; i < message.keys.length; ++i)
7397 $root.google.datastore.v1.Key.encode(message.keys[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
7398 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
7399 writer.uint32(/* id 8, wireType 2 =*/66).string(message.projectId);
7400 return writer;
7401 };
7402
7403 /**
7404 * Encodes the specified AllocateIdsRequest message, length delimited. Does not implicitly {@link google.datastore.v1.AllocateIdsRequest.verify|verify} messages.
7405 * @function encodeDelimited
7406 * @memberof google.datastore.v1.AllocateIdsRequest
7407 * @static
7408 * @param {google.datastore.v1.IAllocateIdsRequest} message AllocateIdsRequest message or plain object to encode
7409 * @param {$protobuf.Writer} [writer] Writer to encode to
7410 * @returns {$protobuf.Writer} Writer
7411 */
7412 AllocateIdsRequest.encodeDelimited = function encodeDelimited(message, writer) {
7413 return this.encode(message, writer).ldelim();
7414 };
7415
7416 /**
7417 * Decodes an AllocateIdsRequest message from the specified reader or buffer.
7418 * @function decode
7419 * @memberof google.datastore.v1.AllocateIdsRequest
7420 * @static
7421 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7422 * @param {number} [length] Message length if known beforehand
7423 * @returns {google.datastore.v1.AllocateIdsRequest} AllocateIdsRequest
7424 * @throws {Error} If the payload is not a reader or valid buffer
7425 * @throws {$protobuf.util.ProtocolError} If required fields are missing
7426 */
7427 AllocateIdsRequest.decode = function decode(reader, length) {
7428 if (!(reader instanceof $Reader))
7429 reader = $Reader.create(reader);
7430 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.AllocateIdsRequest();
7431 while (reader.pos < end) {
7432 var tag = reader.uint32();
7433 switch (tag >>> 3) {
7434 case 8:
7435 message.projectId = reader.string();
7436 break;
7437 case 1:
7438 if (!(message.keys && message.keys.length))
7439 message.keys = [];
7440 message.keys.push($root.google.datastore.v1.Key.decode(reader, reader.uint32()));
7441 break;
7442 default:
7443 reader.skipType(tag & 7);
7444 break;
7445 }
7446 }
7447 return message;
7448 };
7449
7450 /**
7451 * Decodes an AllocateIdsRequest message from the specified reader or buffer, length delimited.
7452 * @function decodeDelimited
7453 * @memberof google.datastore.v1.AllocateIdsRequest
7454 * @static
7455 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7456 * @returns {google.datastore.v1.AllocateIdsRequest} AllocateIdsRequest
7457 * @throws {Error} If the payload is not a reader or valid buffer
7458 * @throws {$protobuf.util.ProtocolError} If required fields are missing
7459 */
7460 AllocateIdsRequest.decodeDelimited = function decodeDelimited(reader) {
7461 if (!(reader instanceof $Reader))
7462 reader = new $Reader(reader);
7463 return this.decode(reader, reader.uint32());
7464 };
7465
7466 /**
7467 * Verifies an AllocateIdsRequest message.
7468 * @function verify
7469 * @memberof google.datastore.v1.AllocateIdsRequest
7470 * @static
7471 * @param {Object.<string,*>} message Plain object to verify
7472 * @returns {string|null} `null` if valid, otherwise the reason why it is not
7473 */
7474 AllocateIdsRequest.verify = function verify(message) {
7475 if (typeof message !== "object" || message === null)
7476 return "object expected";
7477 if (message.projectId != null && message.hasOwnProperty("projectId"))
7478 if (!$util.isString(message.projectId))
7479 return "projectId: string expected";
7480 if (message.keys != null && message.hasOwnProperty("keys")) {
7481 if (!Array.isArray(message.keys))
7482 return "keys: array expected";
7483 for (var i = 0; i < message.keys.length; ++i) {
7484 var error = $root.google.datastore.v1.Key.verify(message.keys[i]);
7485 if (error)
7486 return "keys." + error;
7487 }
7488 }
7489 return null;
7490 };
7491
7492 /**
7493 * Creates an AllocateIdsRequest message from a plain object. Also converts values to their respective internal types.
7494 * @function fromObject
7495 * @memberof google.datastore.v1.AllocateIdsRequest
7496 * @static
7497 * @param {Object.<string,*>} object Plain object
7498 * @returns {google.datastore.v1.AllocateIdsRequest} AllocateIdsRequest
7499 */
7500 AllocateIdsRequest.fromObject = function fromObject(object) {
7501 if (object instanceof $root.google.datastore.v1.AllocateIdsRequest)
7502 return object;
7503 var message = new $root.google.datastore.v1.AllocateIdsRequest();
7504 if (object.projectId != null)
7505 message.projectId = String(object.projectId);
7506 if (object.keys) {
7507 if (!Array.isArray(object.keys))
7508 throw TypeError(".google.datastore.v1.AllocateIdsRequest.keys: array expected");
7509 message.keys = [];
7510 for (var i = 0; i < object.keys.length; ++i) {
7511 if (typeof object.keys[i] !== "object")
7512 throw TypeError(".google.datastore.v1.AllocateIdsRequest.keys: object expected");
7513 message.keys[i] = $root.google.datastore.v1.Key.fromObject(object.keys[i]);
7514 }
7515 }
7516 return message;
7517 };
7518
7519 /**
7520 * Creates a plain object from an AllocateIdsRequest message. Also converts values to other types if specified.
7521 * @function toObject
7522 * @memberof google.datastore.v1.AllocateIdsRequest
7523 * @static
7524 * @param {google.datastore.v1.AllocateIdsRequest} message AllocateIdsRequest
7525 * @param {$protobuf.IConversionOptions} [options] Conversion options
7526 * @returns {Object.<string,*>} Plain object
7527 */
7528 AllocateIdsRequest.toObject = function toObject(message, options) {
7529 if (!options)
7530 options = {};
7531 var object = {};
7532 if (options.arrays || options.defaults)
7533 object.keys = [];
7534 if (options.defaults)
7535 object.projectId = "";
7536 if (message.keys && message.keys.length) {
7537 object.keys = [];
7538 for (var j = 0; j < message.keys.length; ++j)
7539 object.keys[j] = $root.google.datastore.v1.Key.toObject(message.keys[j], options);
7540 }
7541 if (message.projectId != null && message.hasOwnProperty("projectId"))
7542 object.projectId = message.projectId;
7543 return object;
7544 };
7545
7546 /**
7547 * Converts this AllocateIdsRequest to JSON.
7548 * @function toJSON
7549 * @memberof google.datastore.v1.AllocateIdsRequest
7550 * @instance
7551 * @returns {Object.<string,*>} JSON object
7552 */
7553 AllocateIdsRequest.prototype.toJSON = function toJSON() {
7554 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
7555 };
7556
7557 return AllocateIdsRequest;
7558 })();
7559
7560 v1.AllocateIdsResponse = (function() {
7561
7562 /**
7563 * Properties of an AllocateIdsResponse.
7564 * @memberof google.datastore.v1
7565 * @interface IAllocateIdsResponse
7566 * @property {Array.<google.datastore.v1.IKey>|null} [keys] AllocateIdsResponse keys
7567 */
7568
7569 /**
7570 * Constructs a new AllocateIdsResponse.
7571 * @memberof google.datastore.v1
7572 * @classdesc Represents an AllocateIdsResponse.
7573 * @implements IAllocateIdsResponse
7574 * @constructor
7575 * @param {google.datastore.v1.IAllocateIdsResponse=} [properties] Properties to set
7576 */
7577 function AllocateIdsResponse(properties) {
7578 this.keys = [];
7579 if (properties)
7580 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
7581 if (properties[keys[i]] != null)
7582 this[keys[i]] = properties[keys[i]];
7583 }
7584
7585 /**
7586 * AllocateIdsResponse keys.
7587 * @member {Array.<google.datastore.v1.IKey>} keys
7588 * @memberof google.datastore.v1.AllocateIdsResponse
7589 * @instance
7590 */
7591 AllocateIdsResponse.prototype.keys = $util.emptyArray;
7592
7593 /**
7594 * Creates a new AllocateIdsResponse instance using the specified properties.
7595 * @function create
7596 * @memberof google.datastore.v1.AllocateIdsResponse
7597 * @static
7598 * @param {google.datastore.v1.IAllocateIdsResponse=} [properties] Properties to set
7599 * @returns {google.datastore.v1.AllocateIdsResponse} AllocateIdsResponse instance
7600 */
7601 AllocateIdsResponse.create = function create(properties) {
7602 return new AllocateIdsResponse(properties);
7603 };
7604
7605 /**
7606 * Encodes the specified AllocateIdsResponse message. Does not implicitly {@link google.datastore.v1.AllocateIdsResponse.verify|verify} messages.
7607 * @function encode
7608 * @memberof google.datastore.v1.AllocateIdsResponse
7609 * @static
7610 * @param {google.datastore.v1.IAllocateIdsResponse} message AllocateIdsResponse message or plain object to encode
7611 * @param {$protobuf.Writer} [writer] Writer to encode to
7612 * @returns {$protobuf.Writer} Writer
7613 */
7614 AllocateIdsResponse.encode = function encode(message, writer) {
7615 if (!writer)
7616 writer = $Writer.create();
7617 if (message.keys != null && message.keys.length)
7618 for (var i = 0; i < message.keys.length; ++i)
7619 $root.google.datastore.v1.Key.encode(message.keys[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
7620 return writer;
7621 };
7622
7623 /**
7624 * Encodes the specified AllocateIdsResponse message, length delimited. Does not implicitly {@link google.datastore.v1.AllocateIdsResponse.verify|verify} messages.
7625 * @function encodeDelimited
7626 * @memberof google.datastore.v1.AllocateIdsResponse
7627 * @static
7628 * @param {google.datastore.v1.IAllocateIdsResponse} message AllocateIdsResponse message or plain object to encode
7629 * @param {$protobuf.Writer} [writer] Writer to encode to
7630 * @returns {$protobuf.Writer} Writer
7631 */
7632 AllocateIdsResponse.encodeDelimited = function encodeDelimited(message, writer) {
7633 return this.encode(message, writer).ldelim();
7634 };
7635
7636 /**
7637 * Decodes an AllocateIdsResponse message from the specified reader or buffer.
7638 * @function decode
7639 * @memberof google.datastore.v1.AllocateIdsResponse
7640 * @static
7641 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7642 * @param {number} [length] Message length if known beforehand
7643 * @returns {google.datastore.v1.AllocateIdsResponse} AllocateIdsResponse
7644 * @throws {Error} If the payload is not a reader or valid buffer
7645 * @throws {$protobuf.util.ProtocolError} If required fields are missing
7646 */
7647 AllocateIdsResponse.decode = function decode(reader, length) {
7648 if (!(reader instanceof $Reader))
7649 reader = $Reader.create(reader);
7650 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.AllocateIdsResponse();
7651 while (reader.pos < end) {
7652 var tag = reader.uint32();
7653 switch (tag >>> 3) {
7654 case 1:
7655 if (!(message.keys && message.keys.length))
7656 message.keys = [];
7657 message.keys.push($root.google.datastore.v1.Key.decode(reader, reader.uint32()));
7658 break;
7659 default:
7660 reader.skipType(tag & 7);
7661 break;
7662 }
7663 }
7664 return message;
7665 };
7666
7667 /**
7668 * Decodes an AllocateIdsResponse message from the specified reader or buffer, length delimited.
7669 * @function decodeDelimited
7670 * @memberof google.datastore.v1.AllocateIdsResponse
7671 * @static
7672 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7673 * @returns {google.datastore.v1.AllocateIdsResponse} AllocateIdsResponse
7674 * @throws {Error} If the payload is not a reader or valid buffer
7675 * @throws {$protobuf.util.ProtocolError} If required fields are missing
7676 */
7677 AllocateIdsResponse.decodeDelimited = function decodeDelimited(reader) {
7678 if (!(reader instanceof $Reader))
7679 reader = new $Reader(reader);
7680 return this.decode(reader, reader.uint32());
7681 };
7682
7683 /**
7684 * Verifies an AllocateIdsResponse message.
7685 * @function verify
7686 * @memberof google.datastore.v1.AllocateIdsResponse
7687 * @static
7688 * @param {Object.<string,*>} message Plain object to verify
7689 * @returns {string|null} `null` if valid, otherwise the reason why it is not
7690 */
7691 AllocateIdsResponse.verify = function verify(message) {
7692 if (typeof message !== "object" || message === null)
7693 return "object expected";
7694 if (message.keys != null && message.hasOwnProperty("keys")) {
7695 if (!Array.isArray(message.keys))
7696 return "keys: array expected";
7697 for (var i = 0; i < message.keys.length; ++i) {
7698 var error = $root.google.datastore.v1.Key.verify(message.keys[i]);
7699 if (error)
7700 return "keys." + error;
7701 }
7702 }
7703 return null;
7704 };
7705
7706 /**
7707 * Creates an AllocateIdsResponse message from a plain object. Also converts values to their respective internal types.
7708 * @function fromObject
7709 * @memberof google.datastore.v1.AllocateIdsResponse
7710 * @static
7711 * @param {Object.<string,*>} object Plain object
7712 * @returns {google.datastore.v1.AllocateIdsResponse} AllocateIdsResponse
7713 */
7714 AllocateIdsResponse.fromObject = function fromObject(object) {
7715 if (object instanceof $root.google.datastore.v1.AllocateIdsResponse)
7716 return object;
7717 var message = new $root.google.datastore.v1.AllocateIdsResponse();
7718 if (object.keys) {
7719 if (!Array.isArray(object.keys))
7720 throw TypeError(".google.datastore.v1.AllocateIdsResponse.keys: array expected");
7721 message.keys = [];
7722 for (var i = 0; i < object.keys.length; ++i) {
7723 if (typeof object.keys[i] !== "object")
7724 throw TypeError(".google.datastore.v1.AllocateIdsResponse.keys: object expected");
7725 message.keys[i] = $root.google.datastore.v1.Key.fromObject(object.keys[i]);
7726 }
7727 }
7728 return message;
7729 };
7730
7731 /**
7732 * Creates a plain object from an AllocateIdsResponse message. Also converts values to other types if specified.
7733 * @function toObject
7734 * @memberof google.datastore.v1.AllocateIdsResponse
7735 * @static
7736 * @param {google.datastore.v1.AllocateIdsResponse} message AllocateIdsResponse
7737 * @param {$protobuf.IConversionOptions} [options] Conversion options
7738 * @returns {Object.<string,*>} Plain object
7739 */
7740 AllocateIdsResponse.toObject = function toObject(message, options) {
7741 if (!options)
7742 options = {};
7743 var object = {};
7744 if (options.arrays || options.defaults)
7745 object.keys = [];
7746 if (message.keys && message.keys.length) {
7747 object.keys = [];
7748 for (var j = 0; j < message.keys.length; ++j)
7749 object.keys[j] = $root.google.datastore.v1.Key.toObject(message.keys[j], options);
7750 }
7751 return object;
7752 };
7753
7754 /**
7755 * Converts this AllocateIdsResponse to JSON.
7756 * @function toJSON
7757 * @memberof google.datastore.v1.AllocateIdsResponse
7758 * @instance
7759 * @returns {Object.<string,*>} JSON object
7760 */
7761 AllocateIdsResponse.prototype.toJSON = function toJSON() {
7762 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
7763 };
7764
7765 return AllocateIdsResponse;
7766 })();
7767
7768 v1.ReserveIdsRequest = (function() {
7769
7770 /**
7771 * Properties of a ReserveIdsRequest.
7772 * @memberof google.datastore.v1
7773 * @interface IReserveIdsRequest
7774 * @property {string|null} [projectId] ReserveIdsRequest projectId
7775 * @property {string|null} [databaseId] ReserveIdsRequest databaseId
7776 * @property {Array.<google.datastore.v1.IKey>|null} [keys] ReserveIdsRequest keys
7777 */
7778
7779 /**
7780 * Constructs a new ReserveIdsRequest.
7781 * @memberof google.datastore.v1
7782 * @classdesc Represents a ReserveIdsRequest.
7783 * @implements IReserveIdsRequest
7784 * @constructor
7785 * @param {google.datastore.v1.IReserveIdsRequest=} [properties] Properties to set
7786 */
7787 function ReserveIdsRequest(properties) {
7788 this.keys = [];
7789 if (properties)
7790 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
7791 if (properties[keys[i]] != null)
7792 this[keys[i]] = properties[keys[i]];
7793 }
7794
7795 /**
7796 * ReserveIdsRequest projectId.
7797 * @member {string} projectId
7798 * @memberof google.datastore.v1.ReserveIdsRequest
7799 * @instance
7800 */
7801 ReserveIdsRequest.prototype.projectId = "";
7802
7803 /**
7804 * ReserveIdsRequest databaseId.
7805 * @member {string} databaseId
7806 * @memberof google.datastore.v1.ReserveIdsRequest
7807 * @instance
7808 */
7809 ReserveIdsRequest.prototype.databaseId = "";
7810
7811 /**
7812 * ReserveIdsRequest keys.
7813 * @member {Array.<google.datastore.v1.IKey>} keys
7814 * @memberof google.datastore.v1.ReserveIdsRequest
7815 * @instance
7816 */
7817 ReserveIdsRequest.prototype.keys = $util.emptyArray;
7818
7819 /**
7820 * Creates a new ReserveIdsRequest instance using the specified properties.
7821 * @function create
7822 * @memberof google.datastore.v1.ReserveIdsRequest
7823 * @static
7824 * @param {google.datastore.v1.IReserveIdsRequest=} [properties] Properties to set
7825 * @returns {google.datastore.v1.ReserveIdsRequest} ReserveIdsRequest instance
7826 */
7827 ReserveIdsRequest.create = function create(properties) {
7828 return new ReserveIdsRequest(properties);
7829 };
7830
7831 /**
7832 * Encodes the specified ReserveIdsRequest message. Does not implicitly {@link google.datastore.v1.ReserveIdsRequest.verify|verify} messages.
7833 * @function encode
7834 * @memberof google.datastore.v1.ReserveIdsRequest
7835 * @static
7836 * @param {google.datastore.v1.IReserveIdsRequest} message ReserveIdsRequest message or plain object to encode
7837 * @param {$protobuf.Writer} [writer] Writer to encode to
7838 * @returns {$protobuf.Writer} Writer
7839 */
7840 ReserveIdsRequest.encode = function encode(message, writer) {
7841 if (!writer)
7842 writer = $Writer.create();
7843 if (message.keys != null && message.keys.length)
7844 for (var i = 0; i < message.keys.length; ++i)
7845 $root.google.datastore.v1.Key.encode(message.keys[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
7846 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
7847 writer.uint32(/* id 8, wireType 2 =*/66).string(message.projectId);
7848 if (message.databaseId != null && Object.hasOwnProperty.call(message, "databaseId"))
7849 writer.uint32(/* id 9, wireType 2 =*/74).string(message.databaseId);
7850 return writer;
7851 };
7852
7853 /**
7854 * Encodes the specified ReserveIdsRequest message, length delimited. Does not implicitly {@link google.datastore.v1.ReserveIdsRequest.verify|verify} messages.
7855 * @function encodeDelimited
7856 * @memberof google.datastore.v1.ReserveIdsRequest
7857 * @static
7858 * @param {google.datastore.v1.IReserveIdsRequest} message ReserveIdsRequest message or plain object to encode
7859 * @param {$protobuf.Writer} [writer] Writer to encode to
7860 * @returns {$protobuf.Writer} Writer
7861 */
7862 ReserveIdsRequest.encodeDelimited = function encodeDelimited(message, writer) {
7863 return this.encode(message, writer).ldelim();
7864 };
7865
7866 /**
7867 * Decodes a ReserveIdsRequest message from the specified reader or buffer.
7868 * @function decode
7869 * @memberof google.datastore.v1.ReserveIdsRequest
7870 * @static
7871 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7872 * @param {number} [length] Message length if known beforehand
7873 * @returns {google.datastore.v1.ReserveIdsRequest} ReserveIdsRequest
7874 * @throws {Error} If the payload is not a reader or valid buffer
7875 * @throws {$protobuf.util.ProtocolError} If required fields are missing
7876 */
7877 ReserveIdsRequest.decode = function decode(reader, length) {
7878 if (!(reader instanceof $Reader))
7879 reader = $Reader.create(reader);
7880 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.ReserveIdsRequest();
7881 while (reader.pos < end) {
7882 var tag = reader.uint32();
7883 switch (tag >>> 3) {
7884 case 8:
7885 message.projectId = reader.string();
7886 break;
7887 case 9:
7888 message.databaseId = reader.string();
7889 break;
7890 case 1:
7891 if (!(message.keys && message.keys.length))
7892 message.keys = [];
7893 message.keys.push($root.google.datastore.v1.Key.decode(reader, reader.uint32()));
7894 break;
7895 default:
7896 reader.skipType(tag & 7);
7897 break;
7898 }
7899 }
7900 return message;
7901 };
7902
7903 /**
7904 * Decodes a ReserveIdsRequest message from the specified reader or buffer, length delimited.
7905 * @function decodeDelimited
7906 * @memberof google.datastore.v1.ReserveIdsRequest
7907 * @static
7908 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
7909 * @returns {google.datastore.v1.ReserveIdsRequest} ReserveIdsRequest
7910 * @throws {Error} If the payload is not a reader or valid buffer
7911 * @throws {$protobuf.util.ProtocolError} If required fields are missing
7912 */
7913 ReserveIdsRequest.decodeDelimited = function decodeDelimited(reader) {
7914 if (!(reader instanceof $Reader))
7915 reader = new $Reader(reader);
7916 return this.decode(reader, reader.uint32());
7917 };
7918
7919 /**
7920 * Verifies a ReserveIdsRequest message.
7921 * @function verify
7922 * @memberof google.datastore.v1.ReserveIdsRequest
7923 * @static
7924 * @param {Object.<string,*>} message Plain object to verify
7925 * @returns {string|null} `null` if valid, otherwise the reason why it is not
7926 */
7927 ReserveIdsRequest.verify = function verify(message) {
7928 if (typeof message !== "object" || message === null)
7929 return "object expected";
7930 if (message.projectId != null && message.hasOwnProperty("projectId"))
7931 if (!$util.isString(message.projectId))
7932 return "projectId: string expected";
7933 if (message.databaseId != null && message.hasOwnProperty("databaseId"))
7934 if (!$util.isString(message.databaseId))
7935 return "databaseId: string expected";
7936 if (message.keys != null && message.hasOwnProperty("keys")) {
7937 if (!Array.isArray(message.keys))
7938 return "keys: array expected";
7939 for (var i = 0; i < message.keys.length; ++i) {
7940 var error = $root.google.datastore.v1.Key.verify(message.keys[i]);
7941 if (error)
7942 return "keys." + error;
7943 }
7944 }
7945 return null;
7946 };
7947
7948 /**
7949 * Creates a ReserveIdsRequest message from a plain object. Also converts values to their respective internal types.
7950 * @function fromObject
7951 * @memberof google.datastore.v1.ReserveIdsRequest
7952 * @static
7953 * @param {Object.<string,*>} object Plain object
7954 * @returns {google.datastore.v1.ReserveIdsRequest} ReserveIdsRequest
7955 */
7956 ReserveIdsRequest.fromObject = function fromObject(object) {
7957 if (object instanceof $root.google.datastore.v1.ReserveIdsRequest)
7958 return object;
7959 var message = new $root.google.datastore.v1.ReserveIdsRequest();
7960 if (object.projectId != null)
7961 message.projectId = String(object.projectId);
7962 if (object.databaseId != null)
7963 message.databaseId = String(object.databaseId);
7964 if (object.keys) {
7965 if (!Array.isArray(object.keys))
7966 throw TypeError(".google.datastore.v1.ReserveIdsRequest.keys: array expected");
7967 message.keys = [];
7968 for (var i = 0; i < object.keys.length; ++i) {
7969 if (typeof object.keys[i] !== "object")
7970 throw TypeError(".google.datastore.v1.ReserveIdsRequest.keys: object expected");
7971 message.keys[i] = $root.google.datastore.v1.Key.fromObject(object.keys[i]);
7972 }
7973 }
7974 return message;
7975 };
7976
7977 /**
7978 * Creates a plain object from a ReserveIdsRequest message. Also converts values to other types if specified.
7979 * @function toObject
7980 * @memberof google.datastore.v1.ReserveIdsRequest
7981 * @static
7982 * @param {google.datastore.v1.ReserveIdsRequest} message ReserveIdsRequest
7983 * @param {$protobuf.IConversionOptions} [options] Conversion options
7984 * @returns {Object.<string,*>} Plain object
7985 */
7986 ReserveIdsRequest.toObject = function toObject(message, options) {
7987 if (!options)
7988 options = {};
7989 var object = {};
7990 if (options.arrays || options.defaults)
7991 object.keys = [];
7992 if (options.defaults) {
7993 object.projectId = "";
7994 object.databaseId = "";
7995 }
7996 if (message.keys && message.keys.length) {
7997 object.keys = [];
7998 for (var j = 0; j < message.keys.length; ++j)
7999 object.keys[j] = $root.google.datastore.v1.Key.toObject(message.keys[j], options);
8000 }
8001 if (message.projectId != null && message.hasOwnProperty("projectId"))
8002 object.projectId = message.projectId;
8003 if (message.databaseId != null && message.hasOwnProperty("databaseId"))
8004 object.databaseId = message.databaseId;
8005 return object;
8006 };
8007
8008 /**
8009 * Converts this ReserveIdsRequest to JSON.
8010 * @function toJSON
8011 * @memberof google.datastore.v1.ReserveIdsRequest
8012 * @instance
8013 * @returns {Object.<string,*>} JSON object
8014 */
8015 ReserveIdsRequest.prototype.toJSON = function toJSON() {
8016 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
8017 };
8018
8019 return ReserveIdsRequest;
8020 })();
8021
8022 v1.ReserveIdsResponse = (function() {
8023
8024 /**
8025 * Properties of a ReserveIdsResponse.
8026 * @memberof google.datastore.v1
8027 * @interface IReserveIdsResponse
8028 */
8029
8030 /**
8031 * Constructs a new ReserveIdsResponse.
8032 * @memberof google.datastore.v1
8033 * @classdesc Represents a ReserveIdsResponse.
8034 * @implements IReserveIdsResponse
8035 * @constructor
8036 * @param {google.datastore.v1.IReserveIdsResponse=} [properties] Properties to set
8037 */
8038 function ReserveIdsResponse(properties) {
8039 if (properties)
8040 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
8041 if (properties[keys[i]] != null)
8042 this[keys[i]] = properties[keys[i]];
8043 }
8044
8045 /**
8046 * Creates a new ReserveIdsResponse instance using the specified properties.
8047 * @function create
8048 * @memberof google.datastore.v1.ReserveIdsResponse
8049 * @static
8050 * @param {google.datastore.v1.IReserveIdsResponse=} [properties] Properties to set
8051 * @returns {google.datastore.v1.ReserveIdsResponse} ReserveIdsResponse instance
8052 */
8053 ReserveIdsResponse.create = function create(properties) {
8054 return new ReserveIdsResponse(properties);
8055 };
8056
8057 /**
8058 * Encodes the specified ReserveIdsResponse message. Does not implicitly {@link google.datastore.v1.ReserveIdsResponse.verify|verify} messages.
8059 * @function encode
8060 * @memberof google.datastore.v1.ReserveIdsResponse
8061 * @static
8062 * @param {google.datastore.v1.IReserveIdsResponse} message ReserveIdsResponse message or plain object to encode
8063 * @param {$protobuf.Writer} [writer] Writer to encode to
8064 * @returns {$protobuf.Writer} Writer
8065 */
8066 ReserveIdsResponse.encode = function encode(message, writer) {
8067 if (!writer)
8068 writer = $Writer.create();
8069 return writer;
8070 };
8071
8072 /**
8073 * Encodes the specified ReserveIdsResponse message, length delimited. Does not implicitly {@link google.datastore.v1.ReserveIdsResponse.verify|verify} messages.
8074 * @function encodeDelimited
8075 * @memberof google.datastore.v1.ReserveIdsResponse
8076 * @static
8077 * @param {google.datastore.v1.IReserveIdsResponse} message ReserveIdsResponse message or plain object to encode
8078 * @param {$protobuf.Writer} [writer] Writer to encode to
8079 * @returns {$protobuf.Writer} Writer
8080 */
8081 ReserveIdsResponse.encodeDelimited = function encodeDelimited(message, writer) {
8082 return this.encode(message, writer).ldelim();
8083 };
8084
8085 /**
8086 * Decodes a ReserveIdsResponse message from the specified reader or buffer.
8087 * @function decode
8088 * @memberof google.datastore.v1.ReserveIdsResponse
8089 * @static
8090 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8091 * @param {number} [length] Message length if known beforehand
8092 * @returns {google.datastore.v1.ReserveIdsResponse} ReserveIdsResponse
8093 * @throws {Error} If the payload is not a reader or valid buffer
8094 * @throws {$protobuf.util.ProtocolError} If required fields are missing
8095 */
8096 ReserveIdsResponse.decode = function decode(reader, length) {
8097 if (!(reader instanceof $Reader))
8098 reader = $Reader.create(reader);
8099 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.ReserveIdsResponse();
8100 while (reader.pos < end) {
8101 var tag = reader.uint32();
8102 switch (tag >>> 3) {
8103 default:
8104 reader.skipType(tag & 7);
8105 break;
8106 }
8107 }
8108 return message;
8109 };
8110
8111 /**
8112 * Decodes a ReserveIdsResponse message from the specified reader or buffer, length delimited.
8113 * @function decodeDelimited
8114 * @memberof google.datastore.v1.ReserveIdsResponse
8115 * @static
8116 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8117 * @returns {google.datastore.v1.ReserveIdsResponse} ReserveIdsResponse
8118 * @throws {Error} If the payload is not a reader or valid buffer
8119 * @throws {$protobuf.util.ProtocolError} If required fields are missing
8120 */
8121 ReserveIdsResponse.decodeDelimited = function decodeDelimited(reader) {
8122 if (!(reader instanceof $Reader))
8123 reader = new $Reader(reader);
8124 return this.decode(reader, reader.uint32());
8125 };
8126
8127 /**
8128 * Verifies a ReserveIdsResponse message.
8129 * @function verify
8130 * @memberof google.datastore.v1.ReserveIdsResponse
8131 * @static
8132 * @param {Object.<string,*>} message Plain object to verify
8133 * @returns {string|null} `null` if valid, otherwise the reason why it is not
8134 */
8135 ReserveIdsResponse.verify = function verify(message) {
8136 if (typeof message !== "object" || message === null)
8137 return "object expected";
8138 return null;
8139 };
8140
8141 /**
8142 * Creates a ReserveIdsResponse message from a plain object. Also converts values to their respective internal types.
8143 * @function fromObject
8144 * @memberof google.datastore.v1.ReserveIdsResponse
8145 * @static
8146 * @param {Object.<string,*>} object Plain object
8147 * @returns {google.datastore.v1.ReserveIdsResponse} ReserveIdsResponse
8148 */
8149 ReserveIdsResponse.fromObject = function fromObject(object) {
8150 if (object instanceof $root.google.datastore.v1.ReserveIdsResponse)
8151 return object;
8152 return new $root.google.datastore.v1.ReserveIdsResponse();
8153 };
8154
8155 /**
8156 * Creates a plain object from a ReserveIdsResponse message. Also converts values to other types if specified.
8157 * @function toObject
8158 * @memberof google.datastore.v1.ReserveIdsResponse
8159 * @static
8160 * @param {google.datastore.v1.ReserveIdsResponse} message ReserveIdsResponse
8161 * @param {$protobuf.IConversionOptions} [options] Conversion options
8162 * @returns {Object.<string,*>} Plain object
8163 */
8164 ReserveIdsResponse.toObject = function toObject() {
8165 return {};
8166 };
8167
8168 /**
8169 * Converts this ReserveIdsResponse to JSON.
8170 * @function toJSON
8171 * @memberof google.datastore.v1.ReserveIdsResponse
8172 * @instance
8173 * @returns {Object.<string,*>} JSON object
8174 */
8175 ReserveIdsResponse.prototype.toJSON = function toJSON() {
8176 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
8177 };
8178
8179 return ReserveIdsResponse;
8180 })();
8181
8182 v1.Mutation = (function() {
8183
8184 /**
8185 * Properties of a Mutation.
8186 * @memberof google.datastore.v1
8187 * @interface IMutation
8188 * @property {google.datastore.v1.IEntity|null} [insert] Mutation insert
8189 * @property {google.datastore.v1.IEntity|null} [update] Mutation update
8190 * @property {google.datastore.v1.IEntity|null} [upsert] Mutation upsert
8191 * @property {google.datastore.v1.IKey|null} ["delete"] Mutation delete
8192 * @property {number|Long|null} [baseVersion] Mutation baseVersion
8193 */
8194
8195 /**
8196 * Constructs a new Mutation.
8197 * @memberof google.datastore.v1
8198 * @classdesc Represents a Mutation.
8199 * @implements IMutation
8200 * @constructor
8201 * @param {google.datastore.v1.IMutation=} [properties] Properties to set
8202 */
8203 function Mutation(properties) {
8204 if (properties)
8205 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
8206 if (properties[keys[i]] != null)
8207 this[keys[i]] = properties[keys[i]];
8208 }
8209
8210 /**
8211 * Mutation insert.
8212 * @member {google.datastore.v1.IEntity|null|undefined} insert
8213 * @memberof google.datastore.v1.Mutation
8214 * @instance
8215 */
8216 Mutation.prototype.insert = null;
8217
8218 /**
8219 * Mutation update.
8220 * @member {google.datastore.v1.IEntity|null|undefined} update
8221 * @memberof google.datastore.v1.Mutation
8222 * @instance
8223 */
8224 Mutation.prototype.update = null;
8225
8226 /**
8227 * Mutation upsert.
8228 * @member {google.datastore.v1.IEntity|null|undefined} upsert
8229 * @memberof google.datastore.v1.Mutation
8230 * @instance
8231 */
8232 Mutation.prototype.upsert = null;
8233
8234 /**
8235 * Mutation delete.
8236 * @member {google.datastore.v1.IKey|null|undefined} delete
8237 * @memberof google.datastore.v1.Mutation
8238 * @instance
8239 */
8240 Mutation.prototype["delete"] = null;
8241
8242 /**
8243 * Mutation baseVersion.
8244 * @member {number|Long} baseVersion
8245 * @memberof google.datastore.v1.Mutation
8246 * @instance
8247 */
8248 Mutation.prototype.baseVersion = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
8249
8250 // OneOf field names bound to virtual getters and setters
8251 var $oneOfFields;
8252
8253 /**
8254 * Mutation operation.
8255 * @member {"insert"|"update"|"upsert"|"delete"|undefined} operation
8256 * @memberof google.datastore.v1.Mutation
8257 * @instance
8258 */
8259 Object.defineProperty(Mutation.prototype, "operation", {
8260 get: $util.oneOfGetter($oneOfFields = ["insert", "update", "upsert", "delete"]),
8261 set: $util.oneOfSetter($oneOfFields)
8262 });
8263
8264 /**
8265 * Mutation conflictDetectionStrategy.
8266 * @member {"baseVersion"|undefined} conflictDetectionStrategy
8267 * @memberof google.datastore.v1.Mutation
8268 * @instance
8269 */
8270 Object.defineProperty(Mutation.prototype, "conflictDetectionStrategy", {
8271 get: $util.oneOfGetter($oneOfFields = ["baseVersion"]),
8272 set: $util.oneOfSetter($oneOfFields)
8273 });
8274
8275 /**
8276 * Creates a new Mutation instance using the specified properties.
8277 * @function create
8278 * @memberof google.datastore.v1.Mutation
8279 * @static
8280 * @param {google.datastore.v1.IMutation=} [properties] Properties to set
8281 * @returns {google.datastore.v1.Mutation} Mutation instance
8282 */
8283 Mutation.create = function create(properties) {
8284 return new Mutation(properties);
8285 };
8286
8287 /**
8288 * Encodes the specified Mutation message. Does not implicitly {@link google.datastore.v1.Mutation.verify|verify} messages.
8289 * @function encode
8290 * @memberof google.datastore.v1.Mutation
8291 * @static
8292 * @param {google.datastore.v1.IMutation} message Mutation message or plain object to encode
8293 * @param {$protobuf.Writer} [writer] Writer to encode to
8294 * @returns {$protobuf.Writer} Writer
8295 */
8296 Mutation.encode = function encode(message, writer) {
8297 if (!writer)
8298 writer = $Writer.create();
8299 if (message.insert != null && Object.hasOwnProperty.call(message, "insert"))
8300 $root.google.datastore.v1.Entity.encode(message.insert, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
8301 if (message.update != null && Object.hasOwnProperty.call(message, "update"))
8302 $root.google.datastore.v1.Entity.encode(message.update, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
8303 if (message.upsert != null && Object.hasOwnProperty.call(message, "upsert"))
8304 $root.google.datastore.v1.Entity.encode(message.upsert, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
8305 if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete"))
8306 $root.google.datastore.v1.Key.encode(message["delete"], writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
8307 if (message.baseVersion != null && Object.hasOwnProperty.call(message, "baseVersion"))
8308 writer.uint32(/* id 8, wireType 0 =*/64).int64(message.baseVersion);
8309 return writer;
8310 };
8311
8312 /**
8313 * Encodes the specified Mutation message, length delimited. Does not implicitly {@link google.datastore.v1.Mutation.verify|verify} messages.
8314 * @function encodeDelimited
8315 * @memberof google.datastore.v1.Mutation
8316 * @static
8317 * @param {google.datastore.v1.IMutation} message Mutation message or plain object to encode
8318 * @param {$protobuf.Writer} [writer] Writer to encode to
8319 * @returns {$protobuf.Writer} Writer
8320 */
8321 Mutation.encodeDelimited = function encodeDelimited(message, writer) {
8322 return this.encode(message, writer).ldelim();
8323 };
8324
8325 /**
8326 * Decodes a Mutation message from the specified reader or buffer.
8327 * @function decode
8328 * @memberof google.datastore.v1.Mutation
8329 * @static
8330 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8331 * @param {number} [length] Message length if known beforehand
8332 * @returns {google.datastore.v1.Mutation} Mutation
8333 * @throws {Error} If the payload is not a reader or valid buffer
8334 * @throws {$protobuf.util.ProtocolError} If required fields are missing
8335 */
8336 Mutation.decode = function decode(reader, length) {
8337 if (!(reader instanceof $Reader))
8338 reader = $Reader.create(reader);
8339 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.Mutation();
8340 while (reader.pos < end) {
8341 var tag = reader.uint32();
8342 switch (tag >>> 3) {
8343 case 4:
8344 message.insert = $root.google.datastore.v1.Entity.decode(reader, reader.uint32());
8345 break;
8346 case 5:
8347 message.update = $root.google.datastore.v1.Entity.decode(reader, reader.uint32());
8348 break;
8349 case 6:
8350 message.upsert = $root.google.datastore.v1.Entity.decode(reader, reader.uint32());
8351 break;
8352 case 7:
8353 message["delete"] = $root.google.datastore.v1.Key.decode(reader, reader.uint32());
8354 break;
8355 case 8:
8356 message.baseVersion = reader.int64();
8357 break;
8358 default:
8359 reader.skipType(tag & 7);
8360 break;
8361 }
8362 }
8363 return message;
8364 };
8365
8366 /**
8367 * Decodes a Mutation message from the specified reader or buffer, length delimited.
8368 * @function decodeDelimited
8369 * @memberof google.datastore.v1.Mutation
8370 * @static
8371 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8372 * @returns {google.datastore.v1.Mutation} Mutation
8373 * @throws {Error} If the payload is not a reader or valid buffer
8374 * @throws {$protobuf.util.ProtocolError} If required fields are missing
8375 */
8376 Mutation.decodeDelimited = function decodeDelimited(reader) {
8377 if (!(reader instanceof $Reader))
8378 reader = new $Reader(reader);
8379 return this.decode(reader, reader.uint32());
8380 };
8381
8382 /**
8383 * Verifies a Mutation message.
8384 * @function verify
8385 * @memberof google.datastore.v1.Mutation
8386 * @static
8387 * @param {Object.<string,*>} message Plain object to verify
8388 * @returns {string|null} `null` if valid, otherwise the reason why it is not
8389 */
8390 Mutation.verify = function verify(message) {
8391 if (typeof message !== "object" || message === null)
8392 return "object expected";
8393 var properties = {};
8394 if (message.insert != null && message.hasOwnProperty("insert")) {
8395 properties.operation = 1;
8396 {
8397 var error = $root.google.datastore.v1.Entity.verify(message.insert);
8398 if (error)
8399 return "insert." + error;
8400 }
8401 }
8402 if (message.update != null && message.hasOwnProperty("update")) {
8403 if (properties.operation === 1)
8404 return "operation: multiple values";
8405 properties.operation = 1;
8406 {
8407 var error = $root.google.datastore.v1.Entity.verify(message.update);
8408 if (error)
8409 return "update." + error;
8410 }
8411 }
8412 if (message.upsert != null && message.hasOwnProperty("upsert")) {
8413 if (properties.operation === 1)
8414 return "operation: multiple values";
8415 properties.operation = 1;
8416 {
8417 var error = $root.google.datastore.v1.Entity.verify(message.upsert);
8418 if (error)
8419 return "upsert." + error;
8420 }
8421 }
8422 if (message["delete"] != null && message.hasOwnProperty("delete")) {
8423 if (properties.operation === 1)
8424 return "operation: multiple values";
8425 properties.operation = 1;
8426 {
8427 var error = $root.google.datastore.v1.Key.verify(message["delete"]);
8428 if (error)
8429 return "delete." + error;
8430 }
8431 }
8432 if (message.baseVersion != null && message.hasOwnProperty("baseVersion")) {
8433 properties.conflictDetectionStrategy = 1;
8434 if (!$util.isInteger(message.baseVersion) && !(message.baseVersion && $util.isInteger(message.baseVersion.low) && $util.isInteger(message.baseVersion.high)))
8435 return "baseVersion: integer|Long expected";
8436 }
8437 return null;
8438 };
8439
8440 /**
8441 * Creates a Mutation message from a plain object. Also converts values to their respective internal types.
8442 * @function fromObject
8443 * @memberof google.datastore.v1.Mutation
8444 * @static
8445 * @param {Object.<string,*>} object Plain object
8446 * @returns {google.datastore.v1.Mutation} Mutation
8447 */
8448 Mutation.fromObject = function fromObject(object) {
8449 if (object instanceof $root.google.datastore.v1.Mutation)
8450 return object;
8451 var message = new $root.google.datastore.v1.Mutation();
8452 if (object.insert != null) {
8453 if (typeof object.insert !== "object")
8454 throw TypeError(".google.datastore.v1.Mutation.insert: object expected");
8455 message.insert = $root.google.datastore.v1.Entity.fromObject(object.insert);
8456 }
8457 if (object.update != null) {
8458 if (typeof object.update !== "object")
8459 throw TypeError(".google.datastore.v1.Mutation.update: object expected");
8460 message.update = $root.google.datastore.v1.Entity.fromObject(object.update);
8461 }
8462 if (object.upsert != null) {
8463 if (typeof object.upsert !== "object")
8464 throw TypeError(".google.datastore.v1.Mutation.upsert: object expected");
8465 message.upsert = $root.google.datastore.v1.Entity.fromObject(object.upsert);
8466 }
8467 if (object["delete"] != null) {
8468 if (typeof object["delete"] !== "object")
8469 throw TypeError(".google.datastore.v1.Mutation.delete: object expected");
8470 message["delete"] = $root.google.datastore.v1.Key.fromObject(object["delete"]);
8471 }
8472 if (object.baseVersion != null)
8473 if ($util.Long)
8474 (message.baseVersion = $util.Long.fromValue(object.baseVersion)).unsigned = false;
8475 else if (typeof object.baseVersion === "string")
8476 message.baseVersion = parseInt(object.baseVersion, 10);
8477 else if (typeof object.baseVersion === "number")
8478 message.baseVersion = object.baseVersion;
8479 else if (typeof object.baseVersion === "object")
8480 message.baseVersion = new $util.LongBits(object.baseVersion.low >>> 0, object.baseVersion.high >>> 0).toNumber();
8481 return message;
8482 };
8483
8484 /**
8485 * Creates a plain object from a Mutation message. Also converts values to other types if specified.
8486 * @function toObject
8487 * @memberof google.datastore.v1.Mutation
8488 * @static
8489 * @param {google.datastore.v1.Mutation} message Mutation
8490 * @param {$protobuf.IConversionOptions} [options] Conversion options
8491 * @returns {Object.<string,*>} Plain object
8492 */
8493 Mutation.toObject = function toObject(message, options) {
8494 if (!options)
8495 options = {};
8496 var object = {};
8497 if (message.insert != null && message.hasOwnProperty("insert")) {
8498 object.insert = $root.google.datastore.v1.Entity.toObject(message.insert, options);
8499 if (options.oneofs)
8500 object.operation = "insert";
8501 }
8502 if (message.update != null && message.hasOwnProperty("update")) {
8503 object.update = $root.google.datastore.v1.Entity.toObject(message.update, options);
8504 if (options.oneofs)
8505 object.operation = "update";
8506 }
8507 if (message.upsert != null && message.hasOwnProperty("upsert")) {
8508 object.upsert = $root.google.datastore.v1.Entity.toObject(message.upsert, options);
8509 if (options.oneofs)
8510 object.operation = "upsert";
8511 }
8512 if (message["delete"] != null && message.hasOwnProperty("delete")) {
8513 object["delete"] = $root.google.datastore.v1.Key.toObject(message["delete"], options);
8514 if (options.oneofs)
8515 object.operation = "delete";
8516 }
8517 if (message.baseVersion != null && message.hasOwnProperty("baseVersion")) {
8518 if (typeof message.baseVersion === "number")
8519 object.baseVersion = options.longs === String ? String(message.baseVersion) : message.baseVersion;
8520 else
8521 object.baseVersion = options.longs === String ? $util.Long.prototype.toString.call(message.baseVersion) : options.longs === Number ? new $util.LongBits(message.baseVersion.low >>> 0, message.baseVersion.high >>> 0).toNumber() : message.baseVersion;
8522 if (options.oneofs)
8523 object.conflictDetectionStrategy = "baseVersion";
8524 }
8525 return object;
8526 };
8527
8528 /**
8529 * Converts this Mutation to JSON.
8530 * @function toJSON
8531 * @memberof google.datastore.v1.Mutation
8532 * @instance
8533 * @returns {Object.<string,*>} JSON object
8534 */
8535 Mutation.prototype.toJSON = function toJSON() {
8536 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
8537 };
8538
8539 return Mutation;
8540 })();
8541
8542 v1.MutationResult = (function() {
8543
8544 /**
8545 * Properties of a MutationResult.
8546 * @memberof google.datastore.v1
8547 * @interface IMutationResult
8548 * @property {google.datastore.v1.IKey|null} [key] MutationResult key
8549 * @property {number|Long|null} [version] MutationResult version
8550 * @property {boolean|null} [conflictDetected] MutationResult conflictDetected
8551 */
8552
8553 /**
8554 * Constructs a new MutationResult.
8555 * @memberof google.datastore.v1
8556 * @classdesc Represents a MutationResult.
8557 * @implements IMutationResult
8558 * @constructor
8559 * @param {google.datastore.v1.IMutationResult=} [properties] Properties to set
8560 */
8561 function MutationResult(properties) {
8562 if (properties)
8563 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
8564 if (properties[keys[i]] != null)
8565 this[keys[i]] = properties[keys[i]];
8566 }
8567
8568 /**
8569 * MutationResult key.
8570 * @member {google.datastore.v1.IKey|null|undefined} key
8571 * @memberof google.datastore.v1.MutationResult
8572 * @instance
8573 */
8574 MutationResult.prototype.key = null;
8575
8576 /**
8577 * MutationResult version.
8578 * @member {number|Long} version
8579 * @memberof google.datastore.v1.MutationResult
8580 * @instance
8581 */
8582 MutationResult.prototype.version = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
8583
8584 /**
8585 * MutationResult conflictDetected.
8586 * @member {boolean} conflictDetected
8587 * @memberof google.datastore.v1.MutationResult
8588 * @instance
8589 */
8590 MutationResult.prototype.conflictDetected = false;
8591
8592 /**
8593 * Creates a new MutationResult instance using the specified properties.
8594 * @function create
8595 * @memberof google.datastore.v1.MutationResult
8596 * @static
8597 * @param {google.datastore.v1.IMutationResult=} [properties] Properties to set
8598 * @returns {google.datastore.v1.MutationResult} MutationResult instance
8599 */
8600 MutationResult.create = function create(properties) {
8601 return new MutationResult(properties);
8602 };
8603
8604 /**
8605 * Encodes the specified MutationResult message. Does not implicitly {@link google.datastore.v1.MutationResult.verify|verify} messages.
8606 * @function encode
8607 * @memberof google.datastore.v1.MutationResult
8608 * @static
8609 * @param {google.datastore.v1.IMutationResult} message MutationResult message or plain object to encode
8610 * @param {$protobuf.Writer} [writer] Writer to encode to
8611 * @returns {$protobuf.Writer} Writer
8612 */
8613 MutationResult.encode = function encode(message, writer) {
8614 if (!writer)
8615 writer = $Writer.create();
8616 if (message.key != null && Object.hasOwnProperty.call(message, "key"))
8617 $root.google.datastore.v1.Key.encode(message.key, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
8618 if (message.version != null && Object.hasOwnProperty.call(message, "version"))
8619 writer.uint32(/* id 4, wireType 0 =*/32).int64(message.version);
8620 if (message.conflictDetected != null && Object.hasOwnProperty.call(message, "conflictDetected"))
8621 writer.uint32(/* id 5, wireType 0 =*/40).bool(message.conflictDetected);
8622 return writer;
8623 };
8624
8625 /**
8626 * Encodes the specified MutationResult message, length delimited. Does not implicitly {@link google.datastore.v1.MutationResult.verify|verify} messages.
8627 * @function encodeDelimited
8628 * @memberof google.datastore.v1.MutationResult
8629 * @static
8630 * @param {google.datastore.v1.IMutationResult} message MutationResult message or plain object to encode
8631 * @param {$protobuf.Writer} [writer] Writer to encode to
8632 * @returns {$protobuf.Writer} Writer
8633 */
8634 MutationResult.encodeDelimited = function encodeDelimited(message, writer) {
8635 return this.encode(message, writer).ldelim();
8636 };
8637
8638 /**
8639 * Decodes a MutationResult message from the specified reader or buffer.
8640 * @function decode
8641 * @memberof google.datastore.v1.MutationResult
8642 * @static
8643 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8644 * @param {number} [length] Message length if known beforehand
8645 * @returns {google.datastore.v1.MutationResult} MutationResult
8646 * @throws {Error} If the payload is not a reader or valid buffer
8647 * @throws {$protobuf.util.ProtocolError} If required fields are missing
8648 */
8649 MutationResult.decode = function decode(reader, length) {
8650 if (!(reader instanceof $Reader))
8651 reader = $Reader.create(reader);
8652 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.MutationResult();
8653 while (reader.pos < end) {
8654 var tag = reader.uint32();
8655 switch (tag >>> 3) {
8656 case 3:
8657 message.key = $root.google.datastore.v1.Key.decode(reader, reader.uint32());
8658 break;
8659 case 4:
8660 message.version = reader.int64();
8661 break;
8662 case 5:
8663 message.conflictDetected = reader.bool();
8664 break;
8665 default:
8666 reader.skipType(tag & 7);
8667 break;
8668 }
8669 }
8670 return message;
8671 };
8672
8673 /**
8674 * Decodes a MutationResult message from the specified reader or buffer, length delimited.
8675 * @function decodeDelimited
8676 * @memberof google.datastore.v1.MutationResult
8677 * @static
8678 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8679 * @returns {google.datastore.v1.MutationResult} MutationResult
8680 * @throws {Error} If the payload is not a reader or valid buffer
8681 * @throws {$protobuf.util.ProtocolError} If required fields are missing
8682 */
8683 MutationResult.decodeDelimited = function decodeDelimited(reader) {
8684 if (!(reader instanceof $Reader))
8685 reader = new $Reader(reader);
8686 return this.decode(reader, reader.uint32());
8687 };
8688
8689 /**
8690 * Verifies a MutationResult message.
8691 * @function verify
8692 * @memberof google.datastore.v1.MutationResult
8693 * @static
8694 * @param {Object.<string,*>} message Plain object to verify
8695 * @returns {string|null} `null` if valid, otherwise the reason why it is not
8696 */
8697 MutationResult.verify = function verify(message) {
8698 if (typeof message !== "object" || message === null)
8699 return "object expected";
8700 if (message.key != null && message.hasOwnProperty("key")) {
8701 var error = $root.google.datastore.v1.Key.verify(message.key);
8702 if (error)
8703 return "key." + error;
8704 }
8705 if (message.version != null && message.hasOwnProperty("version"))
8706 if (!$util.isInteger(message.version) && !(message.version && $util.isInteger(message.version.low) && $util.isInteger(message.version.high)))
8707 return "version: integer|Long expected";
8708 if (message.conflictDetected != null && message.hasOwnProperty("conflictDetected"))
8709 if (typeof message.conflictDetected !== "boolean")
8710 return "conflictDetected: boolean expected";
8711 return null;
8712 };
8713
8714 /**
8715 * Creates a MutationResult message from a plain object. Also converts values to their respective internal types.
8716 * @function fromObject
8717 * @memberof google.datastore.v1.MutationResult
8718 * @static
8719 * @param {Object.<string,*>} object Plain object
8720 * @returns {google.datastore.v1.MutationResult} MutationResult
8721 */
8722 MutationResult.fromObject = function fromObject(object) {
8723 if (object instanceof $root.google.datastore.v1.MutationResult)
8724 return object;
8725 var message = new $root.google.datastore.v1.MutationResult();
8726 if (object.key != null) {
8727 if (typeof object.key !== "object")
8728 throw TypeError(".google.datastore.v1.MutationResult.key: object expected");
8729 message.key = $root.google.datastore.v1.Key.fromObject(object.key);
8730 }
8731 if (object.version != null)
8732 if ($util.Long)
8733 (message.version = $util.Long.fromValue(object.version)).unsigned = false;
8734 else if (typeof object.version === "string")
8735 message.version = parseInt(object.version, 10);
8736 else if (typeof object.version === "number")
8737 message.version = object.version;
8738 else if (typeof object.version === "object")
8739 message.version = new $util.LongBits(object.version.low >>> 0, object.version.high >>> 0).toNumber();
8740 if (object.conflictDetected != null)
8741 message.conflictDetected = Boolean(object.conflictDetected);
8742 return message;
8743 };
8744
8745 /**
8746 * Creates a plain object from a MutationResult message. Also converts values to other types if specified.
8747 * @function toObject
8748 * @memberof google.datastore.v1.MutationResult
8749 * @static
8750 * @param {google.datastore.v1.MutationResult} message MutationResult
8751 * @param {$protobuf.IConversionOptions} [options] Conversion options
8752 * @returns {Object.<string,*>} Plain object
8753 */
8754 MutationResult.toObject = function toObject(message, options) {
8755 if (!options)
8756 options = {};
8757 var object = {};
8758 if (options.defaults) {
8759 object.key = null;
8760 if ($util.Long) {
8761 var long = new $util.Long(0, 0, false);
8762 object.version = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
8763 } else
8764 object.version = options.longs === String ? "0" : 0;
8765 object.conflictDetected = false;
8766 }
8767 if (message.key != null && message.hasOwnProperty("key"))
8768 object.key = $root.google.datastore.v1.Key.toObject(message.key, options);
8769 if (message.version != null && message.hasOwnProperty("version"))
8770 if (typeof message.version === "number")
8771 object.version = options.longs === String ? String(message.version) : message.version;
8772 else
8773 object.version = options.longs === String ? $util.Long.prototype.toString.call(message.version) : options.longs === Number ? new $util.LongBits(message.version.low >>> 0, message.version.high >>> 0).toNumber() : message.version;
8774 if (message.conflictDetected != null && message.hasOwnProperty("conflictDetected"))
8775 object.conflictDetected = message.conflictDetected;
8776 return object;
8777 };
8778
8779 /**
8780 * Converts this MutationResult to JSON.
8781 * @function toJSON
8782 * @memberof google.datastore.v1.MutationResult
8783 * @instance
8784 * @returns {Object.<string,*>} JSON object
8785 */
8786 MutationResult.prototype.toJSON = function toJSON() {
8787 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
8788 };
8789
8790 return MutationResult;
8791 })();
8792
8793 v1.ReadOptions = (function() {
8794
8795 /**
8796 * Properties of a ReadOptions.
8797 * @memberof google.datastore.v1
8798 * @interface IReadOptions
8799 * @property {google.datastore.v1.ReadOptions.ReadConsistency|null} [readConsistency] ReadOptions readConsistency
8800 * @property {Uint8Array|null} [transaction] ReadOptions transaction
8801 */
8802
8803 /**
8804 * Constructs a new ReadOptions.
8805 * @memberof google.datastore.v1
8806 * @classdesc Represents a ReadOptions.
8807 * @implements IReadOptions
8808 * @constructor
8809 * @param {google.datastore.v1.IReadOptions=} [properties] Properties to set
8810 */
8811 function ReadOptions(properties) {
8812 if (properties)
8813 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
8814 if (properties[keys[i]] != null)
8815 this[keys[i]] = properties[keys[i]];
8816 }
8817
8818 /**
8819 * ReadOptions readConsistency.
8820 * @member {google.datastore.v1.ReadOptions.ReadConsistency} readConsistency
8821 * @memberof google.datastore.v1.ReadOptions
8822 * @instance
8823 */
8824 ReadOptions.prototype.readConsistency = 0;
8825
8826 /**
8827 * ReadOptions transaction.
8828 * @member {Uint8Array} transaction
8829 * @memberof google.datastore.v1.ReadOptions
8830 * @instance
8831 */
8832 ReadOptions.prototype.transaction = $util.newBuffer([]);
8833
8834 // OneOf field names bound to virtual getters and setters
8835 var $oneOfFields;
8836
8837 /**
8838 * ReadOptions consistencyType.
8839 * @member {"readConsistency"|"transaction"|undefined} consistencyType
8840 * @memberof google.datastore.v1.ReadOptions
8841 * @instance
8842 */
8843 Object.defineProperty(ReadOptions.prototype, "consistencyType", {
8844 get: $util.oneOfGetter($oneOfFields = ["readConsistency", "transaction"]),
8845 set: $util.oneOfSetter($oneOfFields)
8846 });
8847
8848 /**
8849 * Creates a new ReadOptions instance using the specified properties.
8850 * @function create
8851 * @memberof google.datastore.v1.ReadOptions
8852 * @static
8853 * @param {google.datastore.v1.IReadOptions=} [properties] Properties to set
8854 * @returns {google.datastore.v1.ReadOptions} ReadOptions instance
8855 */
8856 ReadOptions.create = function create(properties) {
8857 return new ReadOptions(properties);
8858 };
8859
8860 /**
8861 * Encodes the specified ReadOptions message. Does not implicitly {@link google.datastore.v1.ReadOptions.verify|verify} messages.
8862 * @function encode
8863 * @memberof google.datastore.v1.ReadOptions
8864 * @static
8865 * @param {google.datastore.v1.IReadOptions} message ReadOptions message or plain object to encode
8866 * @param {$protobuf.Writer} [writer] Writer to encode to
8867 * @returns {$protobuf.Writer} Writer
8868 */
8869 ReadOptions.encode = function encode(message, writer) {
8870 if (!writer)
8871 writer = $Writer.create();
8872 if (message.readConsistency != null && Object.hasOwnProperty.call(message, "readConsistency"))
8873 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.readConsistency);
8874 if (message.transaction != null && Object.hasOwnProperty.call(message, "transaction"))
8875 writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.transaction);
8876 return writer;
8877 };
8878
8879 /**
8880 * Encodes the specified ReadOptions message, length delimited. Does not implicitly {@link google.datastore.v1.ReadOptions.verify|verify} messages.
8881 * @function encodeDelimited
8882 * @memberof google.datastore.v1.ReadOptions
8883 * @static
8884 * @param {google.datastore.v1.IReadOptions} message ReadOptions message or plain object to encode
8885 * @param {$protobuf.Writer} [writer] Writer to encode to
8886 * @returns {$protobuf.Writer} Writer
8887 */
8888 ReadOptions.encodeDelimited = function encodeDelimited(message, writer) {
8889 return this.encode(message, writer).ldelim();
8890 };
8891
8892 /**
8893 * Decodes a ReadOptions message from the specified reader or buffer.
8894 * @function decode
8895 * @memberof google.datastore.v1.ReadOptions
8896 * @static
8897 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8898 * @param {number} [length] Message length if known beforehand
8899 * @returns {google.datastore.v1.ReadOptions} ReadOptions
8900 * @throws {Error} If the payload is not a reader or valid buffer
8901 * @throws {$protobuf.util.ProtocolError} If required fields are missing
8902 */
8903 ReadOptions.decode = function decode(reader, length) {
8904 if (!(reader instanceof $Reader))
8905 reader = $Reader.create(reader);
8906 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.ReadOptions();
8907 while (reader.pos < end) {
8908 var tag = reader.uint32();
8909 switch (tag >>> 3) {
8910 case 1:
8911 message.readConsistency = reader.int32();
8912 break;
8913 case 2:
8914 message.transaction = reader.bytes();
8915 break;
8916 default:
8917 reader.skipType(tag & 7);
8918 break;
8919 }
8920 }
8921 return message;
8922 };
8923
8924 /**
8925 * Decodes a ReadOptions message from the specified reader or buffer, length delimited.
8926 * @function decodeDelimited
8927 * @memberof google.datastore.v1.ReadOptions
8928 * @static
8929 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
8930 * @returns {google.datastore.v1.ReadOptions} ReadOptions
8931 * @throws {Error} If the payload is not a reader or valid buffer
8932 * @throws {$protobuf.util.ProtocolError} If required fields are missing
8933 */
8934 ReadOptions.decodeDelimited = function decodeDelimited(reader) {
8935 if (!(reader instanceof $Reader))
8936 reader = new $Reader(reader);
8937 return this.decode(reader, reader.uint32());
8938 };
8939
8940 /**
8941 * Verifies a ReadOptions message.
8942 * @function verify
8943 * @memberof google.datastore.v1.ReadOptions
8944 * @static
8945 * @param {Object.<string,*>} message Plain object to verify
8946 * @returns {string|null} `null` if valid, otherwise the reason why it is not
8947 */
8948 ReadOptions.verify = function verify(message) {
8949 if (typeof message !== "object" || message === null)
8950 return "object expected";
8951 var properties = {};
8952 if (message.readConsistency != null && message.hasOwnProperty("readConsistency")) {
8953 properties.consistencyType = 1;
8954 switch (message.readConsistency) {
8955 default:
8956 return "readConsistency: enum value expected";
8957 case 0:
8958 case 1:
8959 case 2:
8960 break;
8961 }
8962 }
8963 if (message.transaction != null && message.hasOwnProperty("transaction")) {
8964 if (properties.consistencyType === 1)
8965 return "consistencyType: multiple values";
8966 properties.consistencyType = 1;
8967 if (!(message.transaction && typeof message.transaction.length === "number" || $util.isString(message.transaction)))
8968 return "transaction: buffer expected";
8969 }
8970 return null;
8971 };
8972
8973 /**
8974 * Creates a ReadOptions message from a plain object. Also converts values to their respective internal types.
8975 * @function fromObject
8976 * @memberof google.datastore.v1.ReadOptions
8977 * @static
8978 * @param {Object.<string,*>} object Plain object
8979 * @returns {google.datastore.v1.ReadOptions} ReadOptions
8980 */
8981 ReadOptions.fromObject = function fromObject(object) {
8982 if (object instanceof $root.google.datastore.v1.ReadOptions)
8983 return object;
8984 var message = new $root.google.datastore.v1.ReadOptions();
8985 switch (object.readConsistency) {
8986 case "READ_CONSISTENCY_UNSPECIFIED":
8987 case 0:
8988 message.readConsistency = 0;
8989 break;
8990 case "STRONG":
8991 case 1:
8992 message.readConsistency = 1;
8993 break;
8994 case "EVENTUAL":
8995 case 2:
8996 message.readConsistency = 2;
8997 break;
8998 }
8999 if (object.transaction != null)
9000 if (typeof object.transaction === "string")
9001 $util.base64.decode(object.transaction, message.transaction = $util.newBuffer($util.base64.length(object.transaction)), 0);
9002 else if (object.transaction.length)
9003 message.transaction = object.transaction;
9004 return message;
9005 };
9006
9007 /**
9008 * Creates a plain object from a ReadOptions message. Also converts values to other types if specified.
9009 * @function toObject
9010 * @memberof google.datastore.v1.ReadOptions
9011 * @static
9012 * @param {google.datastore.v1.ReadOptions} message ReadOptions
9013 * @param {$protobuf.IConversionOptions} [options] Conversion options
9014 * @returns {Object.<string,*>} Plain object
9015 */
9016 ReadOptions.toObject = function toObject(message, options) {
9017 if (!options)
9018 options = {};
9019 var object = {};
9020 if (message.readConsistency != null && message.hasOwnProperty("readConsistency")) {
9021 object.readConsistency = options.enums === String ? $root.google.datastore.v1.ReadOptions.ReadConsistency[message.readConsistency] : message.readConsistency;
9022 if (options.oneofs)
9023 object.consistencyType = "readConsistency";
9024 }
9025 if (message.transaction != null && message.hasOwnProperty("transaction")) {
9026 object.transaction = options.bytes === String ? $util.base64.encode(message.transaction, 0, message.transaction.length) : options.bytes === Array ? Array.prototype.slice.call(message.transaction) : message.transaction;
9027 if (options.oneofs)
9028 object.consistencyType = "transaction";
9029 }
9030 return object;
9031 };
9032
9033 /**
9034 * Converts this ReadOptions to JSON.
9035 * @function toJSON
9036 * @memberof google.datastore.v1.ReadOptions
9037 * @instance
9038 * @returns {Object.<string,*>} JSON object
9039 */
9040 ReadOptions.prototype.toJSON = function toJSON() {
9041 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
9042 };
9043
9044 /**
9045 * ReadConsistency enum.
9046 * @name google.datastore.v1.ReadOptions.ReadConsistency
9047 * @enum {number}
9048 * @property {number} READ_CONSISTENCY_UNSPECIFIED=0 READ_CONSISTENCY_UNSPECIFIED value
9049 * @property {number} STRONG=1 STRONG value
9050 * @property {number} EVENTUAL=2 EVENTUAL value
9051 */
9052 ReadOptions.ReadConsistency = (function() {
9053 var valuesById = {}, values = Object.create(valuesById);
9054 values[valuesById[0] = "READ_CONSISTENCY_UNSPECIFIED"] = 0;
9055 values[valuesById[1] = "STRONG"] = 1;
9056 values[valuesById[2] = "EVENTUAL"] = 2;
9057 return values;
9058 })();
9059
9060 return ReadOptions;
9061 })();
9062
9063 v1.TransactionOptions = (function() {
9064
9065 /**
9066 * Properties of a TransactionOptions.
9067 * @memberof google.datastore.v1
9068 * @interface ITransactionOptions
9069 * @property {google.datastore.v1.TransactionOptions.IReadWrite|null} [readWrite] TransactionOptions readWrite
9070 * @property {google.datastore.v1.TransactionOptions.IReadOnly|null} [readOnly] TransactionOptions readOnly
9071 */
9072
9073 /**
9074 * Constructs a new TransactionOptions.
9075 * @memberof google.datastore.v1
9076 * @classdesc Represents a TransactionOptions.
9077 * @implements ITransactionOptions
9078 * @constructor
9079 * @param {google.datastore.v1.ITransactionOptions=} [properties] Properties to set
9080 */
9081 function TransactionOptions(properties) {
9082 if (properties)
9083 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9084 if (properties[keys[i]] != null)
9085 this[keys[i]] = properties[keys[i]];
9086 }
9087
9088 /**
9089 * TransactionOptions readWrite.
9090 * @member {google.datastore.v1.TransactionOptions.IReadWrite|null|undefined} readWrite
9091 * @memberof google.datastore.v1.TransactionOptions
9092 * @instance
9093 */
9094 TransactionOptions.prototype.readWrite = null;
9095
9096 /**
9097 * TransactionOptions readOnly.
9098 * @member {google.datastore.v1.TransactionOptions.IReadOnly|null|undefined} readOnly
9099 * @memberof google.datastore.v1.TransactionOptions
9100 * @instance
9101 */
9102 TransactionOptions.prototype.readOnly = null;
9103
9104 // OneOf field names bound to virtual getters and setters
9105 var $oneOfFields;
9106
9107 /**
9108 * TransactionOptions mode.
9109 * @member {"readWrite"|"readOnly"|undefined} mode
9110 * @memberof google.datastore.v1.TransactionOptions
9111 * @instance
9112 */
9113 Object.defineProperty(TransactionOptions.prototype, "mode", {
9114 get: $util.oneOfGetter($oneOfFields = ["readWrite", "readOnly"]),
9115 set: $util.oneOfSetter($oneOfFields)
9116 });
9117
9118 /**
9119 * Creates a new TransactionOptions instance using the specified properties.
9120 * @function create
9121 * @memberof google.datastore.v1.TransactionOptions
9122 * @static
9123 * @param {google.datastore.v1.ITransactionOptions=} [properties] Properties to set
9124 * @returns {google.datastore.v1.TransactionOptions} TransactionOptions instance
9125 */
9126 TransactionOptions.create = function create(properties) {
9127 return new TransactionOptions(properties);
9128 };
9129
9130 /**
9131 * Encodes the specified TransactionOptions message. Does not implicitly {@link google.datastore.v1.TransactionOptions.verify|verify} messages.
9132 * @function encode
9133 * @memberof google.datastore.v1.TransactionOptions
9134 * @static
9135 * @param {google.datastore.v1.ITransactionOptions} message TransactionOptions message or plain object to encode
9136 * @param {$protobuf.Writer} [writer] Writer to encode to
9137 * @returns {$protobuf.Writer} Writer
9138 */
9139 TransactionOptions.encode = function encode(message, writer) {
9140 if (!writer)
9141 writer = $Writer.create();
9142 if (message.readWrite != null && Object.hasOwnProperty.call(message, "readWrite"))
9143 $root.google.datastore.v1.TransactionOptions.ReadWrite.encode(message.readWrite, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
9144 if (message.readOnly != null && Object.hasOwnProperty.call(message, "readOnly"))
9145 $root.google.datastore.v1.TransactionOptions.ReadOnly.encode(message.readOnly, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
9146 return writer;
9147 };
9148
9149 /**
9150 * Encodes the specified TransactionOptions message, length delimited. Does not implicitly {@link google.datastore.v1.TransactionOptions.verify|verify} messages.
9151 * @function encodeDelimited
9152 * @memberof google.datastore.v1.TransactionOptions
9153 * @static
9154 * @param {google.datastore.v1.ITransactionOptions} message TransactionOptions message or plain object to encode
9155 * @param {$protobuf.Writer} [writer] Writer to encode to
9156 * @returns {$protobuf.Writer} Writer
9157 */
9158 TransactionOptions.encodeDelimited = function encodeDelimited(message, writer) {
9159 return this.encode(message, writer).ldelim();
9160 };
9161
9162 /**
9163 * Decodes a TransactionOptions message from the specified reader or buffer.
9164 * @function decode
9165 * @memberof google.datastore.v1.TransactionOptions
9166 * @static
9167 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9168 * @param {number} [length] Message length if known beforehand
9169 * @returns {google.datastore.v1.TransactionOptions} TransactionOptions
9170 * @throws {Error} If the payload is not a reader or valid buffer
9171 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9172 */
9173 TransactionOptions.decode = function decode(reader, length) {
9174 if (!(reader instanceof $Reader))
9175 reader = $Reader.create(reader);
9176 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.TransactionOptions();
9177 while (reader.pos < end) {
9178 var tag = reader.uint32();
9179 switch (tag >>> 3) {
9180 case 1:
9181 message.readWrite = $root.google.datastore.v1.TransactionOptions.ReadWrite.decode(reader, reader.uint32());
9182 break;
9183 case 2:
9184 message.readOnly = $root.google.datastore.v1.TransactionOptions.ReadOnly.decode(reader, reader.uint32());
9185 break;
9186 default:
9187 reader.skipType(tag & 7);
9188 break;
9189 }
9190 }
9191 return message;
9192 };
9193
9194 /**
9195 * Decodes a TransactionOptions message from the specified reader or buffer, length delimited.
9196 * @function decodeDelimited
9197 * @memberof google.datastore.v1.TransactionOptions
9198 * @static
9199 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9200 * @returns {google.datastore.v1.TransactionOptions} TransactionOptions
9201 * @throws {Error} If the payload is not a reader or valid buffer
9202 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9203 */
9204 TransactionOptions.decodeDelimited = function decodeDelimited(reader) {
9205 if (!(reader instanceof $Reader))
9206 reader = new $Reader(reader);
9207 return this.decode(reader, reader.uint32());
9208 };
9209
9210 /**
9211 * Verifies a TransactionOptions message.
9212 * @function verify
9213 * @memberof google.datastore.v1.TransactionOptions
9214 * @static
9215 * @param {Object.<string,*>} message Plain object to verify
9216 * @returns {string|null} `null` if valid, otherwise the reason why it is not
9217 */
9218 TransactionOptions.verify = function verify(message) {
9219 if (typeof message !== "object" || message === null)
9220 return "object expected";
9221 var properties = {};
9222 if (message.readWrite != null && message.hasOwnProperty("readWrite")) {
9223 properties.mode = 1;
9224 {
9225 var error = $root.google.datastore.v1.TransactionOptions.ReadWrite.verify(message.readWrite);
9226 if (error)
9227 return "readWrite." + error;
9228 }
9229 }
9230 if (message.readOnly != null && message.hasOwnProperty("readOnly")) {
9231 if (properties.mode === 1)
9232 return "mode: multiple values";
9233 properties.mode = 1;
9234 {
9235 var error = $root.google.datastore.v1.TransactionOptions.ReadOnly.verify(message.readOnly);
9236 if (error)
9237 return "readOnly." + error;
9238 }
9239 }
9240 return null;
9241 };
9242
9243 /**
9244 * Creates a TransactionOptions message from a plain object. Also converts values to their respective internal types.
9245 * @function fromObject
9246 * @memberof google.datastore.v1.TransactionOptions
9247 * @static
9248 * @param {Object.<string,*>} object Plain object
9249 * @returns {google.datastore.v1.TransactionOptions} TransactionOptions
9250 */
9251 TransactionOptions.fromObject = function fromObject(object) {
9252 if (object instanceof $root.google.datastore.v1.TransactionOptions)
9253 return object;
9254 var message = new $root.google.datastore.v1.TransactionOptions();
9255 if (object.readWrite != null) {
9256 if (typeof object.readWrite !== "object")
9257 throw TypeError(".google.datastore.v1.TransactionOptions.readWrite: object expected");
9258 message.readWrite = $root.google.datastore.v1.TransactionOptions.ReadWrite.fromObject(object.readWrite);
9259 }
9260 if (object.readOnly != null) {
9261 if (typeof object.readOnly !== "object")
9262 throw TypeError(".google.datastore.v1.TransactionOptions.readOnly: object expected");
9263 message.readOnly = $root.google.datastore.v1.TransactionOptions.ReadOnly.fromObject(object.readOnly);
9264 }
9265 return message;
9266 };
9267
9268 /**
9269 * Creates a plain object from a TransactionOptions message. Also converts values to other types if specified.
9270 * @function toObject
9271 * @memberof google.datastore.v1.TransactionOptions
9272 * @static
9273 * @param {google.datastore.v1.TransactionOptions} message TransactionOptions
9274 * @param {$protobuf.IConversionOptions} [options] Conversion options
9275 * @returns {Object.<string,*>} Plain object
9276 */
9277 TransactionOptions.toObject = function toObject(message, options) {
9278 if (!options)
9279 options = {};
9280 var object = {};
9281 if (message.readWrite != null && message.hasOwnProperty("readWrite")) {
9282 object.readWrite = $root.google.datastore.v1.TransactionOptions.ReadWrite.toObject(message.readWrite, options);
9283 if (options.oneofs)
9284 object.mode = "readWrite";
9285 }
9286 if (message.readOnly != null && message.hasOwnProperty("readOnly")) {
9287 object.readOnly = $root.google.datastore.v1.TransactionOptions.ReadOnly.toObject(message.readOnly, options);
9288 if (options.oneofs)
9289 object.mode = "readOnly";
9290 }
9291 return object;
9292 };
9293
9294 /**
9295 * Converts this TransactionOptions to JSON.
9296 * @function toJSON
9297 * @memberof google.datastore.v1.TransactionOptions
9298 * @instance
9299 * @returns {Object.<string,*>} JSON object
9300 */
9301 TransactionOptions.prototype.toJSON = function toJSON() {
9302 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
9303 };
9304
9305 TransactionOptions.ReadWrite = (function() {
9306
9307 /**
9308 * Properties of a ReadWrite.
9309 * @memberof google.datastore.v1.TransactionOptions
9310 * @interface IReadWrite
9311 * @property {Uint8Array|null} [previousTransaction] ReadWrite previousTransaction
9312 */
9313
9314 /**
9315 * Constructs a new ReadWrite.
9316 * @memberof google.datastore.v1.TransactionOptions
9317 * @classdesc Represents a ReadWrite.
9318 * @implements IReadWrite
9319 * @constructor
9320 * @param {google.datastore.v1.TransactionOptions.IReadWrite=} [properties] Properties to set
9321 */
9322 function ReadWrite(properties) {
9323 if (properties)
9324 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9325 if (properties[keys[i]] != null)
9326 this[keys[i]] = properties[keys[i]];
9327 }
9328
9329 /**
9330 * ReadWrite previousTransaction.
9331 * @member {Uint8Array} previousTransaction
9332 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9333 * @instance
9334 */
9335 ReadWrite.prototype.previousTransaction = $util.newBuffer([]);
9336
9337 /**
9338 * Creates a new ReadWrite instance using the specified properties.
9339 * @function create
9340 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9341 * @static
9342 * @param {google.datastore.v1.TransactionOptions.IReadWrite=} [properties] Properties to set
9343 * @returns {google.datastore.v1.TransactionOptions.ReadWrite} ReadWrite instance
9344 */
9345 ReadWrite.create = function create(properties) {
9346 return new ReadWrite(properties);
9347 };
9348
9349 /**
9350 * Encodes the specified ReadWrite message. Does not implicitly {@link google.datastore.v1.TransactionOptions.ReadWrite.verify|verify} messages.
9351 * @function encode
9352 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9353 * @static
9354 * @param {google.datastore.v1.TransactionOptions.IReadWrite} message ReadWrite message or plain object to encode
9355 * @param {$protobuf.Writer} [writer] Writer to encode to
9356 * @returns {$protobuf.Writer} Writer
9357 */
9358 ReadWrite.encode = function encode(message, writer) {
9359 if (!writer)
9360 writer = $Writer.create();
9361 if (message.previousTransaction != null && Object.hasOwnProperty.call(message, "previousTransaction"))
9362 writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.previousTransaction);
9363 return writer;
9364 };
9365
9366 /**
9367 * Encodes the specified ReadWrite message, length delimited. Does not implicitly {@link google.datastore.v1.TransactionOptions.ReadWrite.verify|verify} messages.
9368 * @function encodeDelimited
9369 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9370 * @static
9371 * @param {google.datastore.v1.TransactionOptions.IReadWrite} message ReadWrite message or plain object to encode
9372 * @param {$protobuf.Writer} [writer] Writer to encode to
9373 * @returns {$protobuf.Writer} Writer
9374 */
9375 ReadWrite.encodeDelimited = function encodeDelimited(message, writer) {
9376 return this.encode(message, writer).ldelim();
9377 };
9378
9379 /**
9380 * Decodes a ReadWrite message from the specified reader or buffer.
9381 * @function decode
9382 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9383 * @static
9384 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9385 * @param {number} [length] Message length if known beforehand
9386 * @returns {google.datastore.v1.TransactionOptions.ReadWrite} ReadWrite
9387 * @throws {Error} If the payload is not a reader or valid buffer
9388 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9389 */
9390 ReadWrite.decode = function decode(reader, length) {
9391 if (!(reader instanceof $Reader))
9392 reader = $Reader.create(reader);
9393 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.TransactionOptions.ReadWrite();
9394 while (reader.pos < end) {
9395 var tag = reader.uint32();
9396 switch (tag >>> 3) {
9397 case 1:
9398 message.previousTransaction = reader.bytes();
9399 break;
9400 default:
9401 reader.skipType(tag & 7);
9402 break;
9403 }
9404 }
9405 return message;
9406 };
9407
9408 /**
9409 * Decodes a ReadWrite message from the specified reader or buffer, length delimited.
9410 * @function decodeDelimited
9411 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9412 * @static
9413 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9414 * @returns {google.datastore.v1.TransactionOptions.ReadWrite} ReadWrite
9415 * @throws {Error} If the payload is not a reader or valid buffer
9416 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9417 */
9418 ReadWrite.decodeDelimited = function decodeDelimited(reader) {
9419 if (!(reader instanceof $Reader))
9420 reader = new $Reader(reader);
9421 return this.decode(reader, reader.uint32());
9422 };
9423
9424 /**
9425 * Verifies a ReadWrite message.
9426 * @function verify
9427 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9428 * @static
9429 * @param {Object.<string,*>} message Plain object to verify
9430 * @returns {string|null} `null` if valid, otherwise the reason why it is not
9431 */
9432 ReadWrite.verify = function verify(message) {
9433 if (typeof message !== "object" || message === null)
9434 return "object expected";
9435 if (message.previousTransaction != null && message.hasOwnProperty("previousTransaction"))
9436 if (!(message.previousTransaction && typeof message.previousTransaction.length === "number" || $util.isString(message.previousTransaction)))
9437 return "previousTransaction: buffer expected";
9438 return null;
9439 };
9440
9441 /**
9442 * Creates a ReadWrite message from a plain object. Also converts values to their respective internal types.
9443 * @function fromObject
9444 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9445 * @static
9446 * @param {Object.<string,*>} object Plain object
9447 * @returns {google.datastore.v1.TransactionOptions.ReadWrite} ReadWrite
9448 */
9449 ReadWrite.fromObject = function fromObject(object) {
9450 if (object instanceof $root.google.datastore.v1.TransactionOptions.ReadWrite)
9451 return object;
9452 var message = new $root.google.datastore.v1.TransactionOptions.ReadWrite();
9453 if (object.previousTransaction != null)
9454 if (typeof object.previousTransaction === "string")
9455 $util.base64.decode(object.previousTransaction, message.previousTransaction = $util.newBuffer($util.base64.length(object.previousTransaction)), 0);
9456 else if (object.previousTransaction.length)
9457 message.previousTransaction = object.previousTransaction;
9458 return message;
9459 };
9460
9461 /**
9462 * Creates a plain object from a ReadWrite message. Also converts values to other types if specified.
9463 * @function toObject
9464 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9465 * @static
9466 * @param {google.datastore.v1.TransactionOptions.ReadWrite} message ReadWrite
9467 * @param {$protobuf.IConversionOptions} [options] Conversion options
9468 * @returns {Object.<string,*>} Plain object
9469 */
9470 ReadWrite.toObject = function toObject(message, options) {
9471 if (!options)
9472 options = {};
9473 var object = {};
9474 if (options.defaults)
9475 if (options.bytes === String)
9476 object.previousTransaction = "";
9477 else {
9478 object.previousTransaction = [];
9479 if (options.bytes !== Array)
9480 object.previousTransaction = $util.newBuffer(object.previousTransaction);
9481 }
9482 if (message.previousTransaction != null && message.hasOwnProperty("previousTransaction"))
9483 object.previousTransaction = options.bytes === String ? $util.base64.encode(message.previousTransaction, 0, message.previousTransaction.length) : options.bytes === Array ? Array.prototype.slice.call(message.previousTransaction) : message.previousTransaction;
9484 return object;
9485 };
9486
9487 /**
9488 * Converts this ReadWrite to JSON.
9489 * @function toJSON
9490 * @memberof google.datastore.v1.TransactionOptions.ReadWrite
9491 * @instance
9492 * @returns {Object.<string,*>} JSON object
9493 */
9494 ReadWrite.prototype.toJSON = function toJSON() {
9495 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
9496 };
9497
9498 return ReadWrite;
9499 })();
9500
9501 TransactionOptions.ReadOnly = (function() {
9502
9503 /**
9504 * Properties of a ReadOnly.
9505 * @memberof google.datastore.v1.TransactionOptions
9506 * @interface IReadOnly
9507 */
9508
9509 /**
9510 * Constructs a new ReadOnly.
9511 * @memberof google.datastore.v1.TransactionOptions
9512 * @classdesc Represents a ReadOnly.
9513 * @implements IReadOnly
9514 * @constructor
9515 * @param {google.datastore.v1.TransactionOptions.IReadOnly=} [properties] Properties to set
9516 */
9517 function ReadOnly(properties) {
9518 if (properties)
9519 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9520 if (properties[keys[i]] != null)
9521 this[keys[i]] = properties[keys[i]];
9522 }
9523
9524 /**
9525 * Creates a new ReadOnly instance using the specified properties.
9526 * @function create
9527 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9528 * @static
9529 * @param {google.datastore.v1.TransactionOptions.IReadOnly=} [properties] Properties to set
9530 * @returns {google.datastore.v1.TransactionOptions.ReadOnly} ReadOnly instance
9531 */
9532 ReadOnly.create = function create(properties) {
9533 return new ReadOnly(properties);
9534 };
9535
9536 /**
9537 * Encodes the specified ReadOnly message. Does not implicitly {@link google.datastore.v1.TransactionOptions.ReadOnly.verify|verify} messages.
9538 * @function encode
9539 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9540 * @static
9541 * @param {google.datastore.v1.TransactionOptions.IReadOnly} message ReadOnly message or plain object to encode
9542 * @param {$protobuf.Writer} [writer] Writer to encode to
9543 * @returns {$protobuf.Writer} Writer
9544 */
9545 ReadOnly.encode = function encode(message, writer) {
9546 if (!writer)
9547 writer = $Writer.create();
9548 return writer;
9549 };
9550
9551 /**
9552 * Encodes the specified ReadOnly message, length delimited. Does not implicitly {@link google.datastore.v1.TransactionOptions.ReadOnly.verify|verify} messages.
9553 * @function encodeDelimited
9554 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9555 * @static
9556 * @param {google.datastore.v1.TransactionOptions.IReadOnly} message ReadOnly message or plain object to encode
9557 * @param {$protobuf.Writer} [writer] Writer to encode to
9558 * @returns {$protobuf.Writer} Writer
9559 */
9560 ReadOnly.encodeDelimited = function encodeDelimited(message, writer) {
9561 return this.encode(message, writer).ldelim();
9562 };
9563
9564 /**
9565 * Decodes a ReadOnly message from the specified reader or buffer.
9566 * @function decode
9567 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9568 * @static
9569 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9570 * @param {number} [length] Message length if known beforehand
9571 * @returns {google.datastore.v1.TransactionOptions.ReadOnly} ReadOnly
9572 * @throws {Error} If the payload is not a reader or valid buffer
9573 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9574 */
9575 ReadOnly.decode = function decode(reader, length) {
9576 if (!(reader instanceof $Reader))
9577 reader = $Reader.create(reader);
9578 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.TransactionOptions.ReadOnly();
9579 while (reader.pos < end) {
9580 var tag = reader.uint32();
9581 switch (tag >>> 3) {
9582 default:
9583 reader.skipType(tag & 7);
9584 break;
9585 }
9586 }
9587 return message;
9588 };
9589
9590 /**
9591 * Decodes a ReadOnly message from the specified reader or buffer, length delimited.
9592 * @function decodeDelimited
9593 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9594 * @static
9595 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9596 * @returns {google.datastore.v1.TransactionOptions.ReadOnly} ReadOnly
9597 * @throws {Error} If the payload is not a reader or valid buffer
9598 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9599 */
9600 ReadOnly.decodeDelimited = function decodeDelimited(reader) {
9601 if (!(reader instanceof $Reader))
9602 reader = new $Reader(reader);
9603 return this.decode(reader, reader.uint32());
9604 };
9605
9606 /**
9607 * Verifies a ReadOnly message.
9608 * @function verify
9609 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9610 * @static
9611 * @param {Object.<string,*>} message Plain object to verify
9612 * @returns {string|null} `null` if valid, otherwise the reason why it is not
9613 */
9614 ReadOnly.verify = function verify(message) {
9615 if (typeof message !== "object" || message === null)
9616 return "object expected";
9617 return null;
9618 };
9619
9620 /**
9621 * Creates a ReadOnly message from a plain object. Also converts values to their respective internal types.
9622 * @function fromObject
9623 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9624 * @static
9625 * @param {Object.<string,*>} object Plain object
9626 * @returns {google.datastore.v1.TransactionOptions.ReadOnly} ReadOnly
9627 */
9628 ReadOnly.fromObject = function fromObject(object) {
9629 if (object instanceof $root.google.datastore.v1.TransactionOptions.ReadOnly)
9630 return object;
9631 return new $root.google.datastore.v1.TransactionOptions.ReadOnly();
9632 };
9633
9634 /**
9635 * Creates a plain object from a ReadOnly message. Also converts values to other types if specified.
9636 * @function toObject
9637 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9638 * @static
9639 * @param {google.datastore.v1.TransactionOptions.ReadOnly} message ReadOnly
9640 * @param {$protobuf.IConversionOptions} [options] Conversion options
9641 * @returns {Object.<string,*>} Plain object
9642 */
9643 ReadOnly.toObject = function toObject() {
9644 return {};
9645 };
9646
9647 /**
9648 * Converts this ReadOnly to JSON.
9649 * @function toJSON
9650 * @memberof google.datastore.v1.TransactionOptions.ReadOnly
9651 * @instance
9652 * @returns {Object.<string,*>} JSON object
9653 */
9654 ReadOnly.prototype.toJSON = function toJSON() {
9655 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
9656 };
9657
9658 return ReadOnly;
9659 })();
9660
9661 return TransactionOptions;
9662 })();
9663
9664 v1.PartitionId = (function() {
9665
9666 /**
9667 * Properties of a PartitionId.
9668 * @memberof google.datastore.v1
9669 * @interface IPartitionId
9670 * @property {string|null} [projectId] PartitionId projectId
9671 * @property {string|null} [namespaceId] PartitionId namespaceId
9672 */
9673
9674 /**
9675 * Constructs a new PartitionId.
9676 * @memberof google.datastore.v1
9677 * @classdesc Represents a PartitionId.
9678 * @implements IPartitionId
9679 * @constructor
9680 * @param {google.datastore.v1.IPartitionId=} [properties] Properties to set
9681 */
9682 function PartitionId(properties) {
9683 if (properties)
9684 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9685 if (properties[keys[i]] != null)
9686 this[keys[i]] = properties[keys[i]];
9687 }
9688
9689 /**
9690 * PartitionId projectId.
9691 * @member {string} projectId
9692 * @memberof google.datastore.v1.PartitionId
9693 * @instance
9694 */
9695 PartitionId.prototype.projectId = "";
9696
9697 /**
9698 * PartitionId namespaceId.
9699 * @member {string} namespaceId
9700 * @memberof google.datastore.v1.PartitionId
9701 * @instance
9702 */
9703 PartitionId.prototype.namespaceId = "";
9704
9705 /**
9706 * Creates a new PartitionId instance using the specified properties.
9707 * @function create
9708 * @memberof google.datastore.v1.PartitionId
9709 * @static
9710 * @param {google.datastore.v1.IPartitionId=} [properties] Properties to set
9711 * @returns {google.datastore.v1.PartitionId} PartitionId instance
9712 */
9713 PartitionId.create = function create(properties) {
9714 return new PartitionId(properties);
9715 };
9716
9717 /**
9718 * Encodes the specified PartitionId message. Does not implicitly {@link google.datastore.v1.PartitionId.verify|verify} messages.
9719 * @function encode
9720 * @memberof google.datastore.v1.PartitionId
9721 * @static
9722 * @param {google.datastore.v1.IPartitionId} message PartitionId message or plain object to encode
9723 * @param {$protobuf.Writer} [writer] Writer to encode to
9724 * @returns {$protobuf.Writer} Writer
9725 */
9726 PartitionId.encode = function encode(message, writer) {
9727 if (!writer)
9728 writer = $Writer.create();
9729 if (message.projectId != null && Object.hasOwnProperty.call(message, "projectId"))
9730 writer.uint32(/* id 2, wireType 2 =*/18).string(message.projectId);
9731 if (message.namespaceId != null && Object.hasOwnProperty.call(message, "namespaceId"))
9732 writer.uint32(/* id 4, wireType 2 =*/34).string(message.namespaceId);
9733 return writer;
9734 };
9735
9736 /**
9737 * Encodes the specified PartitionId message, length delimited. Does not implicitly {@link google.datastore.v1.PartitionId.verify|verify} messages.
9738 * @function encodeDelimited
9739 * @memberof google.datastore.v1.PartitionId
9740 * @static
9741 * @param {google.datastore.v1.IPartitionId} message PartitionId message or plain object to encode
9742 * @param {$protobuf.Writer} [writer] Writer to encode to
9743 * @returns {$protobuf.Writer} Writer
9744 */
9745 PartitionId.encodeDelimited = function encodeDelimited(message, writer) {
9746 return this.encode(message, writer).ldelim();
9747 };
9748
9749 /**
9750 * Decodes a PartitionId message from the specified reader or buffer.
9751 * @function decode
9752 * @memberof google.datastore.v1.PartitionId
9753 * @static
9754 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9755 * @param {number} [length] Message length if known beforehand
9756 * @returns {google.datastore.v1.PartitionId} PartitionId
9757 * @throws {Error} If the payload is not a reader or valid buffer
9758 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9759 */
9760 PartitionId.decode = function decode(reader, length) {
9761 if (!(reader instanceof $Reader))
9762 reader = $Reader.create(reader);
9763 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.PartitionId();
9764 while (reader.pos < end) {
9765 var tag = reader.uint32();
9766 switch (tag >>> 3) {
9767 case 2:
9768 message.projectId = reader.string();
9769 break;
9770 case 4:
9771 message.namespaceId = reader.string();
9772 break;
9773 default:
9774 reader.skipType(tag & 7);
9775 break;
9776 }
9777 }
9778 return message;
9779 };
9780
9781 /**
9782 * Decodes a PartitionId message from the specified reader or buffer, length delimited.
9783 * @function decodeDelimited
9784 * @memberof google.datastore.v1.PartitionId
9785 * @static
9786 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9787 * @returns {google.datastore.v1.PartitionId} PartitionId
9788 * @throws {Error} If the payload is not a reader or valid buffer
9789 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9790 */
9791 PartitionId.decodeDelimited = function decodeDelimited(reader) {
9792 if (!(reader instanceof $Reader))
9793 reader = new $Reader(reader);
9794 return this.decode(reader, reader.uint32());
9795 };
9796
9797 /**
9798 * Verifies a PartitionId message.
9799 * @function verify
9800 * @memberof google.datastore.v1.PartitionId
9801 * @static
9802 * @param {Object.<string,*>} message Plain object to verify
9803 * @returns {string|null} `null` if valid, otherwise the reason why it is not
9804 */
9805 PartitionId.verify = function verify(message) {
9806 if (typeof message !== "object" || message === null)
9807 return "object expected";
9808 if (message.projectId != null && message.hasOwnProperty("projectId"))
9809 if (!$util.isString(message.projectId))
9810 return "projectId: string expected";
9811 if (message.namespaceId != null && message.hasOwnProperty("namespaceId"))
9812 if (!$util.isString(message.namespaceId))
9813 return "namespaceId: string expected";
9814 return null;
9815 };
9816
9817 /**
9818 * Creates a PartitionId message from a plain object. Also converts values to their respective internal types.
9819 * @function fromObject
9820 * @memberof google.datastore.v1.PartitionId
9821 * @static
9822 * @param {Object.<string,*>} object Plain object
9823 * @returns {google.datastore.v1.PartitionId} PartitionId
9824 */
9825 PartitionId.fromObject = function fromObject(object) {
9826 if (object instanceof $root.google.datastore.v1.PartitionId)
9827 return object;
9828 var message = new $root.google.datastore.v1.PartitionId();
9829 if (object.projectId != null)
9830 message.projectId = String(object.projectId);
9831 if (object.namespaceId != null)
9832 message.namespaceId = String(object.namespaceId);
9833 return message;
9834 };
9835
9836 /**
9837 * Creates a plain object from a PartitionId message. Also converts values to other types if specified.
9838 * @function toObject
9839 * @memberof google.datastore.v1.PartitionId
9840 * @static
9841 * @param {google.datastore.v1.PartitionId} message PartitionId
9842 * @param {$protobuf.IConversionOptions} [options] Conversion options
9843 * @returns {Object.<string,*>} Plain object
9844 */
9845 PartitionId.toObject = function toObject(message, options) {
9846 if (!options)
9847 options = {};
9848 var object = {};
9849 if (options.defaults) {
9850 object.projectId = "";
9851 object.namespaceId = "";
9852 }
9853 if (message.projectId != null && message.hasOwnProperty("projectId"))
9854 object.projectId = message.projectId;
9855 if (message.namespaceId != null && message.hasOwnProperty("namespaceId"))
9856 object.namespaceId = message.namespaceId;
9857 return object;
9858 };
9859
9860 /**
9861 * Converts this PartitionId to JSON.
9862 * @function toJSON
9863 * @memberof google.datastore.v1.PartitionId
9864 * @instance
9865 * @returns {Object.<string,*>} JSON object
9866 */
9867 PartitionId.prototype.toJSON = function toJSON() {
9868 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
9869 };
9870
9871 return PartitionId;
9872 })();
9873
9874 v1.Key = (function() {
9875
9876 /**
9877 * Properties of a Key.
9878 * @memberof google.datastore.v1
9879 * @interface IKey
9880 * @property {google.datastore.v1.IPartitionId|null} [partitionId] Key partitionId
9881 * @property {Array.<google.datastore.v1.Key.IPathElement>|null} [path] Key path
9882 */
9883
9884 /**
9885 * Constructs a new Key.
9886 * @memberof google.datastore.v1
9887 * @classdesc Represents a Key.
9888 * @implements IKey
9889 * @constructor
9890 * @param {google.datastore.v1.IKey=} [properties] Properties to set
9891 */
9892 function Key(properties) {
9893 this.path = [];
9894 if (properties)
9895 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
9896 if (properties[keys[i]] != null)
9897 this[keys[i]] = properties[keys[i]];
9898 }
9899
9900 /**
9901 * Key partitionId.
9902 * @member {google.datastore.v1.IPartitionId|null|undefined} partitionId
9903 * @memberof google.datastore.v1.Key
9904 * @instance
9905 */
9906 Key.prototype.partitionId = null;
9907
9908 /**
9909 * Key path.
9910 * @member {Array.<google.datastore.v1.Key.IPathElement>} path
9911 * @memberof google.datastore.v1.Key
9912 * @instance
9913 */
9914 Key.prototype.path = $util.emptyArray;
9915
9916 /**
9917 * Creates a new Key instance using the specified properties.
9918 * @function create
9919 * @memberof google.datastore.v1.Key
9920 * @static
9921 * @param {google.datastore.v1.IKey=} [properties] Properties to set
9922 * @returns {google.datastore.v1.Key} Key instance
9923 */
9924 Key.create = function create(properties) {
9925 return new Key(properties);
9926 };
9927
9928 /**
9929 * Encodes the specified Key message. Does not implicitly {@link google.datastore.v1.Key.verify|verify} messages.
9930 * @function encode
9931 * @memberof google.datastore.v1.Key
9932 * @static
9933 * @param {google.datastore.v1.IKey} message Key message or plain object to encode
9934 * @param {$protobuf.Writer} [writer] Writer to encode to
9935 * @returns {$protobuf.Writer} Writer
9936 */
9937 Key.encode = function encode(message, writer) {
9938 if (!writer)
9939 writer = $Writer.create();
9940 if (message.partitionId != null && Object.hasOwnProperty.call(message, "partitionId"))
9941 $root.google.datastore.v1.PartitionId.encode(message.partitionId, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
9942 if (message.path != null && message.path.length)
9943 for (var i = 0; i < message.path.length; ++i)
9944 $root.google.datastore.v1.Key.PathElement.encode(message.path[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
9945 return writer;
9946 };
9947
9948 /**
9949 * Encodes the specified Key message, length delimited. Does not implicitly {@link google.datastore.v1.Key.verify|verify} messages.
9950 * @function encodeDelimited
9951 * @memberof google.datastore.v1.Key
9952 * @static
9953 * @param {google.datastore.v1.IKey} message Key message or plain object to encode
9954 * @param {$protobuf.Writer} [writer] Writer to encode to
9955 * @returns {$protobuf.Writer} Writer
9956 */
9957 Key.encodeDelimited = function encodeDelimited(message, writer) {
9958 return this.encode(message, writer).ldelim();
9959 };
9960
9961 /**
9962 * Decodes a Key message from the specified reader or buffer.
9963 * @function decode
9964 * @memberof google.datastore.v1.Key
9965 * @static
9966 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
9967 * @param {number} [length] Message length if known beforehand
9968 * @returns {google.datastore.v1.Key} Key
9969 * @throws {Error} If the payload is not a reader or valid buffer
9970 * @throws {$protobuf.util.ProtocolError} If required fields are missing
9971 */
9972 Key.decode = function decode(reader, length) {
9973 if (!(reader instanceof $Reader))
9974 reader = $Reader.create(reader);
9975 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.Key();
9976 while (reader.pos < end) {
9977 var tag = reader.uint32();
9978 switch (tag >>> 3) {
9979 case 1:
9980 message.partitionId = $root.google.datastore.v1.PartitionId.decode(reader, reader.uint32());
9981 break;
9982 case 2:
9983 if (!(message.path && message.path.length))
9984 message.path = [];
9985 message.path.push($root.google.datastore.v1.Key.PathElement.decode(reader, reader.uint32()));
9986 break;
9987 default:
9988 reader.skipType(tag & 7);
9989 break;
9990 }
9991 }
9992 return message;
9993 };
9994
9995 /**
9996 * Decodes a Key message from the specified reader or buffer, length delimited.
9997 * @function decodeDelimited
9998 * @memberof google.datastore.v1.Key
9999 * @static
10000 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10001 * @returns {google.datastore.v1.Key} Key
10002 * @throws {Error} If the payload is not a reader or valid buffer
10003 * @throws {$protobuf.util.ProtocolError} If required fields are missing
10004 */
10005 Key.decodeDelimited = function decodeDelimited(reader) {
10006 if (!(reader instanceof $Reader))
10007 reader = new $Reader(reader);
10008 return this.decode(reader, reader.uint32());
10009 };
10010
10011 /**
10012 * Verifies a Key message.
10013 * @function verify
10014 * @memberof google.datastore.v1.Key
10015 * @static
10016 * @param {Object.<string,*>} message Plain object to verify
10017 * @returns {string|null} `null` if valid, otherwise the reason why it is not
10018 */
10019 Key.verify = function verify(message) {
10020 if (typeof message !== "object" || message === null)
10021 return "object expected";
10022 if (message.partitionId != null && message.hasOwnProperty("partitionId")) {
10023 var error = $root.google.datastore.v1.PartitionId.verify(message.partitionId);
10024 if (error)
10025 return "partitionId." + error;
10026 }
10027 if (message.path != null && message.hasOwnProperty("path")) {
10028 if (!Array.isArray(message.path))
10029 return "path: array expected";
10030 for (var i = 0; i < message.path.length; ++i) {
10031 var error = $root.google.datastore.v1.Key.PathElement.verify(message.path[i]);
10032 if (error)
10033 return "path." + error;
10034 }
10035 }
10036 return null;
10037 };
10038
10039 /**
10040 * Creates a Key message from a plain object. Also converts values to their respective internal types.
10041 * @function fromObject
10042 * @memberof google.datastore.v1.Key
10043 * @static
10044 * @param {Object.<string,*>} object Plain object
10045 * @returns {google.datastore.v1.Key} Key
10046 */
10047 Key.fromObject = function fromObject(object) {
10048 if (object instanceof $root.google.datastore.v1.Key)
10049 return object;
10050 var message = new $root.google.datastore.v1.Key();
10051 if (object.partitionId != null) {
10052 if (typeof object.partitionId !== "object")
10053 throw TypeError(".google.datastore.v1.Key.partitionId: object expected");
10054 message.partitionId = $root.google.datastore.v1.PartitionId.fromObject(object.partitionId);
10055 }
10056 if (object.path) {
10057 if (!Array.isArray(object.path))
10058 throw TypeError(".google.datastore.v1.Key.path: array expected");
10059 message.path = [];
10060 for (var i = 0; i < object.path.length; ++i) {
10061 if (typeof object.path[i] !== "object")
10062 throw TypeError(".google.datastore.v1.Key.path: object expected");
10063 message.path[i] = $root.google.datastore.v1.Key.PathElement.fromObject(object.path[i]);
10064 }
10065 }
10066 return message;
10067 };
10068
10069 /**
10070 * Creates a plain object from a Key message. Also converts values to other types if specified.
10071 * @function toObject
10072 * @memberof google.datastore.v1.Key
10073 * @static
10074 * @param {google.datastore.v1.Key} message Key
10075 * @param {$protobuf.IConversionOptions} [options] Conversion options
10076 * @returns {Object.<string,*>} Plain object
10077 */
10078 Key.toObject = function toObject(message, options) {
10079 if (!options)
10080 options = {};
10081 var object = {};
10082 if (options.arrays || options.defaults)
10083 object.path = [];
10084 if (options.defaults)
10085 object.partitionId = null;
10086 if (message.partitionId != null && message.hasOwnProperty("partitionId"))
10087 object.partitionId = $root.google.datastore.v1.PartitionId.toObject(message.partitionId, options);
10088 if (message.path && message.path.length) {
10089 object.path = [];
10090 for (var j = 0; j < message.path.length; ++j)
10091 object.path[j] = $root.google.datastore.v1.Key.PathElement.toObject(message.path[j], options);
10092 }
10093 return object;
10094 };
10095
10096 /**
10097 * Converts this Key to JSON.
10098 * @function toJSON
10099 * @memberof google.datastore.v1.Key
10100 * @instance
10101 * @returns {Object.<string,*>} JSON object
10102 */
10103 Key.prototype.toJSON = function toJSON() {
10104 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
10105 };
10106
10107 Key.PathElement = (function() {
10108
10109 /**
10110 * Properties of a PathElement.
10111 * @memberof google.datastore.v1.Key
10112 * @interface IPathElement
10113 * @property {string|null} [kind] PathElement kind
10114 * @property {number|Long|null} [id] PathElement id
10115 * @property {string|null} [name] PathElement name
10116 */
10117
10118 /**
10119 * Constructs a new PathElement.
10120 * @memberof google.datastore.v1.Key
10121 * @classdesc Represents a PathElement.
10122 * @implements IPathElement
10123 * @constructor
10124 * @param {google.datastore.v1.Key.IPathElement=} [properties] Properties to set
10125 */
10126 function PathElement(properties) {
10127 if (properties)
10128 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
10129 if (properties[keys[i]] != null)
10130 this[keys[i]] = properties[keys[i]];
10131 }
10132
10133 /**
10134 * PathElement kind.
10135 * @member {string} kind
10136 * @memberof google.datastore.v1.Key.PathElement
10137 * @instance
10138 */
10139 PathElement.prototype.kind = "";
10140
10141 /**
10142 * PathElement id.
10143 * @member {number|Long} id
10144 * @memberof google.datastore.v1.Key.PathElement
10145 * @instance
10146 */
10147 PathElement.prototype.id = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
10148
10149 /**
10150 * PathElement name.
10151 * @member {string} name
10152 * @memberof google.datastore.v1.Key.PathElement
10153 * @instance
10154 */
10155 PathElement.prototype.name = "";
10156
10157 // OneOf field names bound to virtual getters and setters
10158 var $oneOfFields;
10159
10160 /**
10161 * PathElement idType.
10162 * @member {"id"|"name"|undefined} idType
10163 * @memberof google.datastore.v1.Key.PathElement
10164 * @instance
10165 */
10166 Object.defineProperty(PathElement.prototype, "idType", {
10167 get: $util.oneOfGetter($oneOfFields = ["id", "name"]),
10168 set: $util.oneOfSetter($oneOfFields)
10169 });
10170
10171 /**
10172 * Creates a new PathElement instance using the specified properties.
10173 * @function create
10174 * @memberof google.datastore.v1.Key.PathElement
10175 * @static
10176 * @param {google.datastore.v1.Key.IPathElement=} [properties] Properties to set
10177 * @returns {google.datastore.v1.Key.PathElement} PathElement instance
10178 */
10179 PathElement.create = function create(properties) {
10180 return new PathElement(properties);
10181 };
10182
10183 /**
10184 * Encodes the specified PathElement message. Does not implicitly {@link google.datastore.v1.Key.PathElement.verify|verify} messages.
10185 * @function encode
10186 * @memberof google.datastore.v1.Key.PathElement
10187 * @static
10188 * @param {google.datastore.v1.Key.IPathElement} message PathElement message or plain object to encode
10189 * @param {$protobuf.Writer} [writer] Writer to encode to
10190 * @returns {$protobuf.Writer} Writer
10191 */
10192 PathElement.encode = function encode(message, writer) {
10193 if (!writer)
10194 writer = $Writer.create();
10195 if (message.kind != null && Object.hasOwnProperty.call(message, "kind"))
10196 writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind);
10197 if (message.id != null && Object.hasOwnProperty.call(message, "id"))
10198 writer.uint32(/* id 2, wireType 0 =*/16).int64(message.id);
10199 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
10200 writer.uint32(/* id 3, wireType 2 =*/26).string(message.name);
10201 return writer;
10202 };
10203
10204 /**
10205 * Encodes the specified PathElement message, length delimited. Does not implicitly {@link google.datastore.v1.Key.PathElement.verify|verify} messages.
10206 * @function encodeDelimited
10207 * @memberof google.datastore.v1.Key.PathElement
10208 * @static
10209 * @param {google.datastore.v1.Key.IPathElement} message PathElement message or plain object to encode
10210 * @param {$protobuf.Writer} [writer] Writer to encode to
10211 * @returns {$protobuf.Writer} Writer
10212 */
10213 PathElement.encodeDelimited = function encodeDelimited(message, writer) {
10214 return this.encode(message, writer).ldelim();
10215 };
10216
10217 /**
10218 * Decodes a PathElement message from the specified reader or buffer.
10219 * @function decode
10220 * @memberof google.datastore.v1.Key.PathElement
10221 * @static
10222 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10223 * @param {number} [length] Message length if known beforehand
10224 * @returns {google.datastore.v1.Key.PathElement} PathElement
10225 * @throws {Error} If the payload is not a reader or valid buffer
10226 * @throws {$protobuf.util.ProtocolError} If required fields are missing
10227 */
10228 PathElement.decode = function decode(reader, length) {
10229 if (!(reader instanceof $Reader))
10230 reader = $Reader.create(reader);
10231 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.Key.PathElement();
10232 while (reader.pos < end) {
10233 var tag = reader.uint32();
10234 switch (tag >>> 3) {
10235 case 1:
10236 message.kind = reader.string();
10237 break;
10238 case 2:
10239 message.id = reader.int64();
10240 break;
10241 case 3:
10242 message.name = reader.string();
10243 break;
10244 default:
10245 reader.skipType(tag & 7);
10246 break;
10247 }
10248 }
10249 return message;
10250 };
10251
10252 /**
10253 * Decodes a PathElement message from the specified reader or buffer, length delimited.
10254 * @function decodeDelimited
10255 * @memberof google.datastore.v1.Key.PathElement
10256 * @static
10257 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10258 * @returns {google.datastore.v1.Key.PathElement} PathElement
10259 * @throws {Error} If the payload is not a reader or valid buffer
10260 * @throws {$protobuf.util.ProtocolError} If required fields are missing
10261 */
10262 PathElement.decodeDelimited = function decodeDelimited(reader) {
10263 if (!(reader instanceof $Reader))
10264 reader = new $Reader(reader);
10265 return this.decode(reader, reader.uint32());
10266 };
10267
10268 /**
10269 * Verifies a PathElement message.
10270 * @function verify
10271 * @memberof google.datastore.v1.Key.PathElement
10272 * @static
10273 * @param {Object.<string,*>} message Plain object to verify
10274 * @returns {string|null} `null` if valid, otherwise the reason why it is not
10275 */
10276 PathElement.verify = function verify(message) {
10277 if (typeof message !== "object" || message === null)
10278 return "object expected";
10279 var properties = {};
10280 if (message.kind != null && message.hasOwnProperty("kind"))
10281 if (!$util.isString(message.kind))
10282 return "kind: string expected";
10283 if (message.id != null && message.hasOwnProperty("id")) {
10284 properties.idType = 1;
10285 if (!$util.isInteger(message.id) && !(message.id && $util.isInteger(message.id.low) && $util.isInteger(message.id.high)))
10286 return "id: integer|Long expected";
10287 }
10288 if (message.name != null && message.hasOwnProperty("name")) {
10289 if (properties.idType === 1)
10290 return "idType: multiple values";
10291 properties.idType = 1;
10292 if (!$util.isString(message.name))
10293 return "name: string expected";
10294 }
10295 return null;
10296 };
10297
10298 /**
10299 * Creates a PathElement message from a plain object. Also converts values to their respective internal types.
10300 * @function fromObject
10301 * @memberof google.datastore.v1.Key.PathElement
10302 * @static
10303 * @param {Object.<string,*>} object Plain object
10304 * @returns {google.datastore.v1.Key.PathElement} PathElement
10305 */
10306 PathElement.fromObject = function fromObject(object) {
10307 if (object instanceof $root.google.datastore.v1.Key.PathElement)
10308 return object;
10309 var message = new $root.google.datastore.v1.Key.PathElement();
10310 if (object.kind != null)
10311 message.kind = String(object.kind);
10312 if (object.id != null)
10313 if ($util.Long)
10314 (message.id = $util.Long.fromValue(object.id)).unsigned = false;
10315 else if (typeof object.id === "string")
10316 message.id = parseInt(object.id, 10);
10317 else if (typeof object.id === "number")
10318 message.id = object.id;
10319 else if (typeof object.id === "object")
10320 message.id = new $util.LongBits(object.id.low >>> 0, object.id.high >>> 0).toNumber();
10321 if (object.name != null)
10322 message.name = String(object.name);
10323 return message;
10324 };
10325
10326 /**
10327 * Creates a plain object from a PathElement message. Also converts values to other types if specified.
10328 * @function toObject
10329 * @memberof google.datastore.v1.Key.PathElement
10330 * @static
10331 * @param {google.datastore.v1.Key.PathElement} message PathElement
10332 * @param {$protobuf.IConversionOptions} [options] Conversion options
10333 * @returns {Object.<string,*>} Plain object
10334 */
10335 PathElement.toObject = function toObject(message, options) {
10336 if (!options)
10337 options = {};
10338 var object = {};
10339 if (options.defaults)
10340 object.kind = "";
10341 if (message.kind != null && message.hasOwnProperty("kind"))
10342 object.kind = message.kind;
10343 if (message.id != null && message.hasOwnProperty("id")) {
10344 if (typeof message.id === "number")
10345 object.id = options.longs === String ? String(message.id) : message.id;
10346 else
10347 object.id = options.longs === String ? $util.Long.prototype.toString.call(message.id) : options.longs === Number ? new $util.LongBits(message.id.low >>> 0, message.id.high >>> 0).toNumber() : message.id;
10348 if (options.oneofs)
10349 object.idType = "id";
10350 }
10351 if (message.name != null && message.hasOwnProperty("name")) {
10352 object.name = message.name;
10353 if (options.oneofs)
10354 object.idType = "name";
10355 }
10356 return object;
10357 };
10358
10359 /**
10360 * Converts this PathElement to JSON.
10361 * @function toJSON
10362 * @memberof google.datastore.v1.Key.PathElement
10363 * @instance
10364 * @returns {Object.<string,*>} JSON object
10365 */
10366 PathElement.prototype.toJSON = function toJSON() {
10367 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
10368 };
10369
10370 return PathElement;
10371 })();
10372
10373 return Key;
10374 })();
10375
10376 v1.ArrayValue = (function() {
10377
10378 /**
10379 * Properties of an ArrayValue.
10380 * @memberof google.datastore.v1
10381 * @interface IArrayValue
10382 * @property {Array.<google.datastore.v1.IValue>|null} [values] ArrayValue values
10383 */
10384
10385 /**
10386 * Constructs a new ArrayValue.
10387 * @memberof google.datastore.v1
10388 * @classdesc Represents an ArrayValue.
10389 * @implements IArrayValue
10390 * @constructor
10391 * @param {google.datastore.v1.IArrayValue=} [properties] Properties to set
10392 */
10393 function ArrayValue(properties) {
10394 this.values = [];
10395 if (properties)
10396 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
10397 if (properties[keys[i]] != null)
10398 this[keys[i]] = properties[keys[i]];
10399 }
10400
10401 /**
10402 * ArrayValue values.
10403 * @member {Array.<google.datastore.v1.IValue>} values
10404 * @memberof google.datastore.v1.ArrayValue
10405 * @instance
10406 */
10407 ArrayValue.prototype.values = $util.emptyArray;
10408
10409 /**
10410 * Creates a new ArrayValue instance using the specified properties.
10411 * @function create
10412 * @memberof google.datastore.v1.ArrayValue
10413 * @static
10414 * @param {google.datastore.v1.IArrayValue=} [properties] Properties to set
10415 * @returns {google.datastore.v1.ArrayValue} ArrayValue instance
10416 */
10417 ArrayValue.create = function create(properties) {
10418 return new ArrayValue(properties);
10419 };
10420
10421 /**
10422 * Encodes the specified ArrayValue message. Does not implicitly {@link google.datastore.v1.ArrayValue.verify|verify} messages.
10423 * @function encode
10424 * @memberof google.datastore.v1.ArrayValue
10425 * @static
10426 * @param {google.datastore.v1.IArrayValue} message ArrayValue message or plain object to encode
10427 * @param {$protobuf.Writer} [writer] Writer to encode to
10428 * @returns {$protobuf.Writer} Writer
10429 */
10430 ArrayValue.encode = function encode(message, writer) {
10431 if (!writer)
10432 writer = $Writer.create();
10433 if (message.values != null && message.values.length)
10434 for (var i = 0; i < message.values.length; ++i)
10435 $root.google.datastore.v1.Value.encode(message.values[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
10436 return writer;
10437 };
10438
10439 /**
10440 * Encodes the specified ArrayValue message, length delimited. Does not implicitly {@link google.datastore.v1.ArrayValue.verify|verify} messages.
10441 * @function encodeDelimited
10442 * @memberof google.datastore.v1.ArrayValue
10443 * @static
10444 * @param {google.datastore.v1.IArrayValue} message ArrayValue message or plain object to encode
10445 * @param {$protobuf.Writer} [writer] Writer to encode to
10446 * @returns {$protobuf.Writer} Writer
10447 */
10448 ArrayValue.encodeDelimited = function encodeDelimited(message, writer) {
10449 return this.encode(message, writer).ldelim();
10450 };
10451
10452 /**
10453 * Decodes an ArrayValue message from the specified reader or buffer.
10454 * @function decode
10455 * @memberof google.datastore.v1.ArrayValue
10456 * @static
10457 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10458 * @param {number} [length] Message length if known beforehand
10459 * @returns {google.datastore.v1.ArrayValue} ArrayValue
10460 * @throws {Error} If the payload is not a reader or valid buffer
10461 * @throws {$protobuf.util.ProtocolError} If required fields are missing
10462 */
10463 ArrayValue.decode = function decode(reader, length) {
10464 if (!(reader instanceof $Reader))
10465 reader = $Reader.create(reader);
10466 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.ArrayValue();
10467 while (reader.pos < end) {
10468 var tag = reader.uint32();
10469 switch (tag >>> 3) {
10470 case 1:
10471 if (!(message.values && message.values.length))
10472 message.values = [];
10473 message.values.push($root.google.datastore.v1.Value.decode(reader, reader.uint32()));
10474 break;
10475 default:
10476 reader.skipType(tag & 7);
10477 break;
10478 }
10479 }
10480 return message;
10481 };
10482
10483 /**
10484 * Decodes an ArrayValue message from the specified reader or buffer, length delimited.
10485 * @function decodeDelimited
10486 * @memberof google.datastore.v1.ArrayValue
10487 * @static
10488 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10489 * @returns {google.datastore.v1.ArrayValue} ArrayValue
10490 * @throws {Error} If the payload is not a reader or valid buffer
10491 * @throws {$protobuf.util.ProtocolError} If required fields are missing
10492 */
10493 ArrayValue.decodeDelimited = function decodeDelimited(reader) {
10494 if (!(reader instanceof $Reader))
10495 reader = new $Reader(reader);
10496 return this.decode(reader, reader.uint32());
10497 };
10498
10499 /**
10500 * Verifies an ArrayValue message.
10501 * @function verify
10502 * @memberof google.datastore.v1.ArrayValue
10503 * @static
10504 * @param {Object.<string,*>} message Plain object to verify
10505 * @returns {string|null} `null` if valid, otherwise the reason why it is not
10506 */
10507 ArrayValue.verify = function verify(message) {
10508 if (typeof message !== "object" || message === null)
10509 return "object expected";
10510 if (message.values != null && message.hasOwnProperty("values")) {
10511 if (!Array.isArray(message.values))
10512 return "values: array expected";
10513 for (var i = 0; i < message.values.length; ++i) {
10514 var error = $root.google.datastore.v1.Value.verify(message.values[i]);
10515 if (error)
10516 return "values." + error;
10517 }
10518 }
10519 return null;
10520 };
10521
10522 /**
10523 * Creates an ArrayValue message from a plain object. Also converts values to their respective internal types.
10524 * @function fromObject
10525 * @memberof google.datastore.v1.ArrayValue
10526 * @static
10527 * @param {Object.<string,*>} object Plain object
10528 * @returns {google.datastore.v1.ArrayValue} ArrayValue
10529 */
10530 ArrayValue.fromObject = function fromObject(object) {
10531 if (object instanceof $root.google.datastore.v1.ArrayValue)
10532 return object;
10533 var message = new $root.google.datastore.v1.ArrayValue();
10534 if (object.values) {
10535 if (!Array.isArray(object.values))
10536 throw TypeError(".google.datastore.v1.ArrayValue.values: array expected");
10537 message.values = [];
10538 for (var i = 0; i < object.values.length; ++i) {
10539 if (typeof object.values[i] !== "object")
10540 throw TypeError(".google.datastore.v1.ArrayValue.values: object expected");
10541 message.values[i] = $root.google.datastore.v1.Value.fromObject(object.values[i]);
10542 }
10543 }
10544 return message;
10545 };
10546
10547 /**
10548 * Creates a plain object from an ArrayValue message. Also converts values to other types if specified.
10549 * @function toObject
10550 * @memberof google.datastore.v1.ArrayValue
10551 * @static
10552 * @param {google.datastore.v1.ArrayValue} message ArrayValue
10553 * @param {$protobuf.IConversionOptions} [options] Conversion options
10554 * @returns {Object.<string,*>} Plain object
10555 */
10556 ArrayValue.toObject = function toObject(message, options) {
10557 if (!options)
10558 options = {};
10559 var object = {};
10560 if (options.arrays || options.defaults)
10561 object.values = [];
10562 if (message.values && message.values.length) {
10563 object.values = [];
10564 for (var j = 0; j < message.values.length; ++j)
10565 object.values[j] = $root.google.datastore.v1.Value.toObject(message.values[j], options);
10566 }
10567 return object;
10568 };
10569
10570 /**
10571 * Converts this ArrayValue to JSON.
10572 * @function toJSON
10573 * @memberof google.datastore.v1.ArrayValue
10574 * @instance
10575 * @returns {Object.<string,*>} JSON object
10576 */
10577 ArrayValue.prototype.toJSON = function toJSON() {
10578 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
10579 };
10580
10581 return ArrayValue;
10582 })();
10583
10584 v1.Value = (function() {
10585
10586 /**
10587 * Properties of a Value.
10588 * @memberof google.datastore.v1
10589 * @interface IValue
10590 * @property {google.protobuf.NullValue|null} [nullValue] Value nullValue
10591 * @property {boolean|null} [booleanValue] Value booleanValue
10592 * @property {number|Long|null} [integerValue] Value integerValue
10593 * @property {number|null} [doubleValue] Value doubleValue
10594 * @property {google.protobuf.ITimestamp|null} [timestampValue] Value timestampValue
10595 * @property {google.datastore.v1.IKey|null} [keyValue] Value keyValue
10596 * @property {string|null} [stringValue] Value stringValue
10597 * @property {Uint8Array|null} [blobValue] Value blobValue
10598 * @property {google.type.ILatLng|null} [geoPointValue] Value geoPointValue
10599 * @property {google.datastore.v1.IEntity|null} [entityValue] Value entityValue
10600 * @property {google.datastore.v1.IArrayValue|null} [arrayValue] Value arrayValue
10601 * @property {number|null} [meaning] Value meaning
10602 * @property {boolean|null} [excludeFromIndexes] Value excludeFromIndexes
10603 */
10604
10605 /**
10606 * Constructs a new Value.
10607 * @memberof google.datastore.v1
10608 * @classdesc Represents a Value.
10609 * @implements IValue
10610 * @constructor
10611 * @param {google.datastore.v1.IValue=} [properties] Properties to set
10612 */
10613 function Value(properties) {
10614 if (properties)
10615 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
10616 if (properties[keys[i]] != null)
10617 this[keys[i]] = properties[keys[i]];
10618 }
10619
10620 /**
10621 * Value nullValue.
10622 * @member {google.protobuf.NullValue} nullValue
10623 * @memberof google.datastore.v1.Value
10624 * @instance
10625 */
10626 Value.prototype.nullValue = 0;
10627
10628 /**
10629 * Value booleanValue.
10630 * @member {boolean} booleanValue
10631 * @memberof google.datastore.v1.Value
10632 * @instance
10633 */
10634 Value.prototype.booleanValue = false;
10635
10636 /**
10637 * Value integerValue.
10638 * @member {number|Long} integerValue
10639 * @memberof google.datastore.v1.Value
10640 * @instance
10641 */
10642 Value.prototype.integerValue = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
10643
10644 /**
10645 * Value doubleValue.
10646 * @member {number} doubleValue
10647 * @memberof google.datastore.v1.Value
10648 * @instance
10649 */
10650 Value.prototype.doubleValue = 0;
10651
10652 /**
10653 * Value timestampValue.
10654 * @member {google.protobuf.ITimestamp|null|undefined} timestampValue
10655 * @memberof google.datastore.v1.Value
10656 * @instance
10657 */
10658 Value.prototype.timestampValue = null;
10659
10660 /**
10661 * Value keyValue.
10662 * @member {google.datastore.v1.IKey|null|undefined} keyValue
10663 * @memberof google.datastore.v1.Value
10664 * @instance
10665 */
10666 Value.prototype.keyValue = null;
10667
10668 /**
10669 * Value stringValue.
10670 * @member {string} stringValue
10671 * @memberof google.datastore.v1.Value
10672 * @instance
10673 */
10674 Value.prototype.stringValue = "";
10675
10676 /**
10677 * Value blobValue.
10678 * @member {Uint8Array} blobValue
10679 * @memberof google.datastore.v1.Value
10680 * @instance
10681 */
10682 Value.prototype.blobValue = $util.newBuffer([]);
10683
10684 /**
10685 * Value geoPointValue.
10686 * @member {google.type.ILatLng|null|undefined} geoPointValue
10687 * @memberof google.datastore.v1.Value
10688 * @instance
10689 */
10690 Value.prototype.geoPointValue = null;
10691
10692 /**
10693 * Value entityValue.
10694 * @member {google.datastore.v1.IEntity|null|undefined} entityValue
10695 * @memberof google.datastore.v1.Value
10696 * @instance
10697 */
10698 Value.prototype.entityValue = null;
10699
10700 /**
10701 * Value arrayValue.
10702 * @member {google.datastore.v1.IArrayValue|null|undefined} arrayValue
10703 * @memberof google.datastore.v1.Value
10704 * @instance
10705 */
10706 Value.prototype.arrayValue = null;
10707
10708 /**
10709 * Value meaning.
10710 * @member {number} meaning
10711 * @memberof google.datastore.v1.Value
10712 * @instance
10713 */
10714 Value.prototype.meaning = 0;
10715
10716 /**
10717 * Value excludeFromIndexes.
10718 * @member {boolean} excludeFromIndexes
10719 * @memberof google.datastore.v1.Value
10720 * @instance
10721 */
10722 Value.prototype.excludeFromIndexes = false;
10723
10724 // OneOf field names bound to virtual getters and setters
10725 var $oneOfFields;
10726
10727 /**
10728 * Value valueType.
10729 * @member {"nullValue"|"booleanValue"|"integerValue"|"doubleValue"|"timestampValue"|"keyValue"|"stringValue"|"blobValue"|"geoPointValue"|"entityValue"|"arrayValue"|undefined} valueType
10730 * @memberof google.datastore.v1.Value
10731 * @instance
10732 */
10733 Object.defineProperty(Value.prototype, "valueType", {
10734 get: $util.oneOfGetter($oneOfFields = ["nullValue", "booleanValue", "integerValue", "doubleValue", "timestampValue", "keyValue", "stringValue", "blobValue", "geoPointValue", "entityValue", "arrayValue"]),
10735 set: $util.oneOfSetter($oneOfFields)
10736 });
10737
10738 /**
10739 * Creates a new Value instance using the specified properties.
10740 * @function create
10741 * @memberof google.datastore.v1.Value
10742 * @static
10743 * @param {google.datastore.v1.IValue=} [properties] Properties to set
10744 * @returns {google.datastore.v1.Value} Value instance
10745 */
10746 Value.create = function create(properties) {
10747 return new Value(properties);
10748 };
10749
10750 /**
10751 * Encodes the specified Value message. Does not implicitly {@link google.datastore.v1.Value.verify|verify} messages.
10752 * @function encode
10753 * @memberof google.datastore.v1.Value
10754 * @static
10755 * @param {google.datastore.v1.IValue} message Value message or plain object to encode
10756 * @param {$protobuf.Writer} [writer] Writer to encode to
10757 * @returns {$protobuf.Writer} Writer
10758 */
10759 Value.encode = function encode(message, writer) {
10760 if (!writer)
10761 writer = $Writer.create();
10762 if (message.booleanValue != null && Object.hasOwnProperty.call(message, "booleanValue"))
10763 writer.uint32(/* id 1, wireType 0 =*/8).bool(message.booleanValue);
10764 if (message.integerValue != null && Object.hasOwnProperty.call(message, "integerValue"))
10765 writer.uint32(/* id 2, wireType 0 =*/16).int64(message.integerValue);
10766 if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue"))
10767 writer.uint32(/* id 3, wireType 1 =*/25).double(message.doubleValue);
10768 if (message.keyValue != null && Object.hasOwnProperty.call(message, "keyValue"))
10769 $root.google.datastore.v1.Key.encode(message.keyValue, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
10770 if (message.entityValue != null && Object.hasOwnProperty.call(message, "entityValue"))
10771 $root.google.datastore.v1.Entity.encode(message.entityValue, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
10772 if (message.geoPointValue != null && Object.hasOwnProperty.call(message, "geoPointValue"))
10773 $root.google.type.LatLng.encode(message.geoPointValue, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
10774 if (message.arrayValue != null && Object.hasOwnProperty.call(message, "arrayValue"))
10775 $root.google.datastore.v1.ArrayValue.encode(message.arrayValue, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
10776 if (message.timestampValue != null && Object.hasOwnProperty.call(message, "timestampValue"))
10777 $root.google.protobuf.Timestamp.encode(message.timestampValue, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
10778 if (message.nullValue != null && Object.hasOwnProperty.call(message, "nullValue"))
10779 writer.uint32(/* id 11, wireType 0 =*/88).int32(message.nullValue);
10780 if (message.meaning != null && Object.hasOwnProperty.call(message, "meaning"))
10781 writer.uint32(/* id 14, wireType 0 =*/112).int32(message.meaning);
10782 if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue"))
10783 writer.uint32(/* id 17, wireType 2 =*/138).string(message.stringValue);
10784 if (message.blobValue != null && Object.hasOwnProperty.call(message, "blobValue"))
10785 writer.uint32(/* id 18, wireType 2 =*/146).bytes(message.blobValue);
10786 if (message.excludeFromIndexes != null && Object.hasOwnProperty.call(message, "excludeFromIndexes"))
10787 writer.uint32(/* id 19, wireType 0 =*/152).bool(message.excludeFromIndexes);
10788 return writer;
10789 };
10790
10791 /**
10792 * Encodes the specified Value message, length delimited. Does not implicitly {@link google.datastore.v1.Value.verify|verify} messages.
10793 * @function encodeDelimited
10794 * @memberof google.datastore.v1.Value
10795 * @static
10796 * @param {google.datastore.v1.IValue} message Value message or plain object to encode
10797 * @param {$protobuf.Writer} [writer] Writer to encode to
10798 * @returns {$protobuf.Writer} Writer
10799 */
10800 Value.encodeDelimited = function encodeDelimited(message, writer) {
10801 return this.encode(message, writer).ldelim();
10802 };
10803
10804 /**
10805 * Decodes a Value message from the specified reader or buffer.
10806 * @function decode
10807 * @memberof google.datastore.v1.Value
10808 * @static
10809 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10810 * @param {number} [length] Message length if known beforehand
10811 * @returns {google.datastore.v1.Value} Value
10812 * @throws {Error} If the payload is not a reader or valid buffer
10813 * @throws {$protobuf.util.ProtocolError} If required fields are missing
10814 */
10815 Value.decode = function decode(reader, length) {
10816 if (!(reader instanceof $Reader))
10817 reader = $Reader.create(reader);
10818 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.Value();
10819 while (reader.pos < end) {
10820 var tag = reader.uint32();
10821 switch (tag >>> 3) {
10822 case 11:
10823 message.nullValue = reader.int32();
10824 break;
10825 case 1:
10826 message.booleanValue = reader.bool();
10827 break;
10828 case 2:
10829 message.integerValue = reader.int64();
10830 break;
10831 case 3:
10832 message.doubleValue = reader.double();
10833 break;
10834 case 10:
10835 message.timestampValue = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
10836 break;
10837 case 5:
10838 message.keyValue = $root.google.datastore.v1.Key.decode(reader, reader.uint32());
10839 break;
10840 case 17:
10841 message.stringValue = reader.string();
10842 break;
10843 case 18:
10844 message.blobValue = reader.bytes();
10845 break;
10846 case 8:
10847 message.geoPointValue = $root.google.type.LatLng.decode(reader, reader.uint32());
10848 break;
10849 case 6:
10850 message.entityValue = $root.google.datastore.v1.Entity.decode(reader, reader.uint32());
10851 break;
10852 case 9:
10853 message.arrayValue = $root.google.datastore.v1.ArrayValue.decode(reader, reader.uint32());
10854 break;
10855 case 14:
10856 message.meaning = reader.int32();
10857 break;
10858 case 19:
10859 message.excludeFromIndexes = reader.bool();
10860 break;
10861 default:
10862 reader.skipType(tag & 7);
10863 break;
10864 }
10865 }
10866 return message;
10867 };
10868
10869 /**
10870 * Decodes a Value message from the specified reader or buffer, length delimited.
10871 * @function decodeDelimited
10872 * @memberof google.datastore.v1.Value
10873 * @static
10874 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
10875 * @returns {google.datastore.v1.Value} Value
10876 * @throws {Error} If the payload is not a reader or valid buffer
10877 * @throws {$protobuf.util.ProtocolError} If required fields are missing
10878 */
10879 Value.decodeDelimited = function decodeDelimited(reader) {
10880 if (!(reader instanceof $Reader))
10881 reader = new $Reader(reader);
10882 return this.decode(reader, reader.uint32());
10883 };
10884
10885 /**
10886 * Verifies a Value message.
10887 * @function verify
10888 * @memberof google.datastore.v1.Value
10889 * @static
10890 * @param {Object.<string,*>} message Plain object to verify
10891 * @returns {string|null} `null` if valid, otherwise the reason why it is not
10892 */
10893 Value.verify = function verify(message) {
10894 if (typeof message !== "object" || message === null)
10895 return "object expected";
10896 var properties = {};
10897 if (message.nullValue != null && message.hasOwnProperty("nullValue")) {
10898 properties.valueType = 1;
10899 switch (message.nullValue) {
10900 default:
10901 return "nullValue: enum value expected";
10902 case 0:
10903 break;
10904 }
10905 }
10906 if (message.booleanValue != null && message.hasOwnProperty("booleanValue")) {
10907 if (properties.valueType === 1)
10908 return "valueType: multiple values";
10909 properties.valueType = 1;
10910 if (typeof message.booleanValue !== "boolean")
10911 return "booleanValue: boolean expected";
10912 }
10913 if (message.integerValue != null && message.hasOwnProperty("integerValue")) {
10914 if (properties.valueType === 1)
10915 return "valueType: multiple values";
10916 properties.valueType = 1;
10917 if (!$util.isInteger(message.integerValue) && !(message.integerValue && $util.isInteger(message.integerValue.low) && $util.isInteger(message.integerValue.high)))
10918 return "integerValue: integer|Long expected";
10919 }
10920 if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) {
10921 if (properties.valueType === 1)
10922 return "valueType: multiple values";
10923 properties.valueType = 1;
10924 if (typeof message.doubleValue !== "number")
10925 return "doubleValue: number expected";
10926 }
10927 if (message.timestampValue != null && message.hasOwnProperty("timestampValue")) {
10928 if (properties.valueType === 1)
10929 return "valueType: multiple values";
10930 properties.valueType = 1;
10931 {
10932 var error = $root.google.protobuf.Timestamp.verify(message.timestampValue);
10933 if (error)
10934 return "timestampValue." + error;
10935 }
10936 }
10937 if (message.keyValue != null && message.hasOwnProperty("keyValue")) {
10938 if (properties.valueType === 1)
10939 return "valueType: multiple values";
10940 properties.valueType = 1;
10941 {
10942 var error = $root.google.datastore.v1.Key.verify(message.keyValue);
10943 if (error)
10944 return "keyValue." + error;
10945 }
10946 }
10947 if (message.stringValue != null && message.hasOwnProperty("stringValue")) {
10948 if (properties.valueType === 1)
10949 return "valueType: multiple values";
10950 properties.valueType = 1;
10951 if (!$util.isString(message.stringValue))
10952 return "stringValue: string expected";
10953 }
10954 if (message.blobValue != null && message.hasOwnProperty("blobValue")) {
10955 if (properties.valueType === 1)
10956 return "valueType: multiple values";
10957 properties.valueType = 1;
10958 if (!(message.blobValue && typeof message.blobValue.length === "number" || $util.isString(message.blobValue)))
10959 return "blobValue: buffer expected";
10960 }
10961 if (message.geoPointValue != null && message.hasOwnProperty("geoPointValue")) {
10962 if (properties.valueType === 1)
10963 return "valueType: multiple values";
10964 properties.valueType = 1;
10965 {
10966 var error = $root.google.type.LatLng.verify(message.geoPointValue);
10967 if (error)
10968 return "geoPointValue." + error;
10969 }
10970 }
10971 if (message.entityValue != null && message.hasOwnProperty("entityValue")) {
10972 if (properties.valueType === 1)
10973 return "valueType: multiple values";
10974 properties.valueType = 1;
10975 {
10976 var error = $root.google.datastore.v1.Entity.verify(message.entityValue);
10977 if (error)
10978 return "entityValue." + error;
10979 }
10980 }
10981 if (message.arrayValue != null && message.hasOwnProperty("arrayValue")) {
10982 if (properties.valueType === 1)
10983 return "valueType: multiple values";
10984 properties.valueType = 1;
10985 {
10986 var error = $root.google.datastore.v1.ArrayValue.verify(message.arrayValue);
10987 if (error)
10988 return "arrayValue." + error;
10989 }
10990 }
10991 if (message.meaning != null && message.hasOwnProperty("meaning"))
10992 if (!$util.isInteger(message.meaning))
10993 return "meaning: integer expected";
10994 if (message.excludeFromIndexes != null && message.hasOwnProperty("excludeFromIndexes"))
10995 if (typeof message.excludeFromIndexes !== "boolean")
10996 return "excludeFromIndexes: boolean expected";
10997 return null;
10998 };
10999
11000 /**
11001 * Creates a Value message from a plain object. Also converts values to their respective internal types.
11002 * @function fromObject
11003 * @memberof google.datastore.v1.Value
11004 * @static
11005 * @param {Object.<string,*>} object Plain object
11006 * @returns {google.datastore.v1.Value} Value
11007 */
11008 Value.fromObject = function fromObject(object) {
11009 if (object instanceof $root.google.datastore.v1.Value)
11010 return object;
11011 var message = new $root.google.datastore.v1.Value();
11012 switch (object.nullValue) {
11013 case "NULL_VALUE":
11014 case 0:
11015 message.nullValue = 0;
11016 break;
11017 }
11018 if (object.booleanValue != null)
11019 message.booleanValue = Boolean(object.booleanValue);
11020 if (object.integerValue != null)
11021 if ($util.Long)
11022 (message.integerValue = $util.Long.fromValue(object.integerValue)).unsigned = false;
11023 else if (typeof object.integerValue === "string")
11024 message.integerValue = parseInt(object.integerValue, 10);
11025 else if (typeof object.integerValue === "number")
11026 message.integerValue = object.integerValue;
11027 else if (typeof object.integerValue === "object")
11028 message.integerValue = new $util.LongBits(object.integerValue.low >>> 0, object.integerValue.high >>> 0).toNumber();
11029 if (object.doubleValue != null)
11030 message.doubleValue = Number(object.doubleValue);
11031 if (object.timestampValue != null) {
11032 if (typeof object.timestampValue !== "object")
11033 throw TypeError(".google.datastore.v1.Value.timestampValue: object expected");
11034 message.timestampValue = $root.google.protobuf.Timestamp.fromObject(object.timestampValue);
11035 }
11036 if (object.keyValue != null) {
11037 if (typeof object.keyValue !== "object")
11038 throw TypeError(".google.datastore.v1.Value.keyValue: object expected");
11039 message.keyValue = $root.google.datastore.v1.Key.fromObject(object.keyValue);
11040 }
11041 if (object.stringValue != null)
11042 message.stringValue = String(object.stringValue);
11043 if (object.blobValue != null)
11044 if (typeof object.blobValue === "string")
11045 $util.base64.decode(object.blobValue, message.blobValue = $util.newBuffer($util.base64.length(object.blobValue)), 0);
11046 else if (object.blobValue.length)
11047 message.blobValue = object.blobValue;
11048 if (object.geoPointValue != null) {
11049 if (typeof object.geoPointValue !== "object")
11050 throw TypeError(".google.datastore.v1.Value.geoPointValue: object expected");
11051 message.geoPointValue = $root.google.type.LatLng.fromObject(object.geoPointValue);
11052 }
11053 if (object.entityValue != null) {
11054 if (typeof object.entityValue !== "object")
11055 throw TypeError(".google.datastore.v1.Value.entityValue: object expected");
11056 message.entityValue = $root.google.datastore.v1.Entity.fromObject(object.entityValue);
11057 }
11058 if (object.arrayValue != null) {
11059 if (typeof object.arrayValue !== "object")
11060 throw TypeError(".google.datastore.v1.Value.arrayValue: object expected");
11061 message.arrayValue = $root.google.datastore.v1.ArrayValue.fromObject(object.arrayValue);
11062 }
11063 if (object.meaning != null)
11064 message.meaning = object.meaning | 0;
11065 if (object.excludeFromIndexes != null)
11066 message.excludeFromIndexes = Boolean(object.excludeFromIndexes);
11067 return message;
11068 };
11069
11070 /**
11071 * Creates a plain object from a Value message. Also converts values to other types if specified.
11072 * @function toObject
11073 * @memberof google.datastore.v1.Value
11074 * @static
11075 * @param {google.datastore.v1.Value} message Value
11076 * @param {$protobuf.IConversionOptions} [options] Conversion options
11077 * @returns {Object.<string,*>} Plain object
11078 */
11079 Value.toObject = function toObject(message, options) {
11080 if (!options)
11081 options = {};
11082 var object = {};
11083 if (options.defaults) {
11084 object.meaning = 0;
11085 object.excludeFromIndexes = false;
11086 }
11087 if (message.booleanValue != null && message.hasOwnProperty("booleanValue")) {
11088 object.booleanValue = message.booleanValue;
11089 if (options.oneofs)
11090 object.valueType = "booleanValue";
11091 }
11092 if (message.integerValue != null && message.hasOwnProperty("integerValue")) {
11093 if (typeof message.integerValue === "number")
11094 object.integerValue = options.longs === String ? String(message.integerValue) : message.integerValue;
11095 else
11096 object.integerValue = options.longs === String ? $util.Long.prototype.toString.call(message.integerValue) : options.longs === Number ? new $util.LongBits(message.integerValue.low >>> 0, message.integerValue.high >>> 0).toNumber() : message.integerValue;
11097 if (options.oneofs)
11098 object.valueType = "integerValue";
11099 }
11100 if (message.doubleValue != null && message.hasOwnProperty("doubleValue")) {
11101 object.doubleValue = options.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue;
11102 if (options.oneofs)
11103 object.valueType = "doubleValue";
11104 }
11105 if (message.keyValue != null && message.hasOwnProperty("keyValue")) {
11106 object.keyValue = $root.google.datastore.v1.Key.toObject(message.keyValue, options);
11107 if (options.oneofs)
11108 object.valueType = "keyValue";
11109 }
11110 if (message.entityValue != null && message.hasOwnProperty("entityValue")) {
11111 object.entityValue = $root.google.datastore.v1.Entity.toObject(message.entityValue, options);
11112 if (options.oneofs)
11113 object.valueType = "entityValue";
11114 }
11115 if (message.geoPointValue != null && message.hasOwnProperty("geoPointValue")) {
11116 object.geoPointValue = $root.google.type.LatLng.toObject(message.geoPointValue, options);
11117 if (options.oneofs)
11118 object.valueType = "geoPointValue";
11119 }
11120 if (message.arrayValue != null && message.hasOwnProperty("arrayValue")) {
11121 object.arrayValue = $root.google.datastore.v1.ArrayValue.toObject(message.arrayValue, options);
11122 if (options.oneofs)
11123 object.valueType = "arrayValue";
11124 }
11125 if (message.timestampValue != null && message.hasOwnProperty("timestampValue")) {
11126 object.timestampValue = $root.google.protobuf.Timestamp.toObject(message.timestampValue, options);
11127 if (options.oneofs)
11128 object.valueType = "timestampValue";
11129 }
11130 if (message.nullValue != null && message.hasOwnProperty("nullValue")) {
11131 object.nullValue = options.enums === String ? $root.google.protobuf.NullValue[message.nullValue] : message.nullValue;
11132 if (options.oneofs)
11133 object.valueType = "nullValue";
11134 }
11135 if (message.meaning != null && message.hasOwnProperty("meaning"))
11136 object.meaning = message.meaning;
11137 if (message.stringValue != null && message.hasOwnProperty("stringValue")) {
11138 object.stringValue = message.stringValue;
11139 if (options.oneofs)
11140 object.valueType = "stringValue";
11141 }
11142 if (message.blobValue != null && message.hasOwnProperty("blobValue")) {
11143 object.blobValue = options.bytes === String ? $util.base64.encode(message.blobValue, 0, message.blobValue.length) : options.bytes === Array ? Array.prototype.slice.call(message.blobValue) : message.blobValue;
11144 if (options.oneofs)
11145 object.valueType = "blobValue";
11146 }
11147 if (message.excludeFromIndexes != null && message.hasOwnProperty("excludeFromIndexes"))
11148 object.excludeFromIndexes = message.excludeFromIndexes;
11149 return object;
11150 };
11151
11152 /**
11153 * Converts this Value to JSON.
11154 * @function toJSON
11155 * @memberof google.datastore.v1.Value
11156 * @instance
11157 * @returns {Object.<string,*>} JSON object
11158 */
11159 Value.prototype.toJSON = function toJSON() {
11160 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
11161 };
11162
11163 return Value;
11164 })();
11165
11166 v1.Entity = (function() {
11167
11168 /**
11169 * Properties of an Entity.
11170 * @memberof google.datastore.v1
11171 * @interface IEntity
11172 * @property {google.datastore.v1.IKey|null} [key] Entity key
11173 * @property {Object.<string,google.datastore.v1.IValue>|null} [properties] Entity properties
11174 */
11175
11176 /**
11177 * Constructs a new Entity.
11178 * @memberof google.datastore.v1
11179 * @classdesc Represents an Entity.
11180 * @implements IEntity
11181 * @constructor
11182 * @param {google.datastore.v1.IEntity=} [properties] Properties to set
11183 */
11184 function Entity(properties) {
11185 this.properties = {};
11186 if (properties)
11187 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
11188 if (properties[keys[i]] != null)
11189 this[keys[i]] = properties[keys[i]];
11190 }
11191
11192 /**
11193 * Entity key.
11194 * @member {google.datastore.v1.IKey|null|undefined} key
11195 * @memberof google.datastore.v1.Entity
11196 * @instance
11197 */
11198 Entity.prototype.key = null;
11199
11200 /**
11201 * Entity properties.
11202 * @member {Object.<string,google.datastore.v1.IValue>} properties
11203 * @memberof google.datastore.v1.Entity
11204 * @instance
11205 */
11206 Entity.prototype.properties = $util.emptyObject;
11207
11208 /**
11209 * Creates a new Entity instance using the specified properties.
11210 * @function create
11211 * @memberof google.datastore.v1.Entity
11212 * @static
11213 * @param {google.datastore.v1.IEntity=} [properties] Properties to set
11214 * @returns {google.datastore.v1.Entity} Entity instance
11215 */
11216 Entity.create = function create(properties) {
11217 return new Entity(properties);
11218 };
11219
11220 /**
11221 * Encodes the specified Entity message. Does not implicitly {@link google.datastore.v1.Entity.verify|verify} messages.
11222 * @function encode
11223 * @memberof google.datastore.v1.Entity
11224 * @static
11225 * @param {google.datastore.v1.IEntity} message Entity message or plain object to encode
11226 * @param {$protobuf.Writer} [writer] Writer to encode to
11227 * @returns {$protobuf.Writer} Writer
11228 */
11229 Entity.encode = function encode(message, writer) {
11230 if (!writer)
11231 writer = $Writer.create();
11232 if (message.key != null && Object.hasOwnProperty.call(message, "key"))
11233 $root.google.datastore.v1.Key.encode(message.key, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
11234 if (message.properties != null && Object.hasOwnProperty.call(message, "properties"))
11235 for (var keys = Object.keys(message.properties), i = 0; i < keys.length; ++i) {
11236 writer.uint32(/* id 3, wireType 2 =*/26).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]);
11237 $root.google.datastore.v1.Value.encode(message.properties[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim();
11238 }
11239 return writer;
11240 };
11241
11242 /**
11243 * Encodes the specified Entity message, length delimited. Does not implicitly {@link google.datastore.v1.Entity.verify|verify} messages.
11244 * @function encodeDelimited
11245 * @memberof google.datastore.v1.Entity
11246 * @static
11247 * @param {google.datastore.v1.IEntity} message Entity message or plain object to encode
11248 * @param {$protobuf.Writer} [writer] Writer to encode to
11249 * @returns {$protobuf.Writer} Writer
11250 */
11251 Entity.encodeDelimited = function encodeDelimited(message, writer) {
11252 return this.encode(message, writer).ldelim();
11253 };
11254
11255 /**
11256 * Decodes an Entity message from the specified reader or buffer.
11257 * @function decode
11258 * @memberof google.datastore.v1.Entity
11259 * @static
11260 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
11261 * @param {number} [length] Message length if known beforehand
11262 * @returns {google.datastore.v1.Entity} Entity
11263 * @throws {Error} If the payload is not a reader or valid buffer
11264 * @throws {$protobuf.util.ProtocolError} If required fields are missing
11265 */
11266 Entity.decode = function decode(reader, length) {
11267 if (!(reader instanceof $Reader))
11268 reader = $Reader.create(reader);
11269 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.Entity(), key, value;
11270 while (reader.pos < end) {
11271 var tag = reader.uint32();
11272 switch (tag >>> 3) {
11273 case 1:
11274 message.key = $root.google.datastore.v1.Key.decode(reader, reader.uint32());
11275 break;
11276 case 3:
11277 if (message.properties === $util.emptyObject)
11278 message.properties = {};
11279 var end2 = reader.uint32() + reader.pos;
11280 key = "";
11281 value = null;
11282 while (reader.pos < end2) {
11283 var tag2 = reader.uint32();
11284 switch (tag2 >>> 3) {
11285 case 1:
11286 key = reader.string();
11287 break;
11288 case 2:
11289 value = $root.google.datastore.v1.Value.decode(reader, reader.uint32());
11290 break;
11291 default:
11292 reader.skipType(tag2 & 7);
11293 break;
11294 }
11295 }
11296 message.properties[key] = value;
11297 break;
11298 default:
11299 reader.skipType(tag & 7);
11300 break;
11301 }
11302 }
11303 return message;
11304 };
11305
11306 /**
11307 * Decodes an Entity message from the specified reader or buffer, length delimited.
11308 * @function decodeDelimited
11309 * @memberof google.datastore.v1.Entity
11310 * @static
11311 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
11312 * @returns {google.datastore.v1.Entity} Entity
11313 * @throws {Error} If the payload is not a reader or valid buffer
11314 * @throws {$protobuf.util.ProtocolError} If required fields are missing
11315 */
11316 Entity.decodeDelimited = function decodeDelimited(reader) {
11317 if (!(reader instanceof $Reader))
11318 reader = new $Reader(reader);
11319 return this.decode(reader, reader.uint32());
11320 };
11321
11322 /**
11323 * Verifies an Entity message.
11324 * @function verify
11325 * @memberof google.datastore.v1.Entity
11326 * @static
11327 * @param {Object.<string,*>} message Plain object to verify
11328 * @returns {string|null} `null` if valid, otherwise the reason why it is not
11329 */
11330 Entity.verify = function verify(message) {
11331 if (typeof message !== "object" || message === null)
11332 return "object expected";
11333 if (message.key != null && message.hasOwnProperty("key")) {
11334 var error = $root.google.datastore.v1.Key.verify(message.key);
11335 if (error)
11336 return "key." + error;
11337 }
11338 if (message.properties != null && message.hasOwnProperty("properties")) {
11339 if (!$util.isObject(message.properties))
11340 return "properties: object expected";
11341 var key = Object.keys(message.properties);
11342 for (var i = 0; i < key.length; ++i) {
11343 var error = $root.google.datastore.v1.Value.verify(message.properties[key[i]]);
11344 if (error)
11345 return "properties." + error;
11346 }
11347 }
11348 return null;
11349 };
11350
11351 /**
11352 * Creates an Entity message from a plain object. Also converts values to their respective internal types.
11353 * @function fromObject
11354 * @memberof google.datastore.v1.Entity
11355 * @static
11356 * @param {Object.<string,*>} object Plain object
11357 * @returns {google.datastore.v1.Entity} Entity
11358 */
11359 Entity.fromObject = function fromObject(object) {
11360 if (object instanceof $root.google.datastore.v1.Entity)
11361 return object;
11362 var message = new $root.google.datastore.v1.Entity();
11363 if (object.key != null) {
11364 if (typeof object.key !== "object")
11365 throw TypeError(".google.datastore.v1.Entity.key: object expected");
11366 message.key = $root.google.datastore.v1.Key.fromObject(object.key);
11367 }
11368 if (object.properties) {
11369 if (typeof object.properties !== "object")
11370 throw TypeError(".google.datastore.v1.Entity.properties: object expected");
11371 message.properties = {};
11372 for (var keys = Object.keys(object.properties), i = 0; i < keys.length; ++i) {
11373 if (typeof object.properties[keys[i]] !== "object")
11374 throw TypeError(".google.datastore.v1.Entity.properties: object expected");
11375 message.properties[keys[i]] = $root.google.datastore.v1.Value.fromObject(object.properties[keys[i]]);
11376 }
11377 }
11378 return message;
11379 };
11380
11381 /**
11382 * Creates a plain object from an Entity message. Also converts values to other types if specified.
11383 * @function toObject
11384 * @memberof google.datastore.v1.Entity
11385 * @static
11386 * @param {google.datastore.v1.Entity} message Entity
11387 * @param {$protobuf.IConversionOptions} [options] Conversion options
11388 * @returns {Object.<string,*>} Plain object
11389 */
11390 Entity.toObject = function toObject(message, options) {
11391 if (!options)
11392 options = {};
11393 var object = {};
11394 if (options.objects || options.defaults)
11395 object.properties = {};
11396 if (options.defaults)
11397 object.key = null;
11398 if (message.key != null && message.hasOwnProperty("key"))
11399 object.key = $root.google.datastore.v1.Key.toObject(message.key, options);
11400 var keys2;
11401 if (message.properties && (keys2 = Object.keys(message.properties)).length) {
11402 object.properties = {};
11403 for (var j = 0; j < keys2.length; ++j)
11404 object.properties[keys2[j]] = $root.google.datastore.v1.Value.toObject(message.properties[keys2[j]], options);
11405 }
11406 return object;
11407 };
11408
11409 /**
11410 * Converts this Entity to JSON.
11411 * @function toJSON
11412 * @memberof google.datastore.v1.Entity
11413 * @instance
11414 * @returns {Object.<string,*>} JSON object
11415 */
11416 Entity.prototype.toJSON = function toJSON() {
11417 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
11418 };
11419
11420 return Entity;
11421 })();
11422
11423 v1.EntityResult = (function() {
11424
11425 /**
11426 * Properties of an EntityResult.
11427 * @memberof google.datastore.v1
11428 * @interface IEntityResult
11429 * @property {google.datastore.v1.IEntity|null} [entity] EntityResult entity
11430 * @property {number|Long|null} [version] EntityResult version
11431 * @property {Uint8Array|null} [cursor] EntityResult cursor
11432 */
11433
11434 /**
11435 * Constructs a new EntityResult.
11436 * @memberof google.datastore.v1
11437 * @classdesc Represents an EntityResult.
11438 * @implements IEntityResult
11439 * @constructor
11440 * @param {google.datastore.v1.IEntityResult=} [properties] Properties to set
11441 */
11442 function EntityResult(properties) {
11443 if (properties)
11444 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
11445 if (properties[keys[i]] != null)
11446 this[keys[i]] = properties[keys[i]];
11447 }
11448
11449 /**
11450 * EntityResult entity.
11451 * @member {google.datastore.v1.IEntity|null|undefined} entity
11452 * @memberof google.datastore.v1.EntityResult
11453 * @instance
11454 */
11455 EntityResult.prototype.entity = null;
11456
11457 /**
11458 * EntityResult version.
11459 * @member {number|Long} version
11460 * @memberof google.datastore.v1.EntityResult
11461 * @instance
11462 */
11463 EntityResult.prototype.version = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
11464
11465 /**
11466 * EntityResult cursor.
11467 * @member {Uint8Array} cursor
11468 * @memberof google.datastore.v1.EntityResult
11469 * @instance
11470 */
11471 EntityResult.prototype.cursor = $util.newBuffer([]);
11472
11473 /**
11474 * Creates a new EntityResult instance using the specified properties.
11475 * @function create
11476 * @memberof google.datastore.v1.EntityResult
11477 * @static
11478 * @param {google.datastore.v1.IEntityResult=} [properties] Properties to set
11479 * @returns {google.datastore.v1.EntityResult} EntityResult instance
11480 */
11481 EntityResult.create = function create(properties) {
11482 return new EntityResult(properties);
11483 };
11484
11485 /**
11486 * Encodes the specified EntityResult message. Does not implicitly {@link google.datastore.v1.EntityResult.verify|verify} messages.
11487 * @function encode
11488 * @memberof google.datastore.v1.EntityResult
11489 * @static
11490 * @param {google.datastore.v1.IEntityResult} message EntityResult message or plain object to encode
11491 * @param {$protobuf.Writer} [writer] Writer to encode to
11492 * @returns {$protobuf.Writer} Writer
11493 */
11494 EntityResult.encode = function encode(message, writer) {
11495 if (!writer)
11496 writer = $Writer.create();
11497 if (message.entity != null && Object.hasOwnProperty.call(message, "entity"))
11498 $root.google.datastore.v1.Entity.encode(message.entity, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
11499 if (message.cursor != null && Object.hasOwnProperty.call(message, "cursor"))
11500 writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.cursor);
11501 if (message.version != null && Object.hasOwnProperty.call(message, "version"))
11502 writer.uint32(/* id 4, wireType 0 =*/32).int64(message.version);
11503 return writer;
11504 };
11505
11506 /**
11507 * Encodes the specified EntityResult message, length delimited. Does not implicitly {@link google.datastore.v1.EntityResult.verify|verify} messages.
11508 * @function encodeDelimited
11509 * @memberof google.datastore.v1.EntityResult
11510 * @static
11511 * @param {google.datastore.v1.IEntityResult} message EntityResult message or plain object to encode
11512 * @param {$protobuf.Writer} [writer] Writer to encode to
11513 * @returns {$protobuf.Writer} Writer
11514 */
11515 EntityResult.encodeDelimited = function encodeDelimited(message, writer) {
11516 return this.encode(message, writer).ldelim();
11517 };
11518
11519 /**
11520 * Decodes an EntityResult message from the specified reader or buffer.
11521 * @function decode
11522 * @memberof google.datastore.v1.EntityResult
11523 * @static
11524 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
11525 * @param {number} [length] Message length if known beforehand
11526 * @returns {google.datastore.v1.EntityResult} EntityResult
11527 * @throws {Error} If the payload is not a reader or valid buffer
11528 * @throws {$protobuf.util.ProtocolError} If required fields are missing
11529 */
11530 EntityResult.decode = function decode(reader, length) {
11531 if (!(reader instanceof $Reader))
11532 reader = $Reader.create(reader);
11533 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.EntityResult();
11534 while (reader.pos < end) {
11535 var tag = reader.uint32();
11536 switch (tag >>> 3) {
11537 case 1:
11538 message.entity = $root.google.datastore.v1.Entity.decode(reader, reader.uint32());
11539 break;
11540 case 4:
11541 message.version = reader.int64();
11542 break;
11543 case 3:
11544 message.cursor = reader.bytes();
11545 break;
11546 default:
11547 reader.skipType(tag & 7);
11548 break;
11549 }
11550 }
11551 return message;
11552 };
11553
11554 /**
11555 * Decodes an EntityResult message from the specified reader or buffer, length delimited.
11556 * @function decodeDelimited
11557 * @memberof google.datastore.v1.EntityResult
11558 * @static
11559 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
11560 * @returns {google.datastore.v1.EntityResult} EntityResult
11561 * @throws {Error} If the payload is not a reader or valid buffer
11562 * @throws {$protobuf.util.ProtocolError} If required fields are missing
11563 */
11564 EntityResult.decodeDelimited = function decodeDelimited(reader) {
11565 if (!(reader instanceof $Reader))
11566 reader = new $Reader(reader);
11567 return this.decode(reader, reader.uint32());
11568 };
11569
11570 /**
11571 * Verifies an EntityResult message.
11572 * @function verify
11573 * @memberof google.datastore.v1.EntityResult
11574 * @static
11575 * @param {Object.<string,*>} message Plain object to verify
11576 * @returns {string|null} `null` if valid, otherwise the reason why it is not
11577 */
11578 EntityResult.verify = function verify(message) {
11579 if (typeof message !== "object" || message === null)
11580 return "object expected";
11581 if (message.entity != null && message.hasOwnProperty("entity")) {
11582 var error = $root.google.datastore.v1.Entity.verify(message.entity);
11583 if (error)
11584 return "entity." + error;
11585 }
11586 if (message.version != null && message.hasOwnProperty("version"))
11587 if (!$util.isInteger(message.version) && !(message.version && $util.isInteger(message.version.low) && $util.isInteger(message.version.high)))
11588 return "version: integer|Long expected";
11589 if (message.cursor != null && message.hasOwnProperty("cursor"))
11590 if (!(message.cursor && typeof message.cursor.length === "number" || $util.isString(message.cursor)))
11591 return "cursor: buffer expected";
11592 return null;
11593 };
11594
11595 /**
11596 * Creates an EntityResult message from a plain object. Also converts values to their respective internal types.
11597 * @function fromObject
11598 * @memberof google.datastore.v1.EntityResult
11599 * @static
11600 * @param {Object.<string,*>} object Plain object
11601 * @returns {google.datastore.v1.EntityResult} EntityResult
11602 */
11603 EntityResult.fromObject = function fromObject(object) {
11604 if (object instanceof $root.google.datastore.v1.EntityResult)
11605 return object;
11606 var message = new $root.google.datastore.v1.EntityResult();
11607 if (object.entity != null) {
11608 if (typeof object.entity !== "object")
11609 throw TypeError(".google.datastore.v1.EntityResult.entity: object expected");
11610 message.entity = $root.google.datastore.v1.Entity.fromObject(object.entity);
11611 }
11612 if (object.version != null)
11613 if ($util.Long)
11614 (message.version = $util.Long.fromValue(object.version)).unsigned = false;
11615 else if (typeof object.version === "string")
11616 message.version = parseInt(object.version, 10);
11617 else if (typeof object.version === "number")
11618 message.version = object.version;
11619 else if (typeof object.version === "object")
11620 message.version = new $util.LongBits(object.version.low >>> 0, object.version.high >>> 0).toNumber();
11621 if (object.cursor != null)
11622 if (typeof object.cursor === "string")
11623 $util.base64.decode(object.cursor, message.cursor = $util.newBuffer($util.base64.length(object.cursor)), 0);
11624 else if (object.cursor.length)
11625 message.cursor = object.cursor;
11626 return message;
11627 };
11628
11629 /**
11630 * Creates a plain object from an EntityResult message. Also converts values to other types if specified.
11631 * @function toObject
11632 * @memberof google.datastore.v1.EntityResult
11633 * @static
11634 * @param {google.datastore.v1.EntityResult} message EntityResult
11635 * @param {$protobuf.IConversionOptions} [options] Conversion options
11636 * @returns {Object.<string,*>} Plain object
11637 */
11638 EntityResult.toObject = function toObject(message, options) {
11639 if (!options)
11640 options = {};
11641 var object = {};
11642 if (options.defaults) {
11643 object.entity = null;
11644 if (options.bytes === String)
11645 object.cursor = "";
11646 else {
11647 object.cursor = [];
11648 if (options.bytes !== Array)
11649 object.cursor = $util.newBuffer(object.cursor);
11650 }
11651 if ($util.Long) {
11652 var long = new $util.Long(0, 0, false);
11653 object.version = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
11654 } else
11655 object.version = options.longs === String ? "0" : 0;
11656 }
11657 if (message.entity != null && message.hasOwnProperty("entity"))
11658 object.entity = $root.google.datastore.v1.Entity.toObject(message.entity, options);
11659 if (message.cursor != null && message.hasOwnProperty("cursor"))
11660 object.cursor = options.bytes === String ? $util.base64.encode(message.cursor, 0, message.cursor.length) : options.bytes === Array ? Array.prototype.slice.call(message.cursor) : message.cursor;
11661 if (message.version != null && message.hasOwnProperty("version"))
11662 if (typeof message.version === "number")
11663 object.version = options.longs === String ? String(message.version) : message.version;
11664 else
11665 object.version = options.longs === String ? $util.Long.prototype.toString.call(message.version) : options.longs === Number ? new $util.LongBits(message.version.low >>> 0, message.version.high >>> 0).toNumber() : message.version;
11666 return object;
11667 };
11668
11669 /**
11670 * Converts this EntityResult to JSON.
11671 * @function toJSON
11672 * @memberof google.datastore.v1.EntityResult
11673 * @instance
11674 * @returns {Object.<string,*>} JSON object
11675 */
11676 EntityResult.prototype.toJSON = function toJSON() {
11677 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
11678 };
11679
11680 /**
11681 * ResultType enum.
11682 * @name google.datastore.v1.EntityResult.ResultType
11683 * @enum {number}
11684 * @property {number} RESULT_TYPE_UNSPECIFIED=0 RESULT_TYPE_UNSPECIFIED value
11685 * @property {number} FULL=1 FULL value
11686 * @property {number} PROJECTION=2 PROJECTION value
11687 * @property {number} KEY_ONLY=3 KEY_ONLY value
11688 */
11689 EntityResult.ResultType = (function() {
11690 var valuesById = {}, values = Object.create(valuesById);
11691 values[valuesById[0] = "RESULT_TYPE_UNSPECIFIED"] = 0;
11692 values[valuesById[1] = "FULL"] = 1;
11693 values[valuesById[2] = "PROJECTION"] = 2;
11694 values[valuesById[3] = "KEY_ONLY"] = 3;
11695 return values;
11696 })();
11697
11698 return EntityResult;
11699 })();
11700
11701 v1.Query = (function() {
11702
11703 /**
11704 * Properties of a Query.
11705 * @memberof google.datastore.v1
11706 * @interface IQuery
11707 * @property {Array.<google.datastore.v1.IProjection>|null} [projection] Query projection
11708 * @property {Array.<google.datastore.v1.IKindExpression>|null} [kind] Query kind
11709 * @property {google.datastore.v1.IFilter|null} [filter] Query filter
11710 * @property {Array.<google.datastore.v1.IPropertyOrder>|null} [order] Query order
11711 * @property {Array.<google.datastore.v1.IPropertyReference>|null} [distinctOn] Query distinctOn
11712 * @property {Uint8Array|null} [startCursor] Query startCursor
11713 * @property {Uint8Array|null} [endCursor] Query endCursor
11714 * @property {number|null} [offset] Query offset
11715 * @property {google.protobuf.IInt32Value|null} [limit] Query limit
11716 */
11717
11718 /**
11719 * Constructs a new Query.
11720 * @memberof google.datastore.v1
11721 * @classdesc Represents a Query.
11722 * @implements IQuery
11723 * @constructor
11724 * @param {google.datastore.v1.IQuery=} [properties] Properties to set
11725 */
11726 function Query(properties) {
11727 this.projection = [];
11728 this.kind = [];
11729 this.order = [];
11730 this.distinctOn = [];
11731 if (properties)
11732 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
11733 if (properties[keys[i]] != null)
11734 this[keys[i]] = properties[keys[i]];
11735 }
11736
11737 /**
11738 * Query projection.
11739 * @member {Array.<google.datastore.v1.IProjection>} projection
11740 * @memberof google.datastore.v1.Query
11741 * @instance
11742 */
11743 Query.prototype.projection = $util.emptyArray;
11744
11745 /**
11746 * Query kind.
11747 * @member {Array.<google.datastore.v1.IKindExpression>} kind
11748 * @memberof google.datastore.v1.Query
11749 * @instance
11750 */
11751 Query.prototype.kind = $util.emptyArray;
11752
11753 /**
11754 * Query filter.
11755 * @member {google.datastore.v1.IFilter|null|undefined} filter
11756 * @memberof google.datastore.v1.Query
11757 * @instance
11758 */
11759 Query.prototype.filter = null;
11760
11761 /**
11762 * Query order.
11763 * @member {Array.<google.datastore.v1.IPropertyOrder>} order
11764 * @memberof google.datastore.v1.Query
11765 * @instance
11766 */
11767 Query.prototype.order = $util.emptyArray;
11768
11769 /**
11770 * Query distinctOn.
11771 * @member {Array.<google.datastore.v1.IPropertyReference>} distinctOn
11772 * @memberof google.datastore.v1.Query
11773 * @instance
11774 */
11775 Query.prototype.distinctOn = $util.emptyArray;
11776
11777 /**
11778 * Query startCursor.
11779 * @member {Uint8Array} startCursor
11780 * @memberof google.datastore.v1.Query
11781 * @instance
11782 */
11783 Query.prototype.startCursor = $util.newBuffer([]);
11784
11785 /**
11786 * Query endCursor.
11787 * @member {Uint8Array} endCursor
11788 * @memberof google.datastore.v1.Query
11789 * @instance
11790 */
11791 Query.prototype.endCursor = $util.newBuffer([]);
11792
11793 /**
11794 * Query offset.
11795 * @member {number} offset
11796 * @memberof google.datastore.v1.Query
11797 * @instance
11798 */
11799 Query.prototype.offset = 0;
11800
11801 /**
11802 * Query limit.
11803 * @member {google.protobuf.IInt32Value|null|undefined} limit
11804 * @memberof google.datastore.v1.Query
11805 * @instance
11806 */
11807 Query.prototype.limit = null;
11808
11809 /**
11810 * Creates a new Query instance using the specified properties.
11811 * @function create
11812 * @memberof google.datastore.v1.Query
11813 * @static
11814 * @param {google.datastore.v1.IQuery=} [properties] Properties to set
11815 * @returns {google.datastore.v1.Query} Query instance
11816 */
11817 Query.create = function create(properties) {
11818 return new Query(properties);
11819 };
11820
11821 /**
11822 * Encodes the specified Query message. Does not implicitly {@link google.datastore.v1.Query.verify|verify} messages.
11823 * @function encode
11824 * @memberof google.datastore.v1.Query
11825 * @static
11826 * @param {google.datastore.v1.IQuery} message Query message or plain object to encode
11827 * @param {$protobuf.Writer} [writer] Writer to encode to
11828 * @returns {$protobuf.Writer} Writer
11829 */
11830 Query.encode = function encode(message, writer) {
11831 if (!writer)
11832 writer = $Writer.create();
11833 if (message.projection != null && message.projection.length)
11834 for (var i = 0; i < message.projection.length; ++i)
11835 $root.google.datastore.v1.Projection.encode(message.projection[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
11836 if (message.kind != null && message.kind.length)
11837 for (var i = 0; i < message.kind.length; ++i)
11838 $root.google.datastore.v1.KindExpression.encode(message.kind[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
11839 if (message.filter != null && Object.hasOwnProperty.call(message, "filter"))
11840 $root.google.datastore.v1.Filter.encode(message.filter, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
11841 if (message.order != null && message.order.length)
11842 for (var i = 0; i < message.order.length; ++i)
11843 $root.google.datastore.v1.PropertyOrder.encode(message.order[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
11844 if (message.distinctOn != null && message.distinctOn.length)
11845 for (var i = 0; i < message.distinctOn.length; ++i)
11846 $root.google.datastore.v1.PropertyReference.encode(message.distinctOn[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
11847 if (message.startCursor != null && Object.hasOwnProperty.call(message, "startCursor"))
11848 writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.startCursor);
11849 if (message.endCursor != null && Object.hasOwnProperty.call(message, "endCursor"))
11850 writer.uint32(/* id 8, wireType 2 =*/66).bytes(message.endCursor);
11851 if (message.offset != null && Object.hasOwnProperty.call(message, "offset"))
11852 writer.uint32(/* id 10, wireType 0 =*/80).int32(message.offset);
11853 if (message.limit != null && Object.hasOwnProperty.call(message, "limit"))
11854 $root.google.protobuf.Int32Value.encode(message.limit, writer.uint32(/* id 12, wireType 2 =*/98).fork()).ldelim();
11855 return writer;
11856 };
11857
11858 /**
11859 * Encodes the specified Query message, length delimited. Does not implicitly {@link google.datastore.v1.Query.verify|verify} messages.
11860 * @function encodeDelimited
11861 * @memberof google.datastore.v1.Query
11862 * @static
11863 * @param {google.datastore.v1.IQuery} message Query message or plain object to encode
11864 * @param {$protobuf.Writer} [writer] Writer to encode to
11865 * @returns {$protobuf.Writer} Writer
11866 */
11867 Query.encodeDelimited = function encodeDelimited(message, writer) {
11868 return this.encode(message, writer).ldelim();
11869 };
11870
11871 /**
11872 * Decodes a Query message from the specified reader or buffer.
11873 * @function decode
11874 * @memberof google.datastore.v1.Query
11875 * @static
11876 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
11877 * @param {number} [length] Message length if known beforehand
11878 * @returns {google.datastore.v1.Query} Query
11879 * @throws {Error} If the payload is not a reader or valid buffer
11880 * @throws {$protobuf.util.ProtocolError} If required fields are missing
11881 */
11882 Query.decode = function decode(reader, length) {
11883 if (!(reader instanceof $Reader))
11884 reader = $Reader.create(reader);
11885 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.Query();
11886 while (reader.pos < end) {
11887 var tag = reader.uint32();
11888 switch (tag >>> 3) {
11889 case 2:
11890 if (!(message.projection && message.projection.length))
11891 message.projection = [];
11892 message.projection.push($root.google.datastore.v1.Projection.decode(reader, reader.uint32()));
11893 break;
11894 case 3:
11895 if (!(message.kind && message.kind.length))
11896 message.kind = [];
11897 message.kind.push($root.google.datastore.v1.KindExpression.decode(reader, reader.uint32()));
11898 break;
11899 case 4:
11900 message.filter = $root.google.datastore.v1.Filter.decode(reader, reader.uint32());
11901 break;
11902 case 5:
11903 if (!(message.order && message.order.length))
11904 message.order = [];
11905 message.order.push($root.google.datastore.v1.PropertyOrder.decode(reader, reader.uint32()));
11906 break;
11907 case 6:
11908 if (!(message.distinctOn && message.distinctOn.length))
11909 message.distinctOn = [];
11910 message.distinctOn.push($root.google.datastore.v1.PropertyReference.decode(reader, reader.uint32()));
11911 break;
11912 case 7:
11913 message.startCursor = reader.bytes();
11914 break;
11915 case 8:
11916 message.endCursor = reader.bytes();
11917 break;
11918 case 10:
11919 message.offset = reader.int32();
11920 break;
11921 case 12:
11922 message.limit = $root.google.protobuf.Int32Value.decode(reader, reader.uint32());
11923 break;
11924 default:
11925 reader.skipType(tag & 7);
11926 break;
11927 }
11928 }
11929 return message;
11930 };
11931
11932 /**
11933 * Decodes a Query message from the specified reader or buffer, length delimited.
11934 * @function decodeDelimited
11935 * @memberof google.datastore.v1.Query
11936 * @static
11937 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
11938 * @returns {google.datastore.v1.Query} Query
11939 * @throws {Error} If the payload is not a reader or valid buffer
11940 * @throws {$protobuf.util.ProtocolError} If required fields are missing
11941 */
11942 Query.decodeDelimited = function decodeDelimited(reader) {
11943 if (!(reader instanceof $Reader))
11944 reader = new $Reader(reader);
11945 return this.decode(reader, reader.uint32());
11946 };
11947
11948 /**
11949 * Verifies a Query message.
11950 * @function verify
11951 * @memberof google.datastore.v1.Query
11952 * @static
11953 * @param {Object.<string,*>} message Plain object to verify
11954 * @returns {string|null} `null` if valid, otherwise the reason why it is not
11955 */
11956 Query.verify = function verify(message) {
11957 if (typeof message !== "object" || message === null)
11958 return "object expected";
11959 if (message.projection != null && message.hasOwnProperty("projection")) {
11960 if (!Array.isArray(message.projection))
11961 return "projection: array expected";
11962 for (var i = 0; i < message.projection.length; ++i) {
11963 var error = $root.google.datastore.v1.Projection.verify(message.projection[i]);
11964 if (error)
11965 return "projection." + error;
11966 }
11967 }
11968 if (message.kind != null && message.hasOwnProperty("kind")) {
11969 if (!Array.isArray(message.kind))
11970 return "kind: array expected";
11971 for (var i = 0; i < message.kind.length; ++i) {
11972 var error = $root.google.datastore.v1.KindExpression.verify(message.kind[i]);
11973 if (error)
11974 return "kind." + error;
11975 }
11976 }
11977 if (message.filter != null && message.hasOwnProperty("filter")) {
11978 var error = $root.google.datastore.v1.Filter.verify(message.filter);
11979 if (error)
11980 return "filter." + error;
11981 }
11982 if (message.order != null && message.hasOwnProperty("order")) {
11983 if (!Array.isArray(message.order))
11984 return "order: array expected";
11985 for (var i = 0; i < message.order.length; ++i) {
11986 var error = $root.google.datastore.v1.PropertyOrder.verify(message.order[i]);
11987 if (error)
11988 return "order." + error;
11989 }
11990 }
11991 if (message.distinctOn != null && message.hasOwnProperty("distinctOn")) {
11992 if (!Array.isArray(message.distinctOn))
11993 return "distinctOn: array expected";
11994 for (var i = 0; i < message.distinctOn.length; ++i) {
11995 var error = $root.google.datastore.v1.PropertyReference.verify(message.distinctOn[i]);
11996 if (error)
11997 return "distinctOn." + error;
11998 }
11999 }
12000 if (message.startCursor != null && message.hasOwnProperty("startCursor"))
12001 if (!(message.startCursor && typeof message.startCursor.length === "number" || $util.isString(message.startCursor)))
12002 return "startCursor: buffer expected";
12003 if (message.endCursor != null && message.hasOwnProperty("endCursor"))
12004 if (!(message.endCursor && typeof message.endCursor.length === "number" || $util.isString(message.endCursor)))
12005 return "endCursor: buffer expected";
12006 if (message.offset != null && message.hasOwnProperty("offset"))
12007 if (!$util.isInteger(message.offset))
12008 return "offset: integer expected";
12009 if (message.limit != null && message.hasOwnProperty("limit")) {
12010 var error = $root.google.protobuf.Int32Value.verify(message.limit);
12011 if (error)
12012 return "limit." + error;
12013 }
12014 return null;
12015 };
12016
12017 /**
12018 * Creates a Query message from a plain object. Also converts values to their respective internal types.
12019 * @function fromObject
12020 * @memberof google.datastore.v1.Query
12021 * @static
12022 * @param {Object.<string,*>} object Plain object
12023 * @returns {google.datastore.v1.Query} Query
12024 */
12025 Query.fromObject = function fromObject(object) {
12026 if (object instanceof $root.google.datastore.v1.Query)
12027 return object;
12028 var message = new $root.google.datastore.v1.Query();
12029 if (object.projection) {
12030 if (!Array.isArray(object.projection))
12031 throw TypeError(".google.datastore.v1.Query.projection: array expected");
12032 message.projection = [];
12033 for (var i = 0; i < object.projection.length; ++i) {
12034 if (typeof object.projection[i] !== "object")
12035 throw TypeError(".google.datastore.v1.Query.projection: object expected");
12036 message.projection[i] = $root.google.datastore.v1.Projection.fromObject(object.projection[i]);
12037 }
12038 }
12039 if (object.kind) {
12040 if (!Array.isArray(object.kind))
12041 throw TypeError(".google.datastore.v1.Query.kind: array expected");
12042 message.kind = [];
12043 for (var i = 0; i < object.kind.length; ++i) {
12044 if (typeof object.kind[i] !== "object")
12045 throw TypeError(".google.datastore.v1.Query.kind: object expected");
12046 message.kind[i] = $root.google.datastore.v1.KindExpression.fromObject(object.kind[i]);
12047 }
12048 }
12049 if (object.filter != null) {
12050 if (typeof object.filter !== "object")
12051 throw TypeError(".google.datastore.v1.Query.filter: object expected");
12052 message.filter = $root.google.datastore.v1.Filter.fromObject(object.filter);
12053 }
12054 if (object.order) {
12055 if (!Array.isArray(object.order))
12056 throw TypeError(".google.datastore.v1.Query.order: array expected");
12057 message.order = [];
12058 for (var i = 0; i < object.order.length; ++i) {
12059 if (typeof object.order[i] !== "object")
12060 throw TypeError(".google.datastore.v1.Query.order: object expected");
12061 message.order[i] = $root.google.datastore.v1.PropertyOrder.fromObject(object.order[i]);
12062 }
12063 }
12064 if (object.distinctOn) {
12065 if (!Array.isArray(object.distinctOn))
12066 throw TypeError(".google.datastore.v1.Query.distinctOn: array expected");
12067 message.distinctOn = [];
12068 for (var i = 0; i < object.distinctOn.length; ++i) {
12069 if (typeof object.distinctOn[i] !== "object")
12070 throw TypeError(".google.datastore.v1.Query.distinctOn: object expected");
12071 message.distinctOn[i] = $root.google.datastore.v1.PropertyReference.fromObject(object.distinctOn[i]);
12072 }
12073 }
12074 if (object.startCursor != null)
12075 if (typeof object.startCursor === "string")
12076 $util.base64.decode(object.startCursor, message.startCursor = $util.newBuffer($util.base64.length(object.startCursor)), 0);
12077 else if (object.startCursor.length)
12078 message.startCursor = object.startCursor;
12079 if (object.endCursor != null)
12080 if (typeof object.endCursor === "string")
12081 $util.base64.decode(object.endCursor, message.endCursor = $util.newBuffer($util.base64.length(object.endCursor)), 0);
12082 else if (object.endCursor.length)
12083 message.endCursor = object.endCursor;
12084 if (object.offset != null)
12085 message.offset = object.offset | 0;
12086 if (object.limit != null) {
12087 if (typeof object.limit !== "object")
12088 throw TypeError(".google.datastore.v1.Query.limit: object expected");
12089 message.limit = $root.google.protobuf.Int32Value.fromObject(object.limit);
12090 }
12091 return message;
12092 };
12093
12094 /**
12095 * Creates a plain object from a Query message. Also converts values to other types if specified.
12096 * @function toObject
12097 * @memberof google.datastore.v1.Query
12098 * @static
12099 * @param {google.datastore.v1.Query} message Query
12100 * @param {$protobuf.IConversionOptions} [options] Conversion options
12101 * @returns {Object.<string,*>} Plain object
12102 */
12103 Query.toObject = function toObject(message, options) {
12104 if (!options)
12105 options = {};
12106 var object = {};
12107 if (options.arrays || options.defaults) {
12108 object.projection = [];
12109 object.kind = [];
12110 object.order = [];
12111 object.distinctOn = [];
12112 }
12113 if (options.defaults) {
12114 object.filter = null;
12115 if (options.bytes === String)
12116 object.startCursor = "";
12117 else {
12118 object.startCursor = [];
12119 if (options.bytes !== Array)
12120 object.startCursor = $util.newBuffer(object.startCursor);
12121 }
12122 if (options.bytes === String)
12123 object.endCursor = "";
12124 else {
12125 object.endCursor = [];
12126 if (options.bytes !== Array)
12127 object.endCursor = $util.newBuffer(object.endCursor);
12128 }
12129 object.offset = 0;
12130 object.limit = null;
12131 }
12132 if (message.projection && message.projection.length) {
12133 object.projection = [];
12134 for (var j = 0; j < message.projection.length; ++j)
12135 object.projection[j] = $root.google.datastore.v1.Projection.toObject(message.projection[j], options);
12136 }
12137 if (message.kind && message.kind.length) {
12138 object.kind = [];
12139 for (var j = 0; j < message.kind.length; ++j)
12140 object.kind[j] = $root.google.datastore.v1.KindExpression.toObject(message.kind[j], options);
12141 }
12142 if (message.filter != null && message.hasOwnProperty("filter"))
12143 object.filter = $root.google.datastore.v1.Filter.toObject(message.filter, options);
12144 if (message.order && message.order.length) {
12145 object.order = [];
12146 for (var j = 0; j < message.order.length; ++j)
12147 object.order[j] = $root.google.datastore.v1.PropertyOrder.toObject(message.order[j], options);
12148 }
12149 if (message.distinctOn && message.distinctOn.length) {
12150 object.distinctOn = [];
12151 for (var j = 0; j < message.distinctOn.length; ++j)
12152 object.distinctOn[j] = $root.google.datastore.v1.PropertyReference.toObject(message.distinctOn[j], options);
12153 }
12154 if (message.startCursor != null && message.hasOwnProperty("startCursor"))
12155 object.startCursor = options.bytes === String ? $util.base64.encode(message.startCursor, 0, message.startCursor.length) : options.bytes === Array ? Array.prototype.slice.call(message.startCursor) : message.startCursor;
12156 if (message.endCursor != null && message.hasOwnProperty("endCursor"))
12157 object.endCursor = options.bytes === String ? $util.base64.encode(message.endCursor, 0, message.endCursor.length) : options.bytes === Array ? Array.prototype.slice.call(message.endCursor) : message.endCursor;
12158 if (message.offset != null && message.hasOwnProperty("offset"))
12159 object.offset = message.offset;
12160 if (message.limit != null && message.hasOwnProperty("limit"))
12161 object.limit = $root.google.protobuf.Int32Value.toObject(message.limit, options);
12162 return object;
12163 };
12164
12165 /**
12166 * Converts this Query to JSON.
12167 * @function toJSON
12168 * @memberof google.datastore.v1.Query
12169 * @instance
12170 * @returns {Object.<string,*>} JSON object
12171 */
12172 Query.prototype.toJSON = function toJSON() {
12173 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
12174 };
12175
12176 return Query;
12177 })();
12178
12179 v1.KindExpression = (function() {
12180
12181 /**
12182 * Properties of a KindExpression.
12183 * @memberof google.datastore.v1
12184 * @interface IKindExpression
12185 * @property {string|null} [name] KindExpression name
12186 */
12187
12188 /**
12189 * Constructs a new KindExpression.
12190 * @memberof google.datastore.v1
12191 * @classdesc Represents a KindExpression.
12192 * @implements IKindExpression
12193 * @constructor
12194 * @param {google.datastore.v1.IKindExpression=} [properties] Properties to set
12195 */
12196 function KindExpression(properties) {
12197 if (properties)
12198 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
12199 if (properties[keys[i]] != null)
12200 this[keys[i]] = properties[keys[i]];
12201 }
12202
12203 /**
12204 * KindExpression name.
12205 * @member {string} name
12206 * @memberof google.datastore.v1.KindExpression
12207 * @instance
12208 */
12209 KindExpression.prototype.name = "";
12210
12211 /**
12212 * Creates a new KindExpression instance using the specified properties.
12213 * @function create
12214 * @memberof google.datastore.v1.KindExpression
12215 * @static
12216 * @param {google.datastore.v1.IKindExpression=} [properties] Properties to set
12217 * @returns {google.datastore.v1.KindExpression} KindExpression instance
12218 */
12219 KindExpression.create = function create(properties) {
12220 return new KindExpression(properties);
12221 };
12222
12223 /**
12224 * Encodes the specified KindExpression message. Does not implicitly {@link google.datastore.v1.KindExpression.verify|verify} messages.
12225 * @function encode
12226 * @memberof google.datastore.v1.KindExpression
12227 * @static
12228 * @param {google.datastore.v1.IKindExpression} message KindExpression message or plain object to encode
12229 * @param {$protobuf.Writer} [writer] Writer to encode to
12230 * @returns {$protobuf.Writer} Writer
12231 */
12232 KindExpression.encode = function encode(message, writer) {
12233 if (!writer)
12234 writer = $Writer.create();
12235 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
12236 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
12237 return writer;
12238 };
12239
12240 /**
12241 * Encodes the specified KindExpression message, length delimited. Does not implicitly {@link google.datastore.v1.KindExpression.verify|verify} messages.
12242 * @function encodeDelimited
12243 * @memberof google.datastore.v1.KindExpression
12244 * @static
12245 * @param {google.datastore.v1.IKindExpression} message KindExpression message or plain object to encode
12246 * @param {$protobuf.Writer} [writer] Writer to encode to
12247 * @returns {$protobuf.Writer} Writer
12248 */
12249 KindExpression.encodeDelimited = function encodeDelimited(message, writer) {
12250 return this.encode(message, writer).ldelim();
12251 };
12252
12253 /**
12254 * Decodes a KindExpression message from the specified reader or buffer.
12255 * @function decode
12256 * @memberof google.datastore.v1.KindExpression
12257 * @static
12258 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12259 * @param {number} [length] Message length if known beforehand
12260 * @returns {google.datastore.v1.KindExpression} KindExpression
12261 * @throws {Error} If the payload is not a reader or valid buffer
12262 * @throws {$protobuf.util.ProtocolError} If required fields are missing
12263 */
12264 KindExpression.decode = function decode(reader, length) {
12265 if (!(reader instanceof $Reader))
12266 reader = $Reader.create(reader);
12267 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.KindExpression();
12268 while (reader.pos < end) {
12269 var tag = reader.uint32();
12270 switch (tag >>> 3) {
12271 case 1:
12272 message.name = reader.string();
12273 break;
12274 default:
12275 reader.skipType(tag & 7);
12276 break;
12277 }
12278 }
12279 return message;
12280 };
12281
12282 /**
12283 * Decodes a KindExpression message from the specified reader or buffer, length delimited.
12284 * @function decodeDelimited
12285 * @memberof google.datastore.v1.KindExpression
12286 * @static
12287 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12288 * @returns {google.datastore.v1.KindExpression} KindExpression
12289 * @throws {Error} If the payload is not a reader or valid buffer
12290 * @throws {$protobuf.util.ProtocolError} If required fields are missing
12291 */
12292 KindExpression.decodeDelimited = function decodeDelimited(reader) {
12293 if (!(reader instanceof $Reader))
12294 reader = new $Reader(reader);
12295 return this.decode(reader, reader.uint32());
12296 };
12297
12298 /**
12299 * Verifies a KindExpression message.
12300 * @function verify
12301 * @memberof google.datastore.v1.KindExpression
12302 * @static
12303 * @param {Object.<string,*>} message Plain object to verify
12304 * @returns {string|null} `null` if valid, otherwise the reason why it is not
12305 */
12306 KindExpression.verify = function verify(message) {
12307 if (typeof message !== "object" || message === null)
12308 return "object expected";
12309 if (message.name != null && message.hasOwnProperty("name"))
12310 if (!$util.isString(message.name))
12311 return "name: string expected";
12312 return null;
12313 };
12314
12315 /**
12316 * Creates a KindExpression message from a plain object. Also converts values to their respective internal types.
12317 * @function fromObject
12318 * @memberof google.datastore.v1.KindExpression
12319 * @static
12320 * @param {Object.<string,*>} object Plain object
12321 * @returns {google.datastore.v1.KindExpression} KindExpression
12322 */
12323 KindExpression.fromObject = function fromObject(object) {
12324 if (object instanceof $root.google.datastore.v1.KindExpression)
12325 return object;
12326 var message = new $root.google.datastore.v1.KindExpression();
12327 if (object.name != null)
12328 message.name = String(object.name);
12329 return message;
12330 };
12331
12332 /**
12333 * Creates a plain object from a KindExpression message. Also converts values to other types if specified.
12334 * @function toObject
12335 * @memberof google.datastore.v1.KindExpression
12336 * @static
12337 * @param {google.datastore.v1.KindExpression} message KindExpression
12338 * @param {$protobuf.IConversionOptions} [options] Conversion options
12339 * @returns {Object.<string,*>} Plain object
12340 */
12341 KindExpression.toObject = function toObject(message, options) {
12342 if (!options)
12343 options = {};
12344 var object = {};
12345 if (options.defaults)
12346 object.name = "";
12347 if (message.name != null && message.hasOwnProperty("name"))
12348 object.name = message.name;
12349 return object;
12350 };
12351
12352 /**
12353 * Converts this KindExpression to JSON.
12354 * @function toJSON
12355 * @memberof google.datastore.v1.KindExpression
12356 * @instance
12357 * @returns {Object.<string,*>} JSON object
12358 */
12359 KindExpression.prototype.toJSON = function toJSON() {
12360 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
12361 };
12362
12363 return KindExpression;
12364 })();
12365
12366 v1.PropertyReference = (function() {
12367
12368 /**
12369 * Properties of a PropertyReference.
12370 * @memberof google.datastore.v1
12371 * @interface IPropertyReference
12372 * @property {string|null} [name] PropertyReference name
12373 */
12374
12375 /**
12376 * Constructs a new PropertyReference.
12377 * @memberof google.datastore.v1
12378 * @classdesc Represents a PropertyReference.
12379 * @implements IPropertyReference
12380 * @constructor
12381 * @param {google.datastore.v1.IPropertyReference=} [properties] Properties to set
12382 */
12383 function PropertyReference(properties) {
12384 if (properties)
12385 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
12386 if (properties[keys[i]] != null)
12387 this[keys[i]] = properties[keys[i]];
12388 }
12389
12390 /**
12391 * PropertyReference name.
12392 * @member {string} name
12393 * @memberof google.datastore.v1.PropertyReference
12394 * @instance
12395 */
12396 PropertyReference.prototype.name = "";
12397
12398 /**
12399 * Creates a new PropertyReference instance using the specified properties.
12400 * @function create
12401 * @memberof google.datastore.v1.PropertyReference
12402 * @static
12403 * @param {google.datastore.v1.IPropertyReference=} [properties] Properties to set
12404 * @returns {google.datastore.v1.PropertyReference} PropertyReference instance
12405 */
12406 PropertyReference.create = function create(properties) {
12407 return new PropertyReference(properties);
12408 };
12409
12410 /**
12411 * Encodes the specified PropertyReference message. Does not implicitly {@link google.datastore.v1.PropertyReference.verify|verify} messages.
12412 * @function encode
12413 * @memberof google.datastore.v1.PropertyReference
12414 * @static
12415 * @param {google.datastore.v1.IPropertyReference} message PropertyReference message or plain object to encode
12416 * @param {$protobuf.Writer} [writer] Writer to encode to
12417 * @returns {$protobuf.Writer} Writer
12418 */
12419 PropertyReference.encode = function encode(message, writer) {
12420 if (!writer)
12421 writer = $Writer.create();
12422 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
12423 writer.uint32(/* id 2, wireType 2 =*/18).string(message.name);
12424 return writer;
12425 };
12426
12427 /**
12428 * Encodes the specified PropertyReference message, length delimited. Does not implicitly {@link google.datastore.v1.PropertyReference.verify|verify} messages.
12429 * @function encodeDelimited
12430 * @memberof google.datastore.v1.PropertyReference
12431 * @static
12432 * @param {google.datastore.v1.IPropertyReference} message PropertyReference message or plain object to encode
12433 * @param {$protobuf.Writer} [writer] Writer to encode to
12434 * @returns {$protobuf.Writer} Writer
12435 */
12436 PropertyReference.encodeDelimited = function encodeDelimited(message, writer) {
12437 return this.encode(message, writer).ldelim();
12438 };
12439
12440 /**
12441 * Decodes a PropertyReference message from the specified reader or buffer.
12442 * @function decode
12443 * @memberof google.datastore.v1.PropertyReference
12444 * @static
12445 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12446 * @param {number} [length] Message length if known beforehand
12447 * @returns {google.datastore.v1.PropertyReference} PropertyReference
12448 * @throws {Error} If the payload is not a reader or valid buffer
12449 * @throws {$protobuf.util.ProtocolError} If required fields are missing
12450 */
12451 PropertyReference.decode = function decode(reader, length) {
12452 if (!(reader instanceof $Reader))
12453 reader = $Reader.create(reader);
12454 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.PropertyReference();
12455 while (reader.pos < end) {
12456 var tag = reader.uint32();
12457 switch (tag >>> 3) {
12458 case 2:
12459 message.name = reader.string();
12460 break;
12461 default:
12462 reader.skipType(tag & 7);
12463 break;
12464 }
12465 }
12466 return message;
12467 };
12468
12469 /**
12470 * Decodes a PropertyReference message from the specified reader or buffer, length delimited.
12471 * @function decodeDelimited
12472 * @memberof google.datastore.v1.PropertyReference
12473 * @static
12474 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12475 * @returns {google.datastore.v1.PropertyReference} PropertyReference
12476 * @throws {Error} If the payload is not a reader or valid buffer
12477 * @throws {$protobuf.util.ProtocolError} If required fields are missing
12478 */
12479 PropertyReference.decodeDelimited = function decodeDelimited(reader) {
12480 if (!(reader instanceof $Reader))
12481 reader = new $Reader(reader);
12482 return this.decode(reader, reader.uint32());
12483 };
12484
12485 /**
12486 * Verifies a PropertyReference message.
12487 * @function verify
12488 * @memberof google.datastore.v1.PropertyReference
12489 * @static
12490 * @param {Object.<string,*>} message Plain object to verify
12491 * @returns {string|null} `null` if valid, otherwise the reason why it is not
12492 */
12493 PropertyReference.verify = function verify(message) {
12494 if (typeof message !== "object" || message === null)
12495 return "object expected";
12496 if (message.name != null && message.hasOwnProperty("name"))
12497 if (!$util.isString(message.name))
12498 return "name: string expected";
12499 return null;
12500 };
12501
12502 /**
12503 * Creates a PropertyReference message from a plain object. Also converts values to their respective internal types.
12504 * @function fromObject
12505 * @memberof google.datastore.v1.PropertyReference
12506 * @static
12507 * @param {Object.<string,*>} object Plain object
12508 * @returns {google.datastore.v1.PropertyReference} PropertyReference
12509 */
12510 PropertyReference.fromObject = function fromObject(object) {
12511 if (object instanceof $root.google.datastore.v1.PropertyReference)
12512 return object;
12513 var message = new $root.google.datastore.v1.PropertyReference();
12514 if (object.name != null)
12515 message.name = String(object.name);
12516 return message;
12517 };
12518
12519 /**
12520 * Creates a plain object from a PropertyReference message. Also converts values to other types if specified.
12521 * @function toObject
12522 * @memberof google.datastore.v1.PropertyReference
12523 * @static
12524 * @param {google.datastore.v1.PropertyReference} message PropertyReference
12525 * @param {$protobuf.IConversionOptions} [options] Conversion options
12526 * @returns {Object.<string,*>} Plain object
12527 */
12528 PropertyReference.toObject = function toObject(message, options) {
12529 if (!options)
12530 options = {};
12531 var object = {};
12532 if (options.defaults)
12533 object.name = "";
12534 if (message.name != null && message.hasOwnProperty("name"))
12535 object.name = message.name;
12536 return object;
12537 };
12538
12539 /**
12540 * Converts this PropertyReference to JSON.
12541 * @function toJSON
12542 * @memberof google.datastore.v1.PropertyReference
12543 * @instance
12544 * @returns {Object.<string,*>} JSON object
12545 */
12546 PropertyReference.prototype.toJSON = function toJSON() {
12547 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
12548 };
12549
12550 return PropertyReference;
12551 })();
12552
12553 v1.Projection = (function() {
12554
12555 /**
12556 * Properties of a Projection.
12557 * @memberof google.datastore.v1
12558 * @interface IProjection
12559 * @property {google.datastore.v1.IPropertyReference|null} [property] Projection property
12560 */
12561
12562 /**
12563 * Constructs a new Projection.
12564 * @memberof google.datastore.v1
12565 * @classdesc Represents a Projection.
12566 * @implements IProjection
12567 * @constructor
12568 * @param {google.datastore.v1.IProjection=} [properties] Properties to set
12569 */
12570 function Projection(properties) {
12571 if (properties)
12572 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
12573 if (properties[keys[i]] != null)
12574 this[keys[i]] = properties[keys[i]];
12575 }
12576
12577 /**
12578 * Projection property.
12579 * @member {google.datastore.v1.IPropertyReference|null|undefined} property
12580 * @memberof google.datastore.v1.Projection
12581 * @instance
12582 */
12583 Projection.prototype.property = null;
12584
12585 /**
12586 * Creates a new Projection instance using the specified properties.
12587 * @function create
12588 * @memberof google.datastore.v1.Projection
12589 * @static
12590 * @param {google.datastore.v1.IProjection=} [properties] Properties to set
12591 * @returns {google.datastore.v1.Projection} Projection instance
12592 */
12593 Projection.create = function create(properties) {
12594 return new Projection(properties);
12595 };
12596
12597 /**
12598 * Encodes the specified Projection message. Does not implicitly {@link google.datastore.v1.Projection.verify|verify} messages.
12599 * @function encode
12600 * @memberof google.datastore.v1.Projection
12601 * @static
12602 * @param {google.datastore.v1.IProjection} message Projection message or plain object to encode
12603 * @param {$protobuf.Writer} [writer] Writer to encode to
12604 * @returns {$protobuf.Writer} Writer
12605 */
12606 Projection.encode = function encode(message, writer) {
12607 if (!writer)
12608 writer = $Writer.create();
12609 if (message.property != null && Object.hasOwnProperty.call(message, "property"))
12610 $root.google.datastore.v1.PropertyReference.encode(message.property, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
12611 return writer;
12612 };
12613
12614 /**
12615 * Encodes the specified Projection message, length delimited. Does not implicitly {@link google.datastore.v1.Projection.verify|verify} messages.
12616 * @function encodeDelimited
12617 * @memberof google.datastore.v1.Projection
12618 * @static
12619 * @param {google.datastore.v1.IProjection} message Projection message or plain object to encode
12620 * @param {$protobuf.Writer} [writer] Writer to encode to
12621 * @returns {$protobuf.Writer} Writer
12622 */
12623 Projection.encodeDelimited = function encodeDelimited(message, writer) {
12624 return this.encode(message, writer).ldelim();
12625 };
12626
12627 /**
12628 * Decodes a Projection message from the specified reader or buffer.
12629 * @function decode
12630 * @memberof google.datastore.v1.Projection
12631 * @static
12632 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12633 * @param {number} [length] Message length if known beforehand
12634 * @returns {google.datastore.v1.Projection} Projection
12635 * @throws {Error} If the payload is not a reader or valid buffer
12636 * @throws {$protobuf.util.ProtocolError} If required fields are missing
12637 */
12638 Projection.decode = function decode(reader, length) {
12639 if (!(reader instanceof $Reader))
12640 reader = $Reader.create(reader);
12641 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.Projection();
12642 while (reader.pos < end) {
12643 var tag = reader.uint32();
12644 switch (tag >>> 3) {
12645 case 1:
12646 message.property = $root.google.datastore.v1.PropertyReference.decode(reader, reader.uint32());
12647 break;
12648 default:
12649 reader.skipType(tag & 7);
12650 break;
12651 }
12652 }
12653 return message;
12654 };
12655
12656 /**
12657 * Decodes a Projection message from the specified reader or buffer, length delimited.
12658 * @function decodeDelimited
12659 * @memberof google.datastore.v1.Projection
12660 * @static
12661 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12662 * @returns {google.datastore.v1.Projection} Projection
12663 * @throws {Error} If the payload is not a reader or valid buffer
12664 * @throws {$protobuf.util.ProtocolError} If required fields are missing
12665 */
12666 Projection.decodeDelimited = function decodeDelimited(reader) {
12667 if (!(reader instanceof $Reader))
12668 reader = new $Reader(reader);
12669 return this.decode(reader, reader.uint32());
12670 };
12671
12672 /**
12673 * Verifies a Projection message.
12674 * @function verify
12675 * @memberof google.datastore.v1.Projection
12676 * @static
12677 * @param {Object.<string,*>} message Plain object to verify
12678 * @returns {string|null} `null` if valid, otherwise the reason why it is not
12679 */
12680 Projection.verify = function verify(message) {
12681 if (typeof message !== "object" || message === null)
12682 return "object expected";
12683 if (message.property != null && message.hasOwnProperty("property")) {
12684 var error = $root.google.datastore.v1.PropertyReference.verify(message.property);
12685 if (error)
12686 return "property." + error;
12687 }
12688 return null;
12689 };
12690
12691 /**
12692 * Creates a Projection message from a plain object. Also converts values to their respective internal types.
12693 * @function fromObject
12694 * @memberof google.datastore.v1.Projection
12695 * @static
12696 * @param {Object.<string,*>} object Plain object
12697 * @returns {google.datastore.v1.Projection} Projection
12698 */
12699 Projection.fromObject = function fromObject(object) {
12700 if (object instanceof $root.google.datastore.v1.Projection)
12701 return object;
12702 var message = new $root.google.datastore.v1.Projection();
12703 if (object.property != null) {
12704 if (typeof object.property !== "object")
12705 throw TypeError(".google.datastore.v1.Projection.property: object expected");
12706 message.property = $root.google.datastore.v1.PropertyReference.fromObject(object.property);
12707 }
12708 return message;
12709 };
12710
12711 /**
12712 * Creates a plain object from a Projection message. Also converts values to other types if specified.
12713 * @function toObject
12714 * @memberof google.datastore.v1.Projection
12715 * @static
12716 * @param {google.datastore.v1.Projection} message Projection
12717 * @param {$protobuf.IConversionOptions} [options] Conversion options
12718 * @returns {Object.<string,*>} Plain object
12719 */
12720 Projection.toObject = function toObject(message, options) {
12721 if (!options)
12722 options = {};
12723 var object = {};
12724 if (options.defaults)
12725 object.property = null;
12726 if (message.property != null && message.hasOwnProperty("property"))
12727 object.property = $root.google.datastore.v1.PropertyReference.toObject(message.property, options);
12728 return object;
12729 };
12730
12731 /**
12732 * Converts this Projection to JSON.
12733 * @function toJSON
12734 * @memberof google.datastore.v1.Projection
12735 * @instance
12736 * @returns {Object.<string,*>} JSON object
12737 */
12738 Projection.prototype.toJSON = function toJSON() {
12739 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
12740 };
12741
12742 return Projection;
12743 })();
12744
12745 v1.PropertyOrder = (function() {
12746
12747 /**
12748 * Properties of a PropertyOrder.
12749 * @memberof google.datastore.v1
12750 * @interface IPropertyOrder
12751 * @property {google.datastore.v1.IPropertyReference|null} [property] PropertyOrder property
12752 * @property {google.datastore.v1.PropertyOrder.Direction|null} [direction] PropertyOrder direction
12753 */
12754
12755 /**
12756 * Constructs a new PropertyOrder.
12757 * @memberof google.datastore.v1
12758 * @classdesc Represents a PropertyOrder.
12759 * @implements IPropertyOrder
12760 * @constructor
12761 * @param {google.datastore.v1.IPropertyOrder=} [properties] Properties to set
12762 */
12763 function PropertyOrder(properties) {
12764 if (properties)
12765 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
12766 if (properties[keys[i]] != null)
12767 this[keys[i]] = properties[keys[i]];
12768 }
12769
12770 /**
12771 * PropertyOrder property.
12772 * @member {google.datastore.v1.IPropertyReference|null|undefined} property
12773 * @memberof google.datastore.v1.PropertyOrder
12774 * @instance
12775 */
12776 PropertyOrder.prototype.property = null;
12777
12778 /**
12779 * PropertyOrder direction.
12780 * @member {google.datastore.v1.PropertyOrder.Direction} direction
12781 * @memberof google.datastore.v1.PropertyOrder
12782 * @instance
12783 */
12784 PropertyOrder.prototype.direction = 0;
12785
12786 /**
12787 * Creates a new PropertyOrder instance using the specified properties.
12788 * @function create
12789 * @memberof google.datastore.v1.PropertyOrder
12790 * @static
12791 * @param {google.datastore.v1.IPropertyOrder=} [properties] Properties to set
12792 * @returns {google.datastore.v1.PropertyOrder} PropertyOrder instance
12793 */
12794 PropertyOrder.create = function create(properties) {
12795 return new PropertyOrder(properties);
12796 };
12797
12798 /**
12799 * Encodes the specified PropertyOrder message. Does not implicitly {@link google.datastore.v1.PropertyOrder.verify|verify} messages.
12800 * @function encode
12801 * @memberof google.datastore.v1.PropertyOrder
12802 * @static
12803 * @param {google.datastore.v1.IPropertyOrder} message PropertyOrder message or plain object to encode
12804 * @param {$protobuf.Writer} [writer] Writer to encode to
12805 * @returns {$protobuf.Writer} Writer
12806 */
12807 PropertyOrder.encode = function encode(message, writer) {
12808 if (!writer)
12809 writer = $Writer.create();
12810 if (message.property != null && Object.hasOwnProperty.call(message, "property"))
12811 $root.google.datastore.v1.PropertyReference.encode(message.property, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
12812 if (message.direction != null && Object.hasOwnProperty.call(message, "direction"))
12813 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.direction);
12814 return writer;
12815 };
12816
12817 /**
12818 * Encodes the specified PropertyOrder message, length delimited. Does not implicitly {@link google.datastore.v1.PropertyOrder.verify|verify} messages.
12819 * @function encodeDelimited
12820 * @memberof google.datastore.v1.PropertyOrder
12821 * @static
12822 * @param {google.datastore.v1.IPropertyOrder} message PropertyOrder message or plain object to encode
12823 * @param {$protobuf.Writer} [writer] Writer to encode to
12824 * @returns {$protobuf.Writer} Writer
12825 */
12826 PropertyOrder.encodeDelimited = function encodeDelimited(message, writer) {
12827 return this.encode(message, writer).ldelim();
12828 };
12829
12830 /**
12831 * Decodes a PropertyOrder message from the specified reader or buffer.
12832 * @function decode
12833 * @memberof google.datastore.v1.PropertyOrder
12834 * @static
12835 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12836 * @param {number} [length] Message length if known beforehand
12837 * @returns {google.datastore.v1.PropertyOrder} PropertyOrder
12838 * @throws {Error} If the payload is not a reader or valid buffer
12839 * @throws {$protobuf.util.ProtocolError} If required fields are missing
12840 */
12841 PropertyOrder.decode = function decode(reader, length) {
12842 if (!(reader instanceof $Reader))
12843 reader = $Reader.create(reader);
12844 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.PropertyOrder();
12845 while (reader.pos < end) {
12846 var tag = reader.uint32();
12847 switch (tag >>> 3) {
12848 case 1:
12849 message.property = $root.google.datastore.v1.PropertyReference.decode(reader, reader.uint32());
12850 break;
12851 case 2:
12852 message.direction = reader.int32();
12853 break;
12854 default:
12855 reader.skipType(tag & 7);
12856 break;
12857 }
12858 }
12859 return message;
12860 };
12861
12862 /**
12863 * Decodes a PropertyOrder message from the specified reader or buffer, length delimited.
12864 * @function decodeDelimited
12865 * @memberof google.datastore.v1.PropertyOrder
12866 * @static
12867 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
12868 * @returns {google.datastore.v1.PropertyOrder} PropertyOrder
12869 * @throws {Error} If the payload is not a reader or valid buffer
12870 * @throws {$protobuf.util.ProtocolError} If required fields are missing
12871 */
12872 PropertyOrder.decodeDelimited = function decodeDelimited(reader) {
12873 if (!(reader instanceof $Reader))
12874 reader = new $Reader(reader);
12875 return this.decode(reader, reader.uint32());
12876 };
12877
12878 /**
12879 * Verifies a PropertyOrder message.
12880 * @function verify
12881 * @memberof google.datastore.v1.PropertyOrder
12882 * @static
12883 * @param {Object.<string,*>} message Plain object to verify
12884 * @returns {string|null} `null` if valid, otherwise the reason why it is not
12885 */
12886 PropertyOrder.verify = function verify(message) {
12887 if (typeof message !== "object" || message === null)
12888 return "object expected";
12889 if (message.property != null && message.hasOwnProperty("property")) {
12890 var error = $root.google.datastore.v1.PropertyReference.verify(message.property);
12891 if (error)
12892 return "property." + error;
12893 }
12894 if (message.direction != null && message.hasOwnProperty("direction"))
12895 switch (message.direction) {
12896 default:
12897 return "direction: enum value expected";
12898 case 0:
12899 case 1:
12900 case 2:
12901 break;
12902 }
12903 return null;
12904 };
12905
12906 /**
12907 * Creates a PropertyOrder message from a plain object. Also converts values to their respective internal types.
12908 * @function fromObject
12909 * @memberof google.datastore.v1.PropertyOrder
12910 * @static
12911 * @param {Object.<string,*>} object Plain object
12912 * @returns {google.datastore.v1.PropertyOrder} PropertyOrder
12913 */
12914 PropertyOrder.fromObject = function fromObject(object) {
12915 if (object instanceof $root.google.datastore.v1.PropertyOrder)
12916 return object;
12917 var message = new $root.google.datastore.v1.PropertyOrder();
12918 if (object.property != null) {
12919 if (typeof object.property !== "object")
12920 throw TypeError(".google.datastore.v1.PropertyOrder.property: object expected");
12921 message.property = $root.google.datastore.v1.PropertyReference.fromObject(object.property);
12922 }
12923 switch (object.direction) {
12924 case "DIRECTION_UNSPECIFIED":
12925 case 0:
12926 message.direction = 0;
12927 break;
12928 case "ASCENDING":
12929 case 1:
12930 message.direction = 1;
12931 break;
12932 case "DESCENDING":
12933 case 2:
12934 message.direction = 2;
12935 break;
12936 }
12937 return message;
12938 };
12939
12940 /**
12941 * Creates a plain object from a PropertyOrder message. Also converts values to other types if specified.
12942 * @function toObject
12943 * @memberof google.datastore.v1.PropertyOrder
12944 * @static
12945 * @param {google.datastore.v1.PropertyOrder} message PropertyOrder
12946 * @param {$protobuf.IConversionOptions} [options] Conversion options
12947 * @returns {Object.<string,*>} Plain object
12948 */
12949 PropertyOrder.toObject = function toObject(message, options) {
12950 if (!options)
12951 options = {};
12952 var object = {};
12953 if (options.defaults) {
12954 object.property = null;
12955 object.direction = options.enums === String ? "DIRECTION_UNSPECIFIED" : 0;
12956 }
12957 if (message.property != null && message.hasOwnProperty("property"))
12958 object.property = $root.google.datastore.v1.PropertyReference.toObject(message.property, options);
12959 if (message.direction != null && message.hasOwnProperty("direction"))
12960 object.direction = options.enums === String ? $root.google.datastore.v1.PropertyOrder.Direction[message.direction] : message.direction;
12961 return object;
12962 };
12963
12964 /**
12965 * Converts this PropertyOrder to JSON.
12966 * @function toJSON
12967 * @memberof google.datastore.v1.PropertyOrder
12968 * @instance
12969 * @returns {Object.<string,*>} JSON object
12970 */
12971 PropertyOrder.prototype.toJSON = function toJSON() {
12972 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
12973 };
12974
12975 /**
12976 * Direction enum.
12977 * @name google.datastore.v1.PropertyOrder.Direction
12978 * @enum {number}
12979 * @property {number} DIRECTION_UNSPECIFIED=0 DIRECTION_UNSPECIFIED value
12980 * @property {number} ASCENDING=1 ASCENDING value
12981 * @property {number} DESCENDING=2 DESCENDING value
12982 */
12983 PropertyOrder.Direction = (function() {
12984 var valuesById = {}, values = Object.create(valuesById);
12985 values[valuesById[0] = "DIRECTION_UNSPECIFIED"] = 0;
12986 values[valuesById[1] = "ASCENDING"] = 1;
12987 values[valuesById[2] = "DESCENDING"] = 2;
12988 return values;
12989 })();
12990
12991 return PropertyOrder;
12992 })();
12993
12994 v1.Filter = (function() {
12995
12996 /**
12997 * Properties of a Filter.
12998 * @memberof google.datastore.v1
12999 * @interface IFilter
13000 * @property {google.datastore.v1.ICompositeFilter|null} [compositeFilter] Filter compositeFilter
13001 * @property {google.datastore.v1.IPropertyFilter|null} [propertyFilter] Filter propertyFilter
13002 */
13003
13004 /**
13005 * Constructs a new Filter.
13006 * @memberof google.datastore.v1
13007 * @classdesc Represents a Filter.
13008 * @implements IFilter
13009 * @constructor
13010 * @param {google.datastore.v1.IFilter=} [properties] Properties to set
13011 */
13012 function Filter(properties) {
13013 if (properties)
13014 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
13015 if (properties[keys[i]] != null)
13016 this[keys[i]] = properties[keys[i]];
13017 }
13018
13019 /**
13020 * Filter compositeFilter.
13021 * @member {google.datastore.v1.ICompositeFilter|null|undefined} compositeFilter
13022 * @memberof google.datastore.v1.Filter
13023 * @instance
13024 */
13025 Filter.prototype.compositeFilter = null;
13026
13027 /**
13028 * Filter propertyFilter.
13029 * @member {google.datastore.v1.IPropertyFilter|null|undefined} propertyFilter
13030 * @memberof google.datastore.v1.Filter
13031 * @instance
13032 */
13033 Filter.prototype.propertyFilter = null;
13034
13035 // OneOf field names bound to virtual getters and setters
13036 var $oneOfFields;
13037
13038 /**
13039 * Filter filterType.
13040 * @member {"compositeFilter"|"propertyFilter"|undefined} filterType
13041 * @memberof google.datastore.v1.Filter
13042 * @instance
13043 */
13044 Object.defineProperty(Filter.prototype, "filterType", {
13045 get: $util.oneOfGetter($oneOfFields = ["compositeFilter", "propertyFilter"]),
13046 set: $util.oneOfSetter($oneOfFields)
13047 });
13048
13049 /**
13050 * Creates a new Filter instance using the specified properties.
13051 * @function create
13052 * @memberof google.datastore.v1.Filter
13053 * @static
13054 * @param {google.datastore.v1.IFilter=} [properties] Properties to set
13055 * @returns {google.datastore.v1.Filter} Filter instance
13056 */
13057 Filter.create = function create(properties) {
13058 return new Filter(properties);
13059 };
13060
13061 /**
13062 * Encodes the specified Filter message. Does not implicitly {@link google.datastore.v1.Filter.verify|verify} messages.
13063 * @function encode
13064 * @memberof google.datastore.v1.Filter
13065 * @static
13066 * @param {google.datastore.v1.IFilter} message Filter message or plain object to encode
13067 * @param {$protobuf.Writer} [writer] Writer to encode to
13068 * @returns {$protobuf.Writer} Writer
13069 */
13070 Filter.encode = function encode(message, writer) {
13071 if (!writer)
13072 writer = $Writer.create();
13073 if (message.compositeFilter != null && Object.hasOwnProperty.call(message, "compositeFilter"))
13074 $root.google.datastore.v1.CompositeFilter.encode(message.compositeFilter, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
13075 if (message.propertyFilter != null && Object.hasOwnProperty.call(message, "propertyFilter"))
13076 $root.google.datastore.v1.PropertyFilter.encode(message.propertyFilter, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
13077 return writer;
13078 };
13079
13080 /**
13081 * Encodes the specified Filter message, length delimited. Does not implicitly {@link google.datastore.v1.Filter.verify|verify} messages.
13082 * @function encodeDelimited
13083 * @memberof google.datastore.v1.Filter
13084 * @static
13085 * @param {google.datastore.v1.IFilter} message Filter message or plain object to encode
13086 * @param {$protobuf.Writer} [writer] Writer to encode to
13087 * @returns {$protobuf.Writer} Writer
13088 */
13089 Filter.encodeDelimited = function encodeDelimited(message, writer) {
13090 return this.encode(message, writer).ldelim();
13091 };
13092
13093 /**
13094 * Decodes a Filter message from the specified reader or buffer.
13095 * @function decode
13096 * @memberof google.datastore.v1.Filter
13097 * @static
13098 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13099 * @param {number} [length] Message length if known beforehand
13100 * @returns {google.datastore.v1.Filter} Filter
13101 * @throws {Error} If the payload is not a reader or valid buffer
13102 * @throws {$protobuf.util.ProtocolError} If required fields are missing
13103 */
13104 Filter.decode = function decode(reader, length) {
13105 if (!(reader instanceof $Reader))
13106 reader = $Reader.create(reader);
13107 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.Filter();
13108 while (reader.pos < end) {
13109 var tag = reader.uint32();
13110 switch (tag >>> 3) {
13111 case 1:
13112 message.compositeFilter = $root.google.datastore.v1.CompositeFilter.decode(reader, reader.uint32());
13113 break;
13114 case 2:
13115 message.propertyFilter = $root.google.datastore.v1.PropertyFilter.decode(reader, reader.uint32());
13116 break;
13117 default:
13118 reader.skipType(tag & 7);
13119 break;
13120 }
13121 }
13122 return message;
13123 };
13124
13125 /**
13126 * Decodes a Filter message from the specified reader or buffer, length delimited.
13127 * @function decodeDelimited
13128 * @memberof google.datastore.v1.Filter
13129 * @static
13130 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13131 * @returns {google.datastore.v1.Filter} Filter
13132 * @throws {Error} If the payload is not a reader or valid buffer
13133 * @throws {$protobuf.util.ProtocolError} If required fields are missing
13134 */
13135 Filter.decodeDelimited = function decodeDelimited(reader) {
13136 if (!(reader instanceof $Reader))
13137 reader = new $Reader(reader);
13138 return this.decode(reader, reader.uint32());
13139 };
13140
13141 /**
13142 * Verifies a Filter message.
13143 * @function verify
13144 * @memberof google.datastore.v1.Filter
13145 * @static
13146 * @param {Object.<string,*>} message Plain object to verify
13147 * @returns {string|null} `null` if valid, otherwise the reason why it is not
13148 */
13149 Filter.verify = function verify(message) {
13150 if (typeof message !== "object" || message === null)
13151 return "object expected";
13152 var properties = {};
13153 if (message.compositeFilter != null && message.hasOwnProperty("compositeFilter")) {
13154 properties.filterType = 1;
13155 {
13156 var error = $root.google.datastore.v1.CompositeFilter.verify(message.compositeFilter);
13157 if (error)
13158 return "compositeFilter." + error;
13159 }
13160 }
13161 if (message.propertyFilter != null && message.hasOwnProperty("propertyFilter")) {
13162 if (properties.filterType === 1)
13163 return "filterType: multiple values";
13164 properties.filterType = 1;
13165 {
13166 var error = $root.google.datastore.v1.PropertyFilter.verify(message.propertyFilter);
13167 if (error)
13168 return "propertyFilter." + error;
13169 }
13170 }
13171 return null;
13172 };
13173
13174 /**
13175 * Creates a Filter message from a plain object. Also converts values to their respective internal types.
13176 * @function fromObject
13177 * @memberof google.datastore.v1.Filter
13178 * @static
13179 * @param {Object.<string,*>} object Plain object
13180 * @returns {google.datastore.v1.Filter} Filter
13181 */
13182 Filter.fromObject = function fromObject(object) {
13183 if (object instanceof $root.google.datastore.v1.Filter)
13184 return object;
13185 var message = new $root.google.datastore.v1.Filter();
13186 if (object.compositeFilter != null) {
13187 if (typeof object.compositeFilter !== "object")
13188 throw TypeError(".google.datastore.v1.Filter.compositeFilter: object expected");
13189 message.compositeFilter = $root.google.datastore.v1.CompositeFilter.fromObject(object.compositeFilter);
13190 }
13191 if (object.propertyFilter != null) {
13192 if (typeof object.propertyFilter !== "object")
13193 throw TypeError(".google.datastore.v1.Filter.propertyFilter: object expected");
13194 message.propertyFilter = $root.google.datastore.v1.PropertyFilter.fromObject(object.propertyFilter);
13195 }
13196 return message;
13197 };
13198
13199 /**
13200 * Creates a plain object from a Filter message. Also converts values to other types if specified.
13201 * @function toObject
13202 * @memberof google.datastore.v1.Filter
13203 * @static
13204 * @param {google.datastore.v1.Filter} message Filter
13205 * @param {$protobuf.IConversionOptions} [options] Conversion options
13206 * @returns {Object.<string,*>} Plain object
13207 */
13208 Filter.toObject = function toObject(message, options) {
13209 if (!options)
13210 options = {};
13211 var object = {};
13212 if (message.compositeFilter != null && message.hasOwnProperty("compositeFilter")) {
13213 object.compositeFilter = $root.google.datastore.v1.CompositeFilter.toObject(message.compositeFilter, options);
13214 if (options.oneofs)
13215 object.filterType = "compositeFilter";
13216 }
13217 if (message.propertyFilter != null && message.hasOwnProperty("propertyFilter")) {
13218 object.propertyFilter = $root.google.datastore.v1.PropertyFilter.toObject(message.propertyFilter, options);
13219 if (options.oneofs)
13220 object.filterType = "propertyFilter";
13221 }
13222 return object;
13223 };
13224
13225 /**
13226 * Converts this Filter to JSON.
13227 * @function toJSON
13228 * @memberof google.datastore.v1.Filter
13229 * @instance
13230 * @returns {Object.<string,*>} JSON object
13231 */
13232 Filter.prototype.toJSON = function toJSON() {
13233 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
13234 };
13235
13236 return Filter;
13237 })();
13238
13239 v1.CompositeFilter = (function() {
13240
13241 /**
13242 * Properties of a CompositeFilter.
13243 * @memberof google.datastore.v1
13244 * @interface ICompositeFilter
13245 * @property {google.datastore.v1.CompositeFilter.Operator|null} [op] CompositeFilter op
13246 * @property {Array.<google.datastore.v1.IFilter>|null} [filters] CompositeFilter filters
13247 */
13248
13249 /**
13250 * Constructs a new CompositeFilter.
13251 * @memberof google.datastore.v1
13252 * @classdesc Represents a CompositeFilter.
13253 * @implements ICompositeFilter
13254 * @constructor
13255 * @param {google.datastore.v1.ICompositeFilter=} [properties] Properties to set
13256 */
13257 function CompositeFilter(properties) {
13258 this.filters = [];
13259 if (properties)
13260 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
13261 if (properties[keys[i]] != null)
13262 this[keys[i]] = properties[keys[i]];
13263 }
13264
13265 /**
13266 * CompositeFilter op.
13267 * @member {google.datastore.v1.CompositeFilter.Operator} op
13268 * @memberof google.datastore.v1.CompositeFilter
13269 * @instance
13270 */
13271 CompositeFilter.prototype.op = 0;
13272
13273 /**
13274 * CompositeFilter filters.
13275 * @member {Array.<google.datastore.v1.IFilter>} filters
13276 * @memberof google.datastore.v1.CompositeFilter
13277 * @instance
13278 */
13279 CompositeFilter.prototype.filters = $util.emptyArray;
13280
13281 /**
13282 * Creates a new CompositeFilter instance using the specified properties.
13283 * @function create
13284 * @memberof google.datastore.v1.CompositeFilter
13285 * @static
13286 * @param {google.datastore.v1.ICompositeFilter=} [properties] Properties to set
13287 * @returns {google.datastore.v1.CompositeFilter} CompositeFilter instance
13288 */
13289 CompositeFilter.create = function create(properties) {
13290 return new CompositeFilter(properties);
13291 };
13292
13293 /**
13294 * Encodes the specified CompositeFilter message. Does not implicitly {@link google.datastore.v1.CompositeFilter.verify|verify} messages.
13295 * @function encode
13296 * @memberof google.datastore.v1.CompositeFilter
13297 * @static
13298 * @param {google.datastore.v1.ICompositeFilter} message CompositeFilter message or plain object to encode
13299 * @param {$protobuf.Writer} [writer] Writer to encode to
13300 * @returns {$protobuf.Writer} Writer
13301 */
13302 CompositeFilter.encode = function encode(message, writer) {
13303 if (!writer)
13304 writer = $Writer.create();
13305 if (message.op != null && Object.hasOwnProperty.call(message, "op"))
13306 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.op);
13307 if (message.filters != null && message.filters.length)
13308 for (var i = 0; i < message.filters.length; ++i)
13309 $root.google.datastore.v1.Filter.encode(message.filters[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
13310 return writer;
13311 };
13312
13313 /**
13314 * Encodes the specified CompositeFilter message, length delimited. Does not implicitly {@link google.datastore.v1.CompositeFilter.verify|verify} messages.
13315 * @function encodeDelimited
13316 * @memberof google.datastore.v1.CompositeFilter
13317 * @static
13318 * @param {google.datastore.v1.ICompositeFilter} message CompositeFilter message or plain object to encode
13319 * @param {$protobuf.Writer} [writer] Writer to encode to
13320 * @returns {$protobuf.Writer} Writer
13321 */
13322 CompositeFilter.encodeDelimited = function encodeDelimited(message, writer) {
13323 return this.encode(message, writer).ldelim();
13324 };
13325
13326 /**
13327 * Decodes a CompositeFilter message from the specified reader or buffer.
13328 * @function decode
13329 * @memberof google.datastore.v1.CompositeFilter
13330 * @static
13331 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13332 * @param {number} [length] Message length if known beforehand
13333 * @returns {google.datastore.v1.CompositeFilter} CompositeFilter
13334 * @throws {Error} If the payload is not a reader or valid buffer
13335 * @throws {$protobuf.util.ProtocolError} If required fields are missing
13336 */
13337 CompositeFilter.decode = function decode(reader, length) {
13338 if (!(reader instanceof $Reader))
13339 reader = $Reader.create(reader);
13340 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.CompositeFilter();
13341 while (reader.pos < end) {
13342 var tag = reader.uint32();
13343 switch (tag >>> 3) {
13344 case 1:
13345 message.op = reader.int32();
13346 break;
13347 case 2:
13348 if (!(message.filters && message.filters.length))
13349 message.filters = [];
13350 message.filters.push($root.google.datastore.v1.Filter.decode(reader, reader.uint32()));
13351 break;
13352 default:
13353 reader.skipType(tag & 7);
13354 break;
13355 }
13356 }
13357 return message;
13358 };
13359
13360 /**
13361 * Decodes a CompositeFilter message from the specified reader or buffer, length delimited.
13362 * @function decodeDelimited
13363 * @memberof google.datastore.v1.CompositeFilter
13364 * @static
13365 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13366 * @returns {google.datastore.v1.CompositeFilter} CompositeFilter
13367 * @throws {Error} If the payload is not a reader or valid buffer
13368 * @throws {$protobuf.util.ProtocolError} If required fields are missing
13369 */
13370 CompositeFilter.decodeDelimited = function decodeDelimited(reader) {
13371 if (!(reader instanceof $Reader))
13372 reader = new $Reader(reader);
13373 return this.decode(reader, reader.uint32());
13374 };
13375
13376 /**
13377 * Verifies a CompositeFilter message.
13378 * @function verify
13379 * @memberof google.datastore.v1.CompositeFilter
13380 * @static
13381 * @param {Object.<string,*>} message Plain object to verify
13382 * @returns {string|null} `null` if valid, otherwise the reason why it is not
13383 */
13384 CompositeFilter.verify = function verify(message) {
13385 if (typeof message !== "object" || message === null)
13386 return "object expected";
13387 if (message.op != null && message.hasOwnProperty("op"))
13388 switch (message.op) {
13389 default:
13390 return "op: enum value expected";
13391 case 0:
13392 case 1:
13393 break;
13394 }
13395 if (message.filters != null && message.hasOwnProperty("filters")) {
13396 if (!Array.isArray(message.filters))
13397 return "filters: array expected";
13398 for (var i = 0; i < message.filters.length; ++i) {
13399 var error = $root.google.datastore.v1.Filter.verify(message.filters[i]);
13400 if (error)
13401 return "filters." + error;
13402 }
13403 }
13404 return null;
13405 };
13406
13407 /**
13408 * Creates a CompositeFilter message from a plain object. Also converts values to their respective internal types.
13409 * @function fromObject
13410 * @memberof google.datastore.v1.CompositeFilter
13411 * @static
13412 * @param {Object.<string,*>} object Plain object
13413 * @returns {google.datastore.v1.CompositeFilter} CompositeFilter
13414 */
13415 CompositeFilter.fromObject = function fromObject(object) {
13416 if (object instanceof $root.google.datastore.v1.CompositeFilter)
13417 return object;
13418 var message = new $root.google.datastore.v1.CompositeFilter();
13419 switch (object.op) {
13420 case "OPERATOR_UNSPECIFIED":
13421 case 0:
13422 message.op = 0;
13423 break;
13424 case "AND":
13425 case 1:
13426 message.op = 1;
13427 break;
13428 }
13429 if (object.filters) {
13430 if (!Array.isArray(object.filters))
13431 throw TypeError(".google.datastore.v1.CompositeFilter.filters: array expected");
13432 message.filters = [];
13433 for (var i = 0; i < object.filters.length; ++i) {
13434 if (typeof object.filters[i] !== "object")
13435 throw TypeError(".google.datastore.v1.CompositeFilter.filters: object expected");
13436 message.filters[i] = $root.google.datastore.v1.Filter.fromObject(object.filters[i]);
13437 }
13438 }
13439 return message;
13440 };
13441
13442 /**
13443 * Creates a plain object from a CompositeFilter message. Also converts values to other types if specified.
13444 * @function toObject
13445 * @memberof google.datastore.v1.CompositeFilter
13446 * @static
13447 * @param {google.datastore.v1.CompositeFilter} message CompositeFilter
13448 * @param {$protobuf.IConversionOptions} [options] Conversion options
13449 * @returns {Object.<string,*>} Plain object
13450 */
13451 CompositeFilter.toObject = function toObject(message, options) {
13452 if (!options)
13453 options = {};
13454 var object = {};
13455 if (options.arrays || options.defaults)
13456 object.filters = [];
13457 if (options.defaults)
13458 object.op = options.enums === String ? "OPERATOR_UNSPECIFIED" : 0;
13459 if (message.op != null && message.hasOwnProperty("op"))
13460 object.op = options.enums === String ? $root.google.datastore.v1.CompositeFilter.Operator[message.op] : message.op;
13461 if (message.filters && message.filters.length) {
13462 object.filters = [];
13463 for (var j = 0; j < message.filters.length; ++j)
13464 object.filters[j] = $root.google.datastore.v1.Filter.toObject(message.filters[j], options);
13465 }
13466 return object;
13467 };
13468
13469 /**
13470 * Converts this CompositeFilter to JSON.
13471 * @function toJSON
13472 * @memberof google.datastore.v1.CompositeFilter
13473 * @instance
13474 * @returns {Object.<string,*>} JSON object
13475 */
13476 CompositeFilter.prototype.toJSON = function toJSON() {
13477 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
13478 };
13479
13480 /**
13481 * Operator enum.
13482 * @name google.datastore.v1.CompositeFilter.Operator
13483 * @enum {number}
13484 * @property {number} OPERATOR_UNSPECIFIED=0 OPERATOR_UNSPECIFIED value
13485 * @property {number} AND=1 AND value
13486 */
13487 CompositeFilter.Operator = (function() {
13488 var valuesById = {}, values = Object.create(valuesById);
13489 values[valuesById[0] = "OPERATOR_UNSPECIFIED"] = 0;
13490 values[valuesById[1] = "AND"] = 1;
13491 return values;
13492 })();
13493
13494 return CompositeFilter;
13495 })();
13496
13497 v1.PropertyFilter = (function() {
13498
13499 /**
13500 * Properties of a PropertyFilter.
13501 * @memberof google.datastore.v1
13502 * @interface IPropertyFilter
13503 * @property {google.datastore.v1.IPropertyReference|null} [property] PropertyFilter property
13504 * @property {google.datastore.v1.PropertyFilter.Operator|null} [op] PropertyFilter op
13505 * @property {google.datastore.v1.IValue|null} [value] PropertyFilter value
13506 */
13507
13508 /**
13509 * Constructs a new PropertyFilter.
13510 * @memberof google.datastore.v1
13511 * @classdesc Represents a PropertyFilter.
13512 * @implements IPropertyFilter
13513 * @constructor
13514 * @param {google.datastore.v1.IPropertyFilter=} [properties] Properties to set
13515 */
13516 function PropertyFilter(properties) {
13517 if (properties)
13518 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
13519 if (properties[keys[i]] != null)
13520 this[keys[i]] = properties[keys[i]];
13521 }
13522
13523 /**
13524 * PropertyFilter property.
13525 * @member {google.datastore.v1.IPropertyReference|null|undefined} property
13526 * @memberof google.datastore.v1.PropertyFilter
13527 * @instance
13528 */
13529 PropertyFilter.prototype.property = null;
13530
13531 /**
13532 * PropertyFilter op.
13533 * @member {google.datastore.v1.PropertyFilter.Operator} op
13534 * @memberof google.datastore.v1.PropertyFilter
13535 * @instance
13536 */
13537 PropertyFilter.prototype.op = 0;
13538
13539 /**
13540 * PropertyFilter value.
13541 * @member {google.datastore.v1.IValue|null|undefined} value
13542 * @memberof google.datastore.v1.PropertyFilter
13543 * @instance
13544 */
13545 PropertyFilter.prototype.value = null;
13546
13547 /**
13548 * Creates a new PropertyFilter instance using the specified properties.
13549 * @function create
13550 * @memberof google.datastore.v1.PropertyFilter
13551 * @static
13552 * @param {google.datastore.v1.IPropertyFilter=} [properties] Properties to set
13553 * @returns {google.datastore.v1.PropertyFilter} PropertyFilter instance
13554 */
13555 PropertyFilter.create = function create(properties) {
13556 return new PropertyFilter(properties);
13557 };
13558
13559 /**
13560 * Encodes the specified PropertyFilter message. Does not implicitly {@link google.datastore.v1.PropertyFilter.verify|verify} messages.
13561 * @function encode
13562 * @memberof google.datastore.v1.PropertyFilter
13563 * @static
13564 * @param {google.datastore.v1.IPropertyFilter} message PropertyFilter message or plain object to encode
13565 * @param {$protobuf.Writer} [writer] Writer to encode to
13566 * @returns {$protobuf.Writer} Writer
13567 */
13568 PropertyFilter.encode = function encode(message, writer) {
13569 if (!writer)
13570 writer = $Writer.create();
13571 if (message.property != null && Object.hasOwnProperty.call(message, "property"))
13572 $root.google.datastore.v1.PropertyReference.encode(message.property, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
13573 if (message.op != null && Object.hasOwnProperty.call(message, "op"))
13574 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.op);
13575 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
13576 $root.google.datastore.v1.Value.encode(message.value, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
13577 return writer;
13578 };
13579
13580 /**
13581 * Encodes the specified PropertyFilter message, length delimited. Does not implicitly {@link google.datastore.v1.PropertyFilter.verify|verify} messages.
13582 * @function encodeDelimited
13583 * @memberof google.datastore.v1.PropertyFilter
13584 * @static
13585 * @param {google.datastore.v1.IPropertyFilter} message PropertyFilter message or plain object to encode
13586 * @param {$protobuf.Writer} [writer] Writer to encode to
13587 * @returns {$protobuf.Writer} Writer
13588 */
13589 PropertyFilter.encodeDelimited = function encodeDelimited(message, writer) {
13590 return this.encode(message, writer).ldelim();
13591 };
13592
13593 /**
13594 * Decodes a PropertyFilter message from the specified reader or buffer.
13595 * @function decode
13596 * @memberof google.datastore.v1.PropertyFilter
13597 * @static
13598 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13599 * @param {number} [length] Message length if known beforehand
13600 * @returns {google.datastore.v1.PropertyFilter} PropertyFilter
13601 * @throws {Error} If the payload is not a reader or valid buffer
13602 * @throws {$protobuf.util.ProtocolError} If required fields are missing
13603 */
13604 PropertyFilter.decode = function decode(reader, length) {
13605 if (!(reader instanceof $Reader))
13606 reader = $Reader.create(reader);
13607 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.PropertyFilter();
13608 while (reader.pos < end) {
13609 var tag = reader.uint32();
13610 switch (tag >>> 3) {
13611 case 1:
13612 message.property = $root.google.datastore.v1.PropertyReference.decode(reader, reader.uint32());
13613 break;
13614 case 2:
13615 message.op = reader.int32();
13616 break;
13617 case 3:
13618 message.value = $root.google.datastore.v1.Value.decode(reader, reader.uint32());
13619 break;
13620 default:
13621 reader.skipType(tag & 7);
13622 break;
13623 }
13624 }
13625 return message;
13626 };
13627
13628 /**
13629 * Decodes a PropertyFilter message from the specified reader or buffer, length delimited.
13630 * @function decodeDelimited
13631 * @memberof google.datastore.v1.PropertyFilter
13632 * @static
13633 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13634 * @returns {google.datastore.v1.PropertyFilter} PropertyFilter
13635 * @throws {Error} If the payload is not a reader or valid buffer
13636 * @throws {$protobuf.util.ProtocolError} If required fields are missing
13637 */
13638 PropertyFilter.decodeDelimited = function decodeDelimited(reader) {
13639 if (!(reader instanceof $Reader))
13640 reader = new $Reader(reader);
13641 return this.decode(reader, reader.uint32());
13642 };
13643
13644 /**
13645 * Verifies a PropertyFilter message.
13646 * @function verify
13647 * @memberof google.datastore.v1.PropertyFilter
13648 * @static
13649 * @param {Object.<string,*>} message Plain object to verify
13650 * @returns {string|null} `null` if valid, otherwise the reason why it is not
13651 */
13652 PropertyFilter.verify = function verify(message) {
13653 if (typeof message !== "object" || message === null)
13654 return "object expected";
13655 if (message.property != null && message.hasOwnProperty("property")) {
13656 var error = $root.google.datastore.v1.PropertyReference.verify(message.property);
13657 if (error)
13658 return "property." + error;
13659 }
13660 if (message.op != null && message.hasOwnProperty("op"))
13661 switch (message.op) {
13662 default:
13663 return "op: enum value expected";
13664 case 0:
13665 case 1:
13666 case 2:
13667 case 3:
13668 case 4:
13669 case 5:
13670 case 11:
13671 break;
13672 }
13673 if (message.value != null && message.hasOwnProperty("value")) {
13674 var error = $root.google.datastore.v1.Value.verify(message.value);
13675 if (error)
13676 return "value." + error;
13677 }
13678 return null;
13679 };
13680
13681 /**
13682 * Creates a PropertyFilter message from a plain object. Also converts values to their respective internal types.
13683 * @function fromObject
13684 * @memberof google.datastore.v1.PropertyFilter
13685 * @static
13686 * @param {Object.<string,*>} object Plain object
13687 * @returns {google.datastore.v1.PropertyFilter} PropertyFilter
13688 */
13689 PropertyFilter.fromObject = function fromObject(object) {
13690 if (object instanceof $root.google.datastore.v1.PropertyFilter)
13691 return object;
13692 var message = new $root.google.datastore.v1.PropertyFilter();
13693 if (object.property != null) {
13694 if (typeof object.property !== "object")
13695 throw TypeError(".google.datastore.v1.PropertyFilter.property: object expected");
13696 message.property = $root.google.datastore.v1.PropertyReference.fromObject(object.property);
13697 }
13698 switch (object.op) {
13699 case "OPERATOR_UNSPECIFIED":
13700 case 0:
13701 message.op = 0;
13702 break;
13703 case "LESS_THAN":
13704 case 1:
13705 message.op = 1;
13706 break;
13707 case "LESS_THAN_OR_EQUAL":
13708 case 2:
13709 message.op = 2;
13710 break;
13711 case "GREATER_THAN":
13712 case 3:
13713 message.op = 3;
13714 break;
13715 case "GREATER_THAN_OR_EQUAL":
13716 case 4:
13717 message.op = 4;
13718 break;
13719 case "EQUAL":
13720 case 5:
13721 message.op = 5;
13722 break;
13723 case "HAS_ANCESTOR":
13724 case 11:
13725 message.op = 11;
13726 break;
13727 }
13728 if (object.value != null) {
13729 if (typeof object.value !== "object")
13730 throw TypeError(".google.datastore.v1.PropertyFilter.value: object expected");
13731 message.value = $root.google.datastore.v1.Value.fromObject(object.value);
13732 }
13733 return message;
13734 };
13735
13736 /**
13737 * Creates a plain object from a PropertyFilter message. Also converts values to other types if specified.
13738 * @function toObject
13739 * @memberof google.datastore.v1.PropertyFilter
13740 * @static
13741 * @param {google.datastore.v1.PropertyFilter} message PropertyFilter
13742 * @param {$protobuf.IConversionOptions} [options] Conversion options
13743 * @returns {Object.<string,*>} Plain object
13744 */
13745 PropertyFilter.toObject = function toObject(message, options) {
13746 if (!options)
13747 options = {};
13748 var object = {};
13749 if (options.defaults) {
13750 object.property = null;
13751 object.op = options.enums === String ? "OPERATOR_UNSPECIFIED" : 0;
13752 object.value = null;
13753 }
13754 if (message.property != null && message.hasOwnProperty("property"))
13755 object.property = $root.google.datastore.v1.PropertyReference.toObject(message.property, options);
13756 if (message.op != null && message.hasOwnProperty("op"))
13757 object.op = options.enums === String ? $root.google.datastore.v1.PropertyFilter.Operator[message.op] : message.op;
13758 if (message.value != null && message.hasOwnProperty("value"))
13759 object.value = $root.google.datastore.v1.Value.toObject(message.value, options);
13760 return object;
13761 };
13762
13763 /**
13764 * Converts this PropertyFilter to JSON.
13765 * @function toJSON
13766 * @memberof google.datastore.v1.PropertyFilter
13767 * @instance
13768 * @returns {Object.<string,*>} JSON object
13769 */
13770 PropertyFilter.prototype.toJSON = function toJSON() {
13771 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
13772 };
13773
13774 /**
13775 * Operator enum.
13776 * @name google.datastore.v1.PropertyFilter.Operator
13777 * @enum {number}
13778 * @property {number} OPERATOR_UNSPECIFIED=0 OPERATOR_UNSPECIFIED value
13779 * @property {number} LESS_THAN=1 LESS_THAN value
13780 * @property {number} LESS_THAN_OR_EQUAL=2 LESS_THAN_OR_EQUAL value
13781 * @property {number} GREATER_THAN=3 GREATER_THAN value
13782 * @property {number} GREATER_THAN_OR_EQUAL=4 GREATER_THAN_OR_EQUAL value
13783 * @property {number} EQUAL=5 EQUAL value
13784 * @property {number} HAS_ANCESTOR=11 HAS_ANCESTOR value
13785 */
13786 PropertyFilter.Operator = (function() {
13787 var valuesById = {}, values = Object.create(valuesById);
13788 values[valuesById[0] = "OPERATOR_UNSPECIFIED"] = 0;
13789 values[valuesById[1] = "LESS_THAN"] = 1;
13790 values[valuesById[2] = "LESS_THAN_OR_EQUAL"] = 2;
13791 values[valuesById[3] = "GREATER_THAN"] = 3;
13792 values[valuesById[4] = "GREATER_THAN_OR_EQUAL"] = 4;
13793 values[valuesById[5] = "EQUAL"] = 5;
13794 values[valuesById[11] = "HAS_ANCESTOR"] = 11;
13795 return values;
13796 })();
13797
13798 return PropertyFilter;
13799 })();
13800
13801 v1.GqlQuery = (function() {
13802
13803 /**
13804 * Properties of a GqlQuery.
13805 * @memberof google.datastore.v1
13806 * @interface IGqlQuery
13807 * @property {string|null} [queryString] GqlQuery queryString
13808 * @property {boolean|null} [allowLiterals] GqlQuery allowLiterals
13809 * @property {Object.<string,google.datastore.v1.IGqlQueryParameter>|null} [namedBindings] GqlQuery namedBindings
13810 * @property {Array.<google.datastore.v1.IGqlQueryParameter>|null} [positionalBindings] GqlQuery positionalBindings
13811 */
13812
13813 /**
13814 * Constructs a new GqlQuery.
13815 * @memberof google.datastore.v1
13816 * @classdesc Represents a GqlQuery.
13817 * @implements IGqlQuery
13818 * @constructor
13819 * @param {google.datastore.v1.IGqlQuery=} [properties] Properties to set
13820 */
13821 function GqlQuery(properties) {
13822 this.namedBindings = {};
13823 this.positionalBindings = [];
13824 if (properties)
13825 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
13826 if (properties[keys[i]] != null)
13827 this[keys[i]] = properties[keys[i]];
13828 }
13829
13830 /**
13831 * GqlQuery queryString.
13832 * @member {string} queryString
13833 * @memberof google.datastore.v1.GqlQuery
13834 * @instance
13835 */
13836 GqlQuery.prototype.queryString = "";
13837
13838 /**
13839 * GqlQuery allowLiterals.
13840 * @member {boolean} allowLiterals
13841 * @memberof google.datastore.v1.GqlQuery
13842 * @instance
13843 */
13844 GqlQuery.prototype.allowLiterals = false;
13845
13846 /**
13847 * GqlQuery namedBindings.
13848 * @member {Object.<string,google.datastore.v1.IGqlQueryParameter>} namedBindings
13849 * @memberof google.datastore.v1.GqlQuery
13850 * @instance
13851 */
13852 GqlQuery.prototype.namedBindings = $util.emptyObject;
13853
13854 /**
13855 * GqlQuery positionalBindings.
13856 * @member {Array.<google.datastore.v1.IGqlQueryParameter>} positionalBindings
13857 * @memberof google.datastore.v1.GqlQuery
13858 * @instance
13859 */
13860 GqlQuery.prototype.positionalBindings = $util.emptyArray;
13861
13862 /**
13863 * Creates a new GqlQuery instance using the specified properties.
13864 * @function create
13865 * @memberof google.datastore.v1.GqlQuery
13866 * @static
13867 * @param {google.datastore.v1.IGqlQuery=} [properties] Properties to set
13868 * @returns {google.datastore.v1.GqlQuery} GqlQuery instance
13869 */
13870 GqlQuery.create = function create(properties) {
13871 return new GqlQuery(properties);
13872 };
13873
13874 /**
13875 * Encodes the specified GqlQuery message. Does not implicitly {@link google.datastore.v1.GqlQuery.verify|verify} messages.
13876 * @function encode
13877 * @memberof google.datastore.v1.GqlQuery
13878 * @static
13879 * @param {google.datastore.v1.IGqlQuery} message GqlQuery message or plain object to encode
13880 * @param {$protobuf.Writer} [writer] Writer to encode to
13881 * @returns {$protobuf.Writer} Writer
13882 */
13883 GqlQuery.encode = function encode(message, writer) {
13884 if (!writer)
13885 writer = $Writer.create();
13886 if (message.queryString != null && Object.hasOwnProperty.call(message, "queryString"))
13887 writer.uint32(/* id 1, wireType 2 =*/10).string(message.queryString);
13888 if (message.allowLiterals != null && Object.hasOwnProperty.call(message, "allowLiterals"))
13889 writer.uint32(/* id 2, wireType 0 =*/16).bool(message.allowLiterals);
13890 if (message.positionalBindings != null && message.positionalBindings.length)
13891 for (var i = 0; i < message.positionalBindings.length; ++i)
13892 $root.google.datastore.v1.GqlQueryParameter.encode(message.positionalBindings[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
13893 if (message.namedBindings != null && Object.hasOwnProperty.call(message, "namedBindings"))
13894 for (var keys = Object.keys(message.namedBindings), i = 0; i < keys.length; ++i) {
13895 writer.uint32(/* id 5, wireType 2 =*/42).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]);
13896 $root.google.datastore.v1.GqlQueryParameter.encode(message.namedBindings[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim();
13897 }
13898 return writer;
13899 };
13900
13901 /**
13902 * Encodes the specified GqlQuery message, length delimited. Does not implicitly {@link google.datastore.v1.GqlQuery.verify|verify} messages.
13903 * @function encodeDelimited
13904 * @memberof google.datastore.v1.GqlQuery
13905 * @static
13906 * @param {google.datastore.v1.IGqlQuery} message GqlQuery message or plain object to encode
13907 * @param {$protobuf.Writer} [writer] Writer to encode to
13908 * @returns {$protobuf.Writer} Writer
13909 */
13910 GqlQuery.encodeDelimited = function encodeDelimited(message, writer) {
13911 return this.encode(message, writer).ldelim();
13912 };
13913
13914 /**
13915 * Decodes a GqlQuery message from the specified reader or buffer.
13916 * @function decode
13917 * @memberof google.datastore.v1.GqlQuery
13918 * @static
13919 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13920 * @param {number} [length] Message length if known beforehand
13921 * @returns {google.datastore.v1.GqlQuery} GqlQuery
13922 * @throws {Error} If the payload is not a reader or valid buffer
13923 * @throws {$protobuf.util.ProtocolError} If required fields are missing
13924 */
13925 GqlQuery.decode = function decode(reader, length) {
13926 if (!(reader instanceof $Reader))
13927 reader = $Reader.create(reader);
13928 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.GqlQuery(), key, value;
13929 while (reader.pos < end) {
13930 var tag = reader.uint32();
13931 switch (tag >>> 3) {
13932 case 1:
13933 message.queryString = reader.string();
13934 break;
13935 case 2:
13936 message.allowLiterals = reader.bool();
13937 break;
13938 case 5:
13939 if (message.namedBindings === $util.emptyObject)
13940 message.namedBindings = {};
13941 var end2 = reader.uint32() + reader.pos;
13942 key = "";
13943 value = null;
13944 while (reader.pos < end2) {
13945 var tag2 = reader.uint32();
13946 switch (tag2 >>> 3) {
13947 case 1:
13948 key = reader.string();
13949 break;
13950 case 2:
13951 value = $root.google.datastore.v1.GqlQueryParameter.decode(reader, reader.uint32());
13952 break;
13953 default:
13954 reader.skipType(tag2 & 7);
13955 break;
13956 }
13957 }
13958 message.namedBindings[key] = value;
13959 break;
13960 case 4:
13961 if (!(message.positionalBindings && message.positionalBindings.length))
13962 message.positionalBindings = [];
13963 message.positionalBindings.push($root.google.datastore.v1.GqlQueryParameter.decode(reader, reader.uint32()));
13964 break;
13965 default:
13966 reader.skipType(tag & 7);
13967 break;
13968 }
13969 }
13970 return message;
13971 };
13972
13973 /**
13974 * Decodes a GqlQuery message from the specified reader or buffer, length delimited.
13975 * @function decodeDelimited
13976 * @memberof google.datastore.v1.GqlQuery
13977 * @static
13978 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
13979 * @returns {google.datastore.v1.GqlQuery} GqlQuery
13980 * @throws {Error} If the payload is not a reader or valid buffer
13981 * @throws {$protobuf.util.ProtocolError} If required fields are missing
13982 */
13983 GqlQuery.decodeDelimited = function decodeDelimited(reader) {
13984 if (!(reader instanceof $Reader))
13985 reader = new $Reader(reader);
13986 return this.decode(reader, reader.uint32());
13987 };
13988
13989 /**
13990 * Verifies a GqlQuery message.
13991 * @function verify
13992 * @memberof google.datastore.v1.GqlQuery
13993 * @static
13994 * @param {Object.<string,*>} message Plain object to verify
13995 * @returns {string|null} `null` if valid, otherwise the reason why it is not
13996 */
13997 GqlQuery.verify = function verify(message) {
13998 if (typeof message !== "object" || message === null)
13999 return "object expected";
14000 if (message.queryString != null && message.hasOwnProperty("queryString"))
14001 if (!$util.isString(message.queryString))
14002 return "queryString: string expected";
14003 if (message.allowLiterals != null && message.hasOwnProperty("allowLiterals"))
14004 if (typeof message.allowLiterals !== "boolean")
14005 return "allowLiterals: boolean expected";
14006 if (message.namedBindings != null && message.hasOwnProperty("namedBindings")) {
14007 if (!$util.isObject(message.namedBindings))
14008 return "namedBindings: object expected";
14009 var key = Object.keys(message.namedBindings);
14010 for (var i = 0; i < key.length; ++i) {
14011 var error = $root.google.datastore.v1.GqlQueryParameter.verify(message.namedBindings[key[i]]);
14012 if (error)
14013 return "namedBindings." + error;
14014 }
14015 }
14016 if (message.positionalBindings != null && message.hasOwnProperty("positionalBindings")) {
14017 if (!Array.isArray(message.positionalBindings))
14018 return "positionalBindings: array expected";
14019 for (var i = 0; i < message.positionalBindings.length; ++i) {
14020 var error = $root.google.datastore.v1.GqlQueryParameter.verify(message.positionalBindings[i]);
14021 if (error)
14022 return "positionalBindings." + error;
14023 }
14024 }
14025 return null;
14026 };
14027
14028 /**
14029 * Creates a GqlQuery message from a plain object. Also converts values to their respective internal types.
14030 * @function fromObject
14031 * @memberof google.datastore.v1.GqlQuery
14032 * @static
14033 * @param {Object.<string,*>} object Plain object
14034 * @returns {google.datastore.v1.GqlQuery} GqlQuery
14035 */
14036 GqlQuery.fromObject = function fromObject(object) {
14037 if (object instanceof $root.google.datastore.v1.GqlQuery)
14038 return object;
14039 var message = new $root.google.datastore.v1.GqlQuery();
14040 if (object.queryString != null)
14041 message.queryString = String(object.queryString);
14042 if (object.allowLiterals != null)
14043 message.allowLiterals = Boolean(object.allowLiterals);
14044 if (object.namedBindings) {
14045 if (typeof object.namedBindings !== "object")
14046 throw TypeError(".google.datastore.v1.GqlQuery.namedBindings: object expected");
14047 message.namedBindings = {};
14048 for (var keys = Object.keys(object.namedBindings), i = 0; i < keys.length; ++i) {
14049 if (typeof object.namedBindings[keys[i]] !== "object")
14050 throw TypeError(".google.datastore.v1.GqlQuery.namedBindings: object expected");
14051 message.namedBindings[keys[i]] = $root.google.datastore.v1.GqlQueryParameter.fromObject(object.namedBindings[keys[i]]);
14052 }
14053 }
14054 if (object.positionalBindings) {
14055 if (!Array.isArray(object.positionalBindings))
14056 throw TypeError(".google.datastore.v1.GqlQuery.positionalBindings: array expected");
14057 message.positionalBindings = [];
14058 for (var i = 0; i < object.positionalBindings.length; ++i) {
14059 if (typeof object.positionalBindings[i] !== "object")
14060 throw TypeError(".google.datastore.v1.GqlQuery.positionalBindings: object expected");
14061 message.positionalBindings[i] = $root.google.datastore.v1.GqlQueryParameter.fromObject(object.positionalBindings[i]);
14062 }
14063 }
14064 return message;
14065 };
14066
14067 /**
14068 * Creates a plain object from a GqlQuery message. Also converts values to other types if specified.
14069 * @function toObject
14070 * @memberof google.datastore.v1.GqlQuery
14071 * @static
14072 * @param {google.datastore.v1.GqlQuery} message GqlQuery
14073 * @param {$protobuf.IConversionOptions} [options] Conversion options
14074 * @returns {Object.<string,*>} Plain object
14075 */
14076 GqlQuery.toObject = function toObject(message, options) {
14077 if (!options)
14078 options = {};
14079 var object = {};
14080 if (options.arrays || options.defaults)
14081 object.positionalBindings = [];
14082 if (options.objects || options.defaults)
14083 object.namedBindings = {};
14084 if (options.defaults) {
14085 object.queryString = "";
14086 object.allowLiterals = false;
14087 }
14088 if (message.queryString != null && message.hasOwnProperty("queryString"))
14089 object.queryString = message.queryString;
14090 if (message.allowLiterals != null && message.hasOwnProperty("allowLiterals"))
14091 object.allowLiterals = message.allowLiterals;
14092 if (message.positionalBindings && message.positionalBindings.length) {
14093 object.positionalBindings = [];
14094 for (var j = 0; j < message.positionalBindings.length; ++j)
14095 object.positionalBindings[j] = $root.google.datastore.v1.GqlQueryParameter.toObject(message.positionalBindings[j], options);
14096 }
14097 var keys2;
14098 if (message.namedBindings && (keys2 = Object.keys(message.namedBindings)).length) {
14099 object.namedBindings = {};
14100 for (var j = 0; j < keys2.length; ++j)
14101 object.namedBindings[keys2[j]] = $root.google.datastore.v1.GqlQueryParameter.toObject(message.namedBindings[keys2[j]], options);
14102 }
14103 return object;
14104 };
14105
14106 /**
14107 * Converts this GqlQuery to JSON.
14108 * @function toJSON
14109 * @memberof google.datastore.v1.GqlQuery
14110 * @instance
14111 * @returns {Object.<string,*>} JSON object
14112 */
14113 GqlQuery.prototype.toJSON = function toJSON() {
14114 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
14115 };
14116
14117 return GqlQuery;
14118 })();
14119
14120 v1.GqlQueryParameter = (function() {
14121
14122 /**
14123 * Properties of a GqlQueryParameter.
14124 * @memberof google.datastore.v1
14125 * @interface IGqlQueryParameter
14126 * @property {google.datastore.v1.IValue|null} [value] GqlQueryParameter value
14127 * @property {Uint8Array|null} [cursor] GqlQueryParameter cursor
14128 */
14129
14130 /**
14131 * Constructs a new GqlQueryParameter.
14132 * @memberof google.datastore.v1
14133 * @classdesc Represents a GqlQueryParameter.
14134 * @implements IGqlQueryParameter
14135 * @constructor
14136 * @param {google.datastore.v1.IGqlQueryParameter=} [properties] Properties to set
14137 */
14138 function GqlQueryParameter(properties) {
14139 if (properties)
14140 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
14141 if (properties[keys[i]] != null)
14142 this[keys[i]] = properties[keys[i]];
14143 }
14144
14145 /**
14146 * GqlQueryParameter value.
14147 * @member {google.datastore.v1.IValue|null|undefined} value
14148 * @memberof google.datastore.v1.GqlQueryParameter
14149 * @instance
14150 */
14151 GqlQueryParameter.prototype.value = null;
14152
14153 /**
14154 * GqlQueryParameter cursor.
14155 * @member {Uint8Array} cursor
14156 * @memberof google.datastore.v1.GqlQueryParameter
14157 * @instance
14158 */
14159 GqlQueryParameter.prototype.cursor = $util.newBuffer([]);
14160
14161 // OneOf field names bound to virtual getters and setters
14162 var $oneOfFields;
14163
14164 /**
14165 * GqlQueryParameter parameterType.
14166 * @member {"value"|"cursor"|undefined} parameterType
14167 * @memberof google.datastore.v1.GqlQueryParameter
14168 * @instance
14169 */
14170 Object.defineProperty(GqlQueryParameter.prototype, "parameterType", {
14171 get: $util.oneOfGetter($oneOfFields = ["value", "cursor"]),
14172 set: $util.oneOfSetter($oneOfFields)
14173 });
14174
14175 /**
14176 * Creates a new GqlQueryParameter instance using the specified properties.
14177 * @function create
14178 * @memberof google.datastore.v1.GqlQueryParameter
14179 * @static
14180 * @param {google.datastore.v1.IGqlQueryParameter=} [properties] Properties to set
14181 * @returns {google.datastore.v1.GqlQueryParameter} GqlQueryParameter instance
14182 */
14183 GqlQueryParameter.create = function create(properties) {
14184 return new GqlQueryParameter(properties);
14185 };
14186
14187 /**
14188 * Encodes the specified GqlQueryParameter message. Does not implicitly {@link google.datastore.v1.GqlQueryParameter.verify|verify} messages.
14189 * @function encode
14190 * @memberof google.datastore.v1.GqlQueryParameter
14191 * @static
14192 * @param {google.datastore.v1.IGqlQueryParameter} message GqlQueryParameter message or plain object to encode
14193 * @param {$protobuf.Writer} [writer] Writer to encode to
14194 * @returns {$protobuf.Writer} Writer
14195 */
14196 GqlQueryParameter.encode = function encode(message, writer) {
14197 if (!writer)
14198 writer = $Writer.create();
14199 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
14200 $root.google.datastore.v1.Value.encode(message.value, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
14201 if (message.cursor != null && Object.hasOwnProperty.call(message, "cursor"))
14202 writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.cursor);
14203 return writer;
14204 };
14205
14206 /**
14207 * Encodes the specified GqlQueryParameter message, length delimited. Does not implicitly {@link google.datastore.v1.GqlQueryParameter.verify|verify} messages.
14208 * @function encodeDelimited
14209 * @memberof google.datastore.v1.GqlQueryParameter
14210 * @static
14211 * @param {google.datastore.v1.IGqlQueryParameter} message GqlQueryParameter message or plain object to encode
14212 * @param {$protobuf.Writer} [writer] Writer to encode to
14213 * @returns {$protobuf.Writer} Writer
14214 */
14215 GqlQueryParameter.encodeDelimited = function encodeDelimited(message, writer) {
14216 return this.encode(message, writer).ldelim();
14217 };
14218
14219 /**
14220 * Decodes a GqlQueryParameter message from the specified reader or buffer.
14221 * @function decode
14222 * @memberof google.datastore.v1.GqlQueryParameter
14223 * @static
14224 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
14225 * @param {number} [length] Message length if known beforehand
14226 * @returns {google.datastore.v1.GqlQueryParameter} GqlQueryParameter
14227 * @throws {Error} If the payload is not a reader or valid buffer
14228 * @throws {$protobuf.util.ProtocolError} If required fields are missing
14229 */
14230 GqlQueryParameter.decode = function decode(reader, length) {
14231 if (!(reader instanceof $Reader))
14232 reader = $Reader.create(reader);
14233 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.GqlQueryParameter();
14234 while (reader.pos < end) {
14235 var tag = reader.uint32();
14236 switch (tag >>> 3) {
14237 case 2:
14238 message.value = $root.google.datastore.v1.Value.decode(reader, reader.uint32());
14239 break;
14240 case 3:
14241 message.cursor = reader.bytes();
14242 break;
14243 default:
14244 reader.skipType(tag & 7);
14245 break;
14246 }
14247 }
14248 return message;
14249 };
14250
14251 /**
14252 * Decodes a GqlQueryParameter message from the specified reader or buffer, length delimited.
14253 * @function decodeDelimited
14254 * @memberof google.datastore.v1.GqlQueryParameter
14255 * @static
14256 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
14257 * @returns {google.datastore.v1.GqlQueryParameter} GqlQueryParameter
14258 * @throws {Error} If the payload is not a reader or valid buffer
14259 * @throws {$protobuf.util.ProtocolError} If required fields are missing
14260 */
14261 GqlQueryParameter.decodeDelimited = function decodeDelimited(reader) {
14262 if (!(reader instanceof $Reader))
14263 reader = new $Reader(reader);
14264 return this.decode(reader, reader.uint32());
14265 };
14266
14267 /**
14268 * Verifies a GqlQueryParameter message.
14269 * @function verify
14270 * @memberof google.datastore.v1.GqlQueryParameter
14271 * @static
14272 * @param {Object.<string,*>} message Plain object to verify
14273 * @returns {string|null} `null` if valid, otherwise the reason why it is not
14274 */
14275 GqlQueryParameter.verify = function verify(message) {
14276 if (typeof message !== "object" || message === null)
14277 return "object expected";
14278 var properties = {};
14279 if (message.value != null && message.hasOwnProperty("value")) {
14280 properties.parameterType = 1;
14281 {
14282 var error = $root.google.datastore.v1.Value.verify(message.value);
14283 if (error)
14284 return "value." + error;
14285 }
14286 }
14287 if (message.cursor != null && message.hasOwnProperty("cursor")) {
14288 if (properties.parameterType === 1)
14289 return "parameterType: multiple values";
14290 properties.parameterType = 1;
14291 if (!(message.cursor && typeof message.cursor.length === "number" || $util.isString(message.cursor)))
14292 return "cursor: buffer expected";
14293 }
14294 return null;
14295 };
14296
14297 /**
14298 * Creates a GqlQueryParameter message from a plain object. Also converts values to their respective internal types.
14299 * @function fromObject
14300 * @memberof google.datastore.v1.GqlQueryParameter
14301 * @static
14302 * @param {Object.<string,*>} object Plain object
14303 * @returns {google.datastore.v1.GqlQueryParameter} GqlQueryParameter
14304 */
14305 GqlQueryParameter.fromObject = function fromObject(object) {
14306 if (object instanceof $root.google.datastore.v1.GqlQueryParameter)
14307 return object;
14308 var message = new $root.google.datastore.v1.GqlQueryParameter();
14309 if (object.value != null) {
14310 if (typeof object.value !== "object")
14311 throw TypeError(".google.datastore.v1.GqlQueryParameter.value: object expected");
14312 message.value = $root.google.datastore.v1.Value.fromObject(object.value);
14313 }
14314 if (object.cursor != null)
14315 if (typeof object.cursor === "string")
14316 $util.base64.decode(object.cursor, message.cursor = $util.newBuffer($util.base64.length(object.cursor)), 0);
14317 else if (object.cursor.length)
14318 message.cursor = object.cursor;
14319 return message;
14320 };
14321
14322 /**
14323 * Creates a plain object from a GqlQueryParameter message. Also converts values to other types if specified.
14324 * @function toObject
14325 * @memberof google.datastore.v1.GqlQueryParameter
14326 * @static
14327 * @param {google.datastore.v1.GqlQueryParameter} message GqlQueryParameter
14328 * @param {$protobuf.IConversionOptions} [options] Conversion options
14329 * @returns {Object.<string,*>} Plain object
14330 */
14331 GqlQueryParameter.toObject = function toObject(message, options) {
14332 if (!options)
14333 options = {};
14334 var object = {};
14335 if (message.value != null && message.hasOwnProperty("value")) {
14336 object.value = $root.google.datastore.v1.Value.toObject(message.value, options);
14337 if (options.oneofs)
14338 object.parameterType = "value";
14339 }
14340 if (message.cursor != null && message.hasOwnProperty("cursor")) {
14341 object.cursor = options.bytes === String ? $util.base64.encode(message.cursor, 0, message.cursor.length) : options.bytes === Array ? Array.prototype.slice.call(message.cursor) : message.cursor;
14342 if (options.oneofs)
14343 object.parameterType = "cursor";
14344 }
14345 return object;
14346 };
14347
14348 /**
14349 * Converts this GqlQueryParameter to JSON.
14350 * @function toJSON
14351 * @memberof google.datastore.v1.GqlQueryParameter
14352 * @instance
14353 * @returns {Object.<string,*>} JSON object
14354 */
14355 GqlQueryParameter.prototype.toJSON = function toJSON() {
14356 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
14357 };
14358
14359 return GqlQueryParameter;
14360 })();
14361
14362 v1.QueryResultBatch = (function() {
14363
14364 /**
14365 * Properties of a QueryResultBatch.
14366 * @memberof google.datastore.v1
14367 * @interface IQueryResultBatch
14368 * @property {number|null} [skippedResults] QueryResultBatch skippedResults
14369 * @property {Uint8Array|null} [skippedCursor] QueryResultBatch skippedCursor
14370 * @property {google.datastore.v1.EntityResult.ResultType|null} [entityResultType] QueryResultBatch entityResultType
14371 * @property {Array.<google.datastore.v1.IEntityResult>|null} [entityResults] QueryResultBatch entityResults
14372 * @property {Uint8Array|null} [endCursor] QueryResultBatch endCursor
14373 * @property {google.datastore.v1.QueryResultBatch.MoreResultsType|null} [moreResults] QueryResultBatch moreResults
14374 * @property {number|Long|null} [snapshotVersion] QueryResultBatch snapshotVersion
14375 */
14376
14377 /**
14378 * Constructs a new QueryResultBatch.
14379 * @memberof google.datastore.v1
14380 * @classdesc Represents a QueryResultBatch.
14381 * @implements IQueryResultBatch
14382 * @constructor
14383 * @param {google.datastore.v1.IQueryResultBatch=} [properties] Properties to set
14384 */
14385 function QueryResultBatch(properties) {
14386 this.entityResults = [];
14387 if (properties)
14388 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
14389 if (properties[keys[i]] != null)
14390 this[keys[i]] = properties[keys[i]];
14391 }
14392
14393 /**
14394 * QueryResultBatch skippedResults.
14395 * @member {number} skippedResults
14396 * @memberof google.datastore.v1.QueryResultBatch
14397 * @instance
14398 */
14399 QueryResultBatch.prototype.skippedResults = 0;
14400
14401 /**
14402 * QueryResultBatch skippedCursor.
14403 * @member {Uint8Array} skippedCursor
14404 * @memberof google.datastore.v1.QueryResultBatch
14405 * @instance
14406 */
14407 QueryResultBatch.prototype.skippedCursor = $util.newBuffer([]);
14408
14409 /**
14410 * QueryResultBatch entityResultType.
14411 * @member {google.datastore.v1.EntityResult.ResultType} entityResultType
14412 * @memberof google.datastore.v1.QueryResultBatch
14413 * @instance
14414 */
14415 QueryResultBatch.prototype.entityResultType = 0;
14416
14417 /**
14418 * QueryResultBatch entityResults.
14419 * @member {Array.<google.datastore.v1.IEntityResult>} entityResults
14420 * @memberof google.datastore.v1.QueryResultBatch
14421 * @instance
14422 */
14423 QueryResultBatch.prototype.entityResults = $util.emptyArray;
14424
14425 /**
14426 * QueryResultBatch endCursor.
14427 * @member {Uint8Array} endCursor
14428 * @memberof google.datastore.v1.QueryResultBatch
14429 * @instance
14430 */
14431 QueryResultBatch.prototype.endCursor = $util.newBuffer([]);
14432
14433 /**
14434 * QueryResultBatch moreResults.
14435 * @member {google.datastore.v1.QueryResultBatch.MoreResultsType} moreResults
14436 * @memberof google.datastore.v1.QueryResultBatch
14437 * @instance
14438 */
14439 QueryResultBatch.prototype.moreResults = 0;
14440
14441 /**
14442 * QueryResultBatch snapshotVersion.
14443 * @member {number|Long} snapshotVersion
14444 * @memberof google.datastore.v1.QueryResultBatch
14445 * @instance
14446 */
14447 QueryResultBatch.prototype.snapshotVersion = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
14448
14449 /**
14450 * Creates a new QueryResultBatch instance using the specified properties.
14451 * @function create
14452 * @memberof google.datastore.v1.QueryResultBatch
14453 * @static
14454 * @param {google.datastore.v1.IQueryResultBatch=} [properties] Properties to set
14455 * @returns {google.datastore.v1.QueryResultBatch} QueryResultBatch instance
14456 */
14457 QueryResultBatch.create = function create(properties) {
14458 return new QueryResultBatch(properties);
14459 };
14460
14461 /**
14462 * Encodes the specified QueryResultBatch message. Does not implicitly {@link google.datastore.v1.QueryResultBatch.verify|verify} messages.
14463 * @function encode
14464 * @memberof google.datastore.v1.QueryResultBatch
14465 * @static
14466 * @param {google.datastore.v1.IQueryResultBatch} message QueryResultBatch message or plain object to encode
14467 * @param {$protobuf.Writer} [writer] Writer to encode to
14468 * @returns {$protobuf.Writer} Writer
14469 */
14470 QueryResultBatch.encode = function encode(message, writer) {
14471 if (!writer)
14472 writer = $Writer.create();
14473 if (message.entityResultType != null && Object.hasOwnProperty.call(message, "entityResultType"))
14474 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.entityResultType);
14475 if (message.entityResults != null && message.entityResults.length)
14476 for (var i = 0; i < message.entityResults.length; ++i)
14477 $root.google.datastore.v1.EntityResult.encode(message.entityResults[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
14478 if (message.skippedCursor != null && Object.hasOwnProperty.call(message, "skippedCursor"))
14479 writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.skippedCursor);
14480 if (message.endCursor != null && Object.hasOwnProperty.call(message, "endCursor"))
14481 writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.endCursor);
14482 if (message.moreResults != null && Object.hasOwnProperty.call(message, "moreResults"))
14483 writer.uint32(/* id 5, wireType 0 =*/40).int32(message.moreResults);
14484 if (message.skippedResults != null && Object.hasOwnProperty.call(message, "skippedResults"))
14485 writer.uint32(/* id 6, wireType 0 =*/48).int32(message.skippedResults);
14486 if (message.snapshotVersion != null && Object.hasOwnProperty.call(message, "snapshotVersion"))
14487 writer.uint32(/* id 7, wireType 0 =*/56).int64(message.snapshotVersion);
14488 return writer;
14489 };
14490
14491 /**
14492 * Encodes the specified QueryResultBatch message, length delimited. Does not implicitly {@link google.datastore.v1.QueryResultBatch.verify|verify} messages.
14493 * @function encodeDelimited
14494 * @memberof google.datastore.v1.QueryResultBatch
14495 * @static
14496 * @param {google.datastore.v1.IQueryResultBatch} message QueryResultBatch message or plain object to encode
14497 * @param {$protobuf.Writer} [writer] Writer to encode to
14498 * @returns {$protobuf.Writer} Writer
14499 */
14500 QueryResultBatch.encodeDelimited = function encodeDelimited(message, writer) {
14501 return this.encode(message, writer).ldelim();
14502 };
14503
14504 /**
14505 * Decodes a QueryResultBatch message from the specified reader or buffer.
14506 * @function decode
14507 * @memberof google.datastore.v1.QueryResultBatch
14508 * @static
14509 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
14510 * @param {number} [length] Message length if known beforehand
14511 * @returns {google.datastore.v1.QueryResultBatch} QueryResultBatch
14512 * @throws {Error} If the payload is not a reader or valid buffer
14513 * @throws {$protobuf.util.ProtocolError} If required fields are missing
14514 */
14515 QueryResultBatch.decode = function decode(reader, length) {
14516 if (!(reader instanceof $Reader))
14517 reader = $Reader.create(reader);
14518 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.datastore.v1.QueryResultBatch();
14519 while (reader.pos < end) {
14520 var tag = reader.uint32();
14521 switch (tag >>> 3) {
14522 case 6:
14523 message.skippedResults = reader.int32();
14524 break;
14525 case 3:
14526 message.skippedCursor = reader.bytes();
14527 break;
14528 case 1:
14529 message.entityResultType = reader.int32();
14530 break;
14531 case 2:
14532 if (!(message.entityResults && message.entityResults.length))
14533 message.entityResults = [];
14534 message.entityResults.push($root.google.datastore.v1.EntityResult.decode(reader, reader.uint32()));
14535 break;
14536 case 4:
14537 message.endCursor = reader.bytes();
14538 break;
14539 case 5:
14540 message.moreResults = reader.int32();
14541 break;
14542 case 7:
14543 message.snapshotVersion = reader.int64();
14544 break;
14545 default:
14546 reader.skipType(tag & 7);
14547 break;
14548 }
14549 }
14550 return message;
14551 };
14552
14553 /**
14554 * Decodes a QueryResultBatch message from the specified reader or buffer, length delimited.
14555 * @function decodeDelimited
14556 * @memberof google.datastore.v1.QueryResultBatch
14557 * @static
14558 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
14559 * @returns {google.datastore.v1.QueryResultBatch} QueryResultBatch
14560 * @throws {Error} If the payload is not a reader or valid buffer
14561 * @throws {$protobuf.util.ProtocolError} If required fields are missing
14562 */
14563 QueryResultBatch.decodeDelimited = function decodeDelimited(reader) {
14564 if (!(reader instanceof $Reader))
14565 reader = new $Reader(reader);
14566 return this.decode(reader, reader.uint32());
14567 };
14568
14569 /**
14570 * Verifies a QueryResultBatch message.
14571 * @function verify
14572 * @memberof google.datastore.v1.QueryResultBatch
14573 * @static
14574 * @param {Object.<string,*>} message Plain object to verify
14575 * @returns {string|null} `null` if valid, otherwise the reason why it is not
14576 */
14577 QueryResultBatch.verify = function verify(message) {
14578 if (typeof message !== "object" || message === null)
14579 return "object expected";
14580 if (message.skippedResults != null && message.hasOwnProperty("skippedResults"))
14581 if (!$util.isInteger(message.skippedResults))
14582 return "skippedResults: integer expected";
14583 if (message.skippedCursor != null && message.hasOwnProperty("skippedCursor"))
14584 if (!(message.skippedCursor && typeof message.skippedCursor.length === "number" || $util.isString(message.skippedCursor)))
14585 return "skippedCursor: buffer expected";
14586 if (message.entityResultType != null && message.hasOwnProperty("entityResultType"))
14587 switch (message.entityResultType) {
14588 default:
14589 return "entityResultType: enum value expected";
14590 case 0:
14591 case 1:
14592 case 2:
14593 case 3:
14594 break;
14595 }
14596 if (message.entityResults != null && message.hasOwnProperty("entityResults")) {
14597 if (!Array.isArray(message.entityResults))
14598 return "entityResults: array expected";
14599 for (var i = 0; i < message.entityResults.length; ++i) {
14600 var error = $root.google.datastore.v1.EntityResult.verify(message.entityResults[i]);
14601 if (error)
14602 return "entityResults." + error;
14603 }
14604 }
14605 if (message.endCursor != null && message.hasOwnProperty("endCursor"))
14606 if (!(message.endCursor && typeof message.endCursor.length === "number" || $util.isString(message.endCursor)))
14607 return "endCursor: buffer expected";
14608 if (message.moreResults != null && message.hasOwnProperty("moreResults"))
14609 switch (message.moreResults) {
14610 default:
14611 return "moreResults: enum value expected";
14612 case 0:
14613 case 1:
14614 case 2:
14615 case 4:
14616 case 3:
14617 break;
14618 }
14619 if (message.snapshotVersion != null && message.hasOwnProperty("snapshotVersion"))
14620 if (!$util.isInteger(message.snapshotVersion) && !(message.snapshotVersion && $util.isInteger(message.snapshotVersion.low) && $util.isInteger(message.snapshotVersion.high)))
14621 return "snapshotVersion: integer|Long expected";
14622 return null;
14623 };
14624
14625 /**
14626 * Creates a QueryResultBatch message from a plain object. Also converts values to their respective internal types.
14627 * @function fromObject
14628 * @memberof google.datastore.v1.QueryResultBatch
14629 * @static
14630 * @param {Object.<string,*>} object Plain object
14631 * @returns {google.datastore.v1.QueryResultBatch} QueryResultBatch
14632 */
14633 QueryResultBatch.fromObject = function fromObject(object) {
14634 if (object instanceof $root.google.datastore.v1.QueryResultBatch)
14635 return object;
14636 var message = new $root.google.datastore.v1.QueryResultBatch();
14637 if (object.skippedResults != null)
14638 message.skippedResults = object.skippedResults | 0;
14639 if (object.skippedCursor != null)
14640 if (typeof object.skippedCursor === "string")
14641 $util.base64.decode(object.skippedCursor, message.skippedCursor = $util.newBuffer($util.base64.length(object.skippedCursor)), 0);
14642 else if (object.skippedCursor.length)
14643 message.skippedCursor = object.skippedCursor;
14644 switch (object.entityResultType) {
14645 case "RESULT_TYPE_UNSPECIFIED":
14646 case 0:
14647 message.entityResultType = 0;
14648 break;
14649 case "FULL":
14650 case 1:
14651 message.entityResultType = 1;
14652 break;
14653 case "PROJECTION":
14654 case 2:
14655 message.entityResultType = 2;
14656 break;
14657 case "KEY_ONLY":
14658 case 3:
14659 message.entityResultType = 3;
14660 break;
14661 }
14662 if (object.entityResults) {
14663 if (!Array.isArray(object.entityResults))
14664 throw TypeError(".google.datastore.v1.QueryResultBatch.entityResults: array expected");
14665 message.entityResults = [];
14666 for (var i = 0; i < object.entityResults.length; ++i) {
14667 if (typeof object.entityResults[i] !== "object")
14668 throw TypeError(".google.datastore.v1.QueryResultBatch.entityResults: object expected");
14669 message.entityResults[i] = $root.google.datastore.v1.EntityResult.fromObject(object.entityResults[i]);
14670 }
14671 }
14672 if (object.endCursor != null)
14673 if (typeof object.endCursor === "string")
14674 $util.base64.decode(object.endCursor, message.endCursor = $util.newBuffer($util.base64.length(object.endCursor)), 0);
14675 else if (object.endCursor.length)
14676 message.endCursor = object.endCursor;
14677 switch (object.moreResults) {
14678 case "MORE_RESULTS_TYPE_UNSPECIFIED":
14679 case 0:
14680 message.moreResults = 0;
14681 break;
14682 case "NOT_FINISHED":
14683 case 1:
14684 message.moreResults = 1;
14685 break;
14686 case "MORE_RESULTS_AFTER_LIMIT":
14687 case 2:
14688 message.moreResults = 2;
14689 break;
14690 case "MORE_RESULTS_AFTER_CURSOR":
14691 case 4:
14692 message.moreResults = 4;
14693 break;
14694 case "NO_MORE_RESULTS":
14695 case 3:
14696 message.moreResults = 3;
14697 break;
14698 }
14699 if (object.snapshotVersion != null)
14700 if ($util.Long)
14701 (message.snapshotVersion = $util.Long.fromValue(object.snapshotVersion)).unsigned = false;
14702 else if (typeof object.snapshotVersion === "string")
14703 message.snapshotVersion = parseInt(object.snapshotVersion, 10);
14704 else if (typeof object.snapshotVersion === "number")
14705 message.snapshotVersion = object.snapshotVersion;
14706 else if (typeof object.snapshotVersion === "object")
14707 message.snapshotVersion = new $util.LongBits(object.snapshotVersion.low >>> 0, object.snapshotVersion.high >>> 0).toNumber();
14708 return message;
14709 };
14710
14711 /**
14712 * Creates a plain object from a QueryResultBatch message. Also converts values to other types if specified.
14713 * @function toObject
14714 * @memberof google.datastore.v1.QueryResultBatch
14715 * @static
14716 * @param {google.datastore.v1.QueryResultBatch} message QueryResultBatch
14717 * @param {$protobuf.IConversionOptions} [options] Conversion options
14718 * @returns {Object.<string,*>} Plain object
14719 */
14720 QueryResultBatch.toObject = function toObject(message, options) {
14721 if (!options)
14722 options = {};
14723 var object = {};
14724 if (options.arrays || options.defaults)
14725 object.entityResults = [];
14726 if (options.defaults) {
14727 object.entityResultType = options.enums === String ? "RESULT_TYPE_UNSPECIFIED" : 0;
14728 if (options.bytes === String)
14729 object.skippedCursor = "";
14730 else {
14731 object.skippedCursor = [];
14732 if (options.bytes !== Array)
14733 object.skippedCursor = $util.newBuffer(object.skippedCursor);
14734 }
14735 if (options.bytes === String)
14736 object.endCursor = "";
14737 else {
14738 object.endCursor = [];
14739 if (options.bytes !== Array)
14740 object.endCursor = $util.newBuffer(object.endCursor);
14741 }
14742 object.moreResults = options.enums === String ? "MORE_RESULTS_TYPE_UNSPECIFIED" : 0;
14743 object.skippedResults = 0;
14744 if ($util.Long) {
14745 var long = new $util.Long(0, 0, false);
14746 object.snapshotVersion = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
14747 } else
14748 object.snapshotVersion = options.longs === String ? "0" : 0;
14749 }
14750 if (message.entityResultType != null && message.hasOwnProperty("entityResultType"))
14751 object.entityResultType = options.enums === String ? $root.google.datastore.v1.EntityResult.ResultType[message.entityResultType] : message.entityResultType;
14752 if (message.entityResults && message.entityResults.length) {
14753 object.entityResults = [];
14754 for (var j = 0; j < message.entityResults.length; ++j)
14755 object.entityResults[j] = $root.google.datastore.v1.EntityResult.toObject(message.entityResults[j], options);
14756 }
14757 if (message.skippedCursor != null && message.hasOwnProperty("skippedCursor"))
14758 object.skippedCursor = options.bytes === String ? $util.base64.encode(message.skippedCursor, 0, message.skippedCursor.length) : options.bytes === Array ? Array.prototype.slice.call(message.skippedCursor) : message.skippedCursor;
14759 if (message.endCursor != null && message.hasOwnProperty("endCursor"))
14760 object.endCursor = options.bytes === String ? $util.base64.encode(message.endCursor, 0, message.endCursor.length) : options.bytes === Array ? Array.prototype.slice.call(message.endCursor) : message.endCursor;
14761 if (message.moreResults != null && message.hasOwnProperty("moreResults"))
14762 object.moreResults = options.enums === String ? $root.google.datastore.v1.QueryResultBatch.MoreResultsType[message.moreResults] : message.moreResults;
14763 if (message.skippedResults != null && message.hasOwnProperty("skippedResults"))
14764 object.skippedResults = message.skippedResults;
14765 if (message.snapshotVersion != null && message.hasOwnProperty("snapshotVersion"))
14766 if (typeof message.snapshotVersion === "number")
14767 object.snapshotVersion = options.longs === String ? String(message.snapshotVersion) : message.snapshotVersion;
14768 else
14769 object.snapshotVersion = options.longs === String ? $util.Long.prototype.toString.call(message.snapshotVersion) : options.longs === Number ? new $util.LongBits(message.snapshotVersion.low >>> 0, message.snapshotVersion.high >>> 0).toNumber() : message.snapshotVersion;
14770 return object;
14771 };
14772
14773 /**
14774 * Converts this QueryResultBatch to JSON.
14775 * @function toJSON
14776 * @memberof google.datastore.v1.QueryResultBatch
14777 * @instance
14778 * @returns {Object.<string,*>} JSON object
14779 */
14780 QueryResultBatch.prototype.toJSON = function toJSON() {
14781 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
14782 };
14783
14784 /**
14785 * MoreResultsType enum.
14786 * @name google.datastore.v1.QueryResultBatch.MoreResultsType
14787 * @enum {number}
14788 * @property {number} MORE_RESULTS_TYPE_UNSPECIFIED=0 MORE_RESULTS_TYPE_UNSPECIFIED value
14789 * @property {number} NOT_FINISHED=1 NOT_FINISHED value
14790 * @property {number} MORE_RESULTS_AFTER_LIMIT=2 MORE_RESULTS_AFTER_LIMIT value
14791 * @property {number} MORE_RESULTS_AFTER_CURSOR=4 MORE_RESULTS_AFTER_CURSOR value
14792 * @property {number} NO_MORE_RESULTS=3 NO_MORE_RESULTS value
14793 */
14794 QueryResultBatch.MoreResultsType = (function() {
14795 var valuesById = {}, values = Object.create(valuesById);
14796 values[valuesById[0] = "MORE_RESULTS_TYPE_UNSPECIFIED"] = 0;
14797 values[valuesById[1] = "NOT_FINISHED"] = 1;
14798 values[valuesById[2] = "MORE_RESULTS_AFTER_LIMIT"] = 2;
14799 values[valuesById[4] = "MORE_RESULTS_AFTER_CURSOR"] = 4;
14800 values[valuesById[3] = "NO_MORE_RESULTS"] = 3;
14801 return values;
14802 })();
14803
14804 return QueryResultBatch;
14805 })();
14806
14807 return v1;
14808 })();
14809
14810 return datastore;
14811 })();
14812
14813 google.api = (function() {
14814
14815 /**
14816 * Namespace api.
14817 * @memberof google
14818 * @namespace
14819 */
14820 var api = {};
14821
14822 api.Http = (function() {
14823
14824 /**
14825 * Properties of a Http.
14826 * @memberof google.api
14827 * @interface IHttp
14828 * @property {Array.<google.api.IHttpRule>|null} [rules] Http rules
14829 * @property {boolean|null} [fullyDecodeReservedExpansion] Http fullyDecodeReservedExpansion
14830 */
14831
14832 /**
14833 * Constructs a new Http.
14834 * @memberof google.api
14835 * @classdesc Represents a Http.
14836 * @implements IHttp
14837 * @constructor
14838 * @param {google.api.IHttp=} [properties] Properties to set
14839 */
14840 function Http(properties) {
14841 this.rules = [];
14842 if (properties)
14843 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
14844 if (properties[keys[i]] != null)
14845 this[keys[i]] = properties[keys[i]];
14846 }
14847
14848 /**
14849 * Http rules.
14850 * @member {Array.<google.api.IHttpRule>} rules
14851 * @memberof google.api.Http
14852 * @instance
14853 */
14854 Http.prototype.rules = $util.emptyArray;
14855
14856 /**
14857 * Http fullyDecodeReservedExpansion.
14858 * @member {boolean} fullyDecodeReservedExpansion
14859 * @memberof google.api.Http
14860 * @instance
14861 */
14862 Http.prototype.fullyDecodeReservedExpansion = false;
14863
14864 /**
14865 * Creates a new Http instance using the specified properties.
14866 * @function create
14867 * @memberof google.api.Http
14868 * @static
14869 * @param {google.api.IHttp=} [properties] Properties to set
14870 * @returns {google.api.Http} Http instance
14871 */
14872 Http.create = function create(properties) {
14873 return new Http(properties);
14874 };
14875
14876 /**
14877 * Encodes the specified Http message. Does not implicitly {@link google.api.Http.verify|verify} messages.
14878 * @function encode
14879 * @memberof google.api.Http
14880 * @static
14881 * @param {google.api.IHttp} message Http message or plain object to encode
14882 * @param {$protobuf.Writer} [writer] Writer to encode to
14883 * @returns {$protobuf.Writer} Writer
14884 */
14885 Http.encode = function encode(message, writer) {
14886 if (!writer)
14887 writer = $Writer.create();
14888 if (message.rules != null && message.rules.length)
14889 for (var i = 0; i < message.rules.length; ++i)
14890 $root.google.api.HttpRule.encode(message.rules[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
14891 if (message.fullyDecodeReservedExpansion != null && Object.hasOwnProperty.call(message, "fullyDecodeReservedExpansion"))
14892 writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fullyDecodeReservedExpansion);
14893 return writer;
14894 };
14895
14896 /**
14897 * Encodes the specified Http message, length delimited. Does not implicitly {@link google.api.Http.verify|verify} messages.
14898 * @function encodeDelimited
14899 * @memberof google.api.Http
14900 * @static
14901 * @param {google.api.IHttp} message Http message or plain object to encode
14902 * @param {$protobuf.Writer} [writer] Writer to encode to
14903 * @returns {$protobuf.Writer} Writer
14904 */
14905 Http.encodeDelimited = function encodeDelimited(message, writer) {
14906 return this.encode(message, writer).ldelim();
14907 };
14908
14909 /**
14910 * Decodes a Http message from the specified reader or buffer.
14911 * @function decode
14912 * @memberof google.api.Http
14913 * @static
14914 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
14915 * @param {number} [length] Message length if known beforehand
14916 * @returns {google.api.Http} Http
14917 * @throws {Error} If the payload is not a reader or valid buffer
14918 * @throws {$protobuf.util.ProtocolError} If required fields are missing
14919 */
14920 Http.decode = function decode(reader, length) {
14921 if (!(reader instanceof $Reader))
14922 reader = $Reader.create(reader);
14923 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.Http();
14924 while (reader.pos < end) {
14925 var tag = reader.uint32();
14926 switch (tag >>> 3) {
14927 case 1:
14928 if (!(message.rules && message.rules.length))
14929 message.rules = [];
14930 message.rules.push($root.google.api.HttpRule.decode(reader, reader.uint32()));
14931 break;
14932 case 2:
14933 message.fullyDecodeReservedExpansion = reader.bool();
14934 break;
14935 default:
14936 reader.skipType(tag & 7);
14937 break;
14938 }
14939 }
14940 return message;
14941 };
14942
14943 /**
14944 * Decodes a Http message from the specified reader or buffer, length delimited.
14945 * @function decodeDelimited
14946 * @memberof google.api.Http
14947 * @static
14948 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
14949 * @returns {google.api.Http} Http
14950 * @throws {Error} If the payload is not a reader or valid buffer
14951 * @throws {$protobuf.util.ProtocolError} If required fields are missing
14952 */
14953 Http.decodeDelimited = function decodeDelimited(reader) {
14954 if (!(reader instanceof $Reader))
14955 reader = new $Reader(reader);
14956 return this.decode(reader, reader.uint32());
14957 };
14958
14959 /**
14960 * Verifies a Http message.
14961 * @function verify
14962 * @memberof google.api.Http
14963 * @static
14964 * @param {Object.<string,*>} message Plain object to verify
14965 * @returns {string|null} `null` if valid, otherwise the reason why it is not
14966 */
14967 Http.verify = function verify(message) {
14968 if (typeof message !== "object" || message === null)
14969 return "object expected";
14970 if (message.rules != null && message.hasOwnProperty("rules")) {
14971 if (!Array.isArray(message.rules))
14972 return "rules: array expected";
14973 for (var i = 0; i < message.rules.length; ++i) {
14974 var error = $root.google.api.HttpRule.verify(message.rules[i]);
14975 if (error)
14976 return "rules." + error;
14977 }
14978 }
14979 if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion"))
14980 if (typeof message.fullyDecodeReservedExpansion !== "boolean")
14981 return "fullyDecodeReservedExpansion: boolean expected";
14982 return null;
14983 };
14984
14985 /**
14986 * Creates a Http message from a plain object. Also converts values to their respective internal types.
14987 * @function fromObject
14988 * @memberof google.api.Http
14989 * @static
14990 * @param {Object.<string,*>} object Plain object
14991 * @returns {google.api.Http} Http
14992 */
14993 Http.fromObject = function fromObject(object) {
14994 if (object instanceof $root.google.api.Http)
14995 return object;
14996 var message = new $root.google.api.Http();
14997 if (object.rules) {
14998 if (!Array.isArray(object.rules))
14999 throw TypeError(".google.api.Http.rules: array expected");
15000 message.rules = [];
15001 for (var i = 0; i < object.rules.length; ++i) {
15002 if (typeof object.rules[i] !== "object")
15003 throw TypeError(".google.api.Http.rules: object expected");
15004 message.rules[i] = $root.google.api.HttpRule.fromObject(object.rules[i]);
15005 }
15006 }
15007 if (object.fullyDecodeReservedExpansion != null)
15008 message.fullyDecodeReservedExpansion = Boolean(object.fullyDecodeReservedExpansion);
15009 return message;
15010 };
15011
15012 /**
15013 * Creates a plain object from a Http message. Also converts values to other types if specified.
15014 * @function toObject
15015 * @memberof google.api.Http
15016 * @static
15017 * @param {google.api.Http} message Http
15018 * @param {$protobuf.IConversionOptions} [options] Conversion options
15019 * @returns {Object.<string,*>} Plain object
15020 */
15021 Http.toObject = function toObject(message, options) {
15022 if (!options)
15023 options = {};
15024 var object = {};
15025 if (options.arrays || options.defaults)
15026 object.rules = [];
15027 if (options.defaults)
15028 object.fullyDecodeReservedExpansion = false;
15029 if (message.rules && message.rules.length) {
15030 object.rules = [];
15031 for (var j = 0; j < message.rules.length; ++j)
15032 object.rules[j] = $root.google.api.HttpRule.toObject(message.rules[j], options);
15033 }
15034 if (message.fullyDecodeReservedExpansion != null && message.hasOwnProperty("fullyDecodeReservedExpansion"))
15035 object.fullyDecodeReservedExpansion = message.fullyDecodeReservedExpansion;
15036 return object;
15037 };
15038
15039 /**
15040 * Converts this Http to JSON.
15041 * @function toJSON
15042 * @memberof google.api.Http
15043 * @instance
15044 * @returns {Object.<string,*>} JSON object
15045 */
15046 Http.prototype.toJSON = function toJSON() {
15047 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
15048 };
15049
15050 return Http;
15051 })();
15052
15053 api.HttpRule = (function() {
15054
15055 /**
15056 * Properties of a HttpRule.
15057 * @memberof google.api
15058 * @interface IHttpRule
15059 * @property {string|null} [selector] HttpRule selector
15060 * @property {string|null} [get] HttpRule get
15061 * @property {string|null} [put] HttpRule put
15062 * @property {string|null} [post] HttpRule post
15063 * @property {string|null} ["delete"] HttpRule delete
15064 * @property {string|null} [patch] HttpRule patch
15065 * @property {google.api.ICustomHttpPattern|null} [custom] HttpRule custom
15066 * @property {string|null} [body] HttpRule body
15067 * @property {string|null} [responseBody] HttpRule responseBody
15068 * @property {Array.<google.api.IHttpRule>|null} [additionalBindings] HttpRule additionalBindings
15069 */
15070
15071 /**
15072 * Constructs a new HttpRule.
15073 * @memberof google.api
15074 * @classdesc Represents a HttpRule.
15075 * @implements IHttpRule
15076 * @constructor
15077 * @param {google.api.IHttpRule=} [properties] Properties to set
15078 */
15079 function HttpRule(properties) {
15080 this.additionalBindings = [];
15081 if (properties)
15082 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
15083 if (properties[keys[i]] != null)
15084 this[keys[i]] = properties[keys[i]];
15085 }
15086
15087 /**
15088 * HttpRule selector.
15089 * @member {string} selector
15090 * @memberof google.api.HttpRule
15091 * @instance
15092 */
15093 HttpRule.prototype.selector = "";
15094
15095 /**
15096 * HttpRule get.
15097 * @member {string} get
15098 * @memberof google.api.HttpRule
15099 * @instance
15100 */
15101 HttpRule.prototype.get = "";
15102
15103 /**
15104 * HttpRule put.
15105 * @member {string} put
15106 * @memberof google.api.HttpRule
15107 * @instance
15108 */
15109 HttpRule.prototype.put = "";
15110
15111 /**
15112 * HttpRule post.
15113 * @member {string} post
15114 * @memberof google.api.HttpRule
15115 * @instance
15116 */
15117 HttpRule.prototype.post = "";
15118
15119 /**
15120 * HttpRule delete.
15121 * @member {string} delete
15122 * @memberof google.api.HttpRule
15123 * @instance
15124 */
15125 HttpRule.prototype["delete"] = "";
15126
15127 /**
15128 * HttpRule patch.
15129 * @member {string} patch
15130 * @memberof google.api.HttpRule
15131 * @instance
15132 */
15133 HttpRule.prototype.patch = "";
15134
15135 /**
15136 * HttpRule custom.
15137 * @member {google.api.ICustomHttpPattern|null|undefined} custom
15138 * @memberof google.api.HttpRule
15139 * @instance
15140 */
15141 HttpRule.prototype.custom = null;
15142
15143 /**
15144 * HttpRule body.
15145 * @member {string} body
15146 * @memberof google.api.HttpRule
15147 * @instance
15148 */
15149 HttpRule.prototype.body = "";
15150
15151 /**
15152 * HttpRule responseBody.
15153 * @member {string} responseBody
15154 * @memberof google.api.HttpRule
15155 * @instance
15156 */
15157 HttpRule.prototype.responseBody = "";
15158
15159 /**
15160 * HttpRule additionalBindings.
15161 * @member {Array.<google.api.IHttpRule>} additionalBindings
15162 * @memberof google.api.HttpRule
15163 * @instance
15164 */
15165 HttpRule.prototype.additionalBindings = $util.emptyArray;
15166
15167 // OneOf field names bound to virtual getters and setters
15168 var $oneOfFields;
15169
15170 /**
15171 * HttpRule pattern.
15172 * @member {"get"|"put"|"post"|"delete"|"patch"|"custom"|undefined} pattern
15173 * @memberof google.api.HttpRule
15174 * @instance
15175 */
15176 Object.defineProperty(HttpRule.prototype, "pattern", {
15177 get: $util.oneOfGetter($oneOfFields = ["get", "put", "post", "delete", "patch", "custom"]),
15178 set: $util.oneOfSetter($oneOfFields)
15179 });
15180
15181 /**
15182 * Creates a new HttpRule instance using the specified properties.
15183 * @function create
15184 * @memberof google.api.HttpRule
15185 * @static
15186 * @param {google.api.IHttpRule=} [properties] Properties to set
15187 * @returns {google.api.HttpRule} HttpRule instance
15188 */
15189 HttpRule.create = function create(properties) {
15190 return new HttpRule(properties);
15191 };
15192
15193 /**
15194 * Encodes the specified HttpRule message. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
15195 * @function encode
15196 * @memberof google.api.HttpRule
15197 * @static
15198 * @param {google.api.IHttpRule} message HttpRule message or plain object to encode
15199 * @param {$protobuf.Writer} [writer] Writer to encode to
15200 * @returns {$protobuf.Writer} Writer
15201 */
15202 HttpRule.encode = function encode(message, writer) {
15203 if (!writer)
15204 writer = $Writer.create();
15205 if (message.selector != null && Object.hasOwnProperty.call(message, "selector"))
15206 writer.uint32(/* id 1, wireType 2 =*/10).string(message.selector);
15207 if (message.get != null && Object.hasOwnProperty.call(message, "get"))
15208 writer.uint32(/* id 2, wireType 2 =*/18).string(message.get);
15209 if (message.put != null && Object.hasOwnProperty.call(message, "put"))
15210 writer.uint32(/* id 3, wireType 2 =*/26).string(message.put);
15211 if (message.post != null && Object.hasOwnProperty.call(message, "post"))
15212 writer.uint32(/* id 4, wireType 2 =*/34).string(message.post);
15213 if (message["delete"] != null && Object.hasOwnProperty.call(message, "delete"))
15214 writer.uint32(/* id 5, wireType 2 =*/42).string(message["delete"]);
15215 if (message.patch != null && Object.hasOwnProperty.call(message, "patch"))
15216 writer.uint32(/* id 6, wireType 2 =*/50).string(message.patch);
15217 if (message.body != null && Object.hasOwnProperty.call(message, "body"))
15218 writer.uint32(/* id 7, wireType 2 =*/58).string(message.body);
15219 if (message.custom != null && Object.hasOwnProperty.call(message, "custom"))
15220 $root.google.api.CustomHttpPattern.encode(message.custom, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
15221 if (message.additionalBindings != null && message.additionalBindings.length)
15222 for (var i = 0; i < message.additionalBindings.length; ++i)
15223 $root.google.api.HttpRule.encode(message.additionalBindings[i], writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim();
15224 if (message.responseBody != null && Object.hasOwnProperty.call(message, "responseBody"))
15225 writer.uint32(/* id 12, wireType 2 =*/98).string(message.responseBody);
15226 return writer;
15227 };
15228
15229 /**
15230 * Encodes the specified HttpRule message, length delimited. Does not implicitly {@link google.api.HttpRule.verify|verify} messages.
15231 * @function encodeDelimited
15232 * @memberof google.api.HttpRule
15233 * @static
15234 * @param {google.api.IHttpRule} message HttpRule message or plain object to encode
15235 * @param {$protobuf.Writer} [writer] Writer to encode to
15236 * @returns {$protobuf.Writer} Writer
15237 */
15238 HttpRule.encodeDelimited = function encodeDelimited(message, writer) {
15239 return this.encode(message, writer).ldelim();
15240 };
15241
15242 /**
15243 * Decodes a HttpRule message from the specified reader or buffer.
15244 * @function decode
15245 * @memberof google.api.HttpRule
15246 * @static
15247 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
15248 * @param {number} [length] Message length if known beforehand
15249 * @returns {google.api.HttpRule} HttpRule
15250 * @throws {Error} If the payload is not a reader or valid buffer
15251 * @throws {$protobuf.util.ProtocolError} If required fields are missing
15252 */
15253 HttpRule.decode = function decode(reader, length) {
15254 if (!(reader instanceof $Reader))
15255 reader = $Reader.create(reader);
15256 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.HttpRule();
15257 while (reader.pos < end) {
15258 var tag = reader.uint32();
15259 switch (tag >>> 3) {
15260 case 1:
15261 message.selector = reader.string();
15262 break;
15263 case 2:
15264 message.get = reader.string();
15265 break;
15266 case 3:
15267 message.put = reader.string();
15268 break;
15269 case 4:
15270 message.post = reader.string();
15271 break;
15272 case 5:
15273 message["delete"] = reader.string();
15274 break;
15275 case 6:
15276 message.patch = reader.string();
15277 break;
15278 case 8:
15279 message.custom = $root.google.api.CustomHttpPattern.decode(reader, reader.uint32());
15280 break;
15281 case 7:
15282 message.body = reader.string();
15283 break;
15284 case 12:
15285 message.responseBody = reader.string();
15286 break;
15287 case 11:
15288 if (!(message.additionalBindings && message.additionalBindings.length))
15289 message.additionalBindings = [];
15290 message.additionalBindings.push($root.google.api.HttpRule.decode(reader, reader.uint32()));
15291 break;
15292 default:
15293 reader.skipType(tag & 7);
15294 break;
15295 }
15296 }
15297 return message;
15298 };
15299
15300 /**
15301 * Decodes a HttpRule message from the specified reader or buffer, length delimited.
15302 * @function decodeDelimited
15303 * @memberof google.api.HttpRule
15304 * @static
15305 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
15306 * @returns {google.api.HttpRule} HttpRule
15307 * @throws {Error} If the payload is not a reader or valid buffer
15308 * @throws {$protobuf.util.ProtocolError} If required fields are missing
15309 */
15310 HttpRule.decodeDelimited = function decodeDelimited(reader) {
15311 if (!(reader instanceof $Reader))
15312 reader = new $Reader(reader);
15313 return this.decode(reader, reader.uint32());
15314 };
15315
15316 /**
15317 * Verifies a HttpRule message.
15318 * @function verify
15319 * @memberof google.api.HttpRule
15320 * @static
15321 * @param {Object.<string,*>} message Plain object to verify
15322 * @returns {string|null} `null` if valid, otherwise the reason why it is not
15323 */
15324 HttpRule.verify = function verify(message) {
15325 if (typeof message !== "object" || message === null)
15326 return "object expected";
15327 var properties = {};
15328 if (message.selector != null && message.hasOwnProperty("selector"))
15329 if (!$util.isString(message.selector))
15330 return "selector: string expected";
15331 if (message.get != null && message.hasOwnProperty("get")) {
15332 properties.pattern = 1;
15333 if (!$util.isString(message.get))
15334 return "get: string expected";
15335 }
15336 if (message.put != null && message.hasOwnProperty("put")) {
15337 if (properties.pattern === 1)
15338 return "pattern: multiple values";
15339 properties.pattern = 1;
15340 if (!$util.isString(message.put))
15341 return "put: string expected";
15342 }
15343 if (message.post != null && message.hasOwnProperty("post")) {
15344 if (properties.pattern === 1)
15345 return "pattern: multiple values";
15346 properties.pattern = 1;
15347 if (!$util.isString(message.post))
15348 return "post: string expected";
15349 }
15350 if (message["delete"] != null && message.hasOwnProperty("delete")) {
15351 if (properties.pattern === 1)
15352 return "pattern: multiple values";
15353 properties.pattern = 1;
15354 if (!$util.isString(message["delete"]))
15355 return "delete: string expected";
15356 }
15357 if (message.patch != null && message.hasOwnProperty("patch")) {
15358 if (properties.pattern === 1)
15359 return "pattern: multiple values";
15360 properties.pattern = 1;
15361 if (!$util.isString(message.patch))
15362 return "patch: string expected";
15363 }
15364 if (message.custom != null && message.hasOwnProperty("custom")) {
15365 if (properties.pattern === 1)
15366 return "pattern: multiple values";
15367 properties.pattern = 1;
15368 {
15369 var error = $root.google.api.CustomHttpPattern.verify(message.custom);
15370 if (error)
15371 return "custom." + error;
15372 }
15373 }
15374 if (message.body != null && message.hasOwnProperty("body"))
15375 if (!$util.isString(message.body))
15376 return "body: string expected";
15377 if (message.responseBody != null && message.hasOwnProperty("responseBody"))
15378 if (!$util.isString(message.responseBody))
15379 return "responseBody: string expected";
15380 if (message.additionalBindings != null && message.hasOwnProperty("additionalBindings")) {
15381 if (!Array.isArray(message.additionalBindings))
15382 return "additionalBindings: array expected";
15383 for (var i = 0; i < message.additionalBindings.length; ++i) {
15384 var error = $root.google.api.HttpRule.verify(message.additionalBindings[i]);
15385 if (error)
15386 return "additionalBindings." + error;
15387 }
15388 }
15389 return null;
15390 };
15391
15392 /**
15393 * Creates a HttpRule message from a plain object. Also converts values to their respective internal types.
15394 * @function fromObject
15395 * @memberof google.api.HttpRule
15396 * @static
15397 * @param {Object.<string,*>} object Plain object
15398 * @returns {google.api.HttpRule} HttpRule
15399 */
15400 HttpRule.fromObject = function fromObject(object) {
15401 if (object instanceof $root.google.api.HttpRule)
15402 return object;
15403 var message = new $root.google.api.HttpRule();
15404 if (object.selector != null)
15405 message.selector = String(object.selector);
15406 if (object.get != null)
15407 message.get = String(object.get);
15408 if (object.put != null)
15409 message.put = String(object.put);
15410 if (object.post != null)
15411 message.post = String(object.post);
15412 if (object["delete"] != null)
15413 message["delete"] = String(object["delete"]);
15414 if (object.patch != null)
15415 message.patch = String(object.patch);
15416 if (object.custom != null) {
15417 if (typeof object.custom !== "object")
15418 throw TypeError(".google.api.HttpRule.custom: object expected");
15419 message.custom = $root.google.api.CustomHttpPattern.fromObject(object.custom);
15420 }
15421 if (object.body != null)
15422 message.body = String(object.body);
15423 if (object.responseBody != null)
15424 message.responseBody = String(object.responseBody);
15425 if (object.additionalBindings) {
15426 if (!Array.isArray(object.additionalBindings))
15427 throw TypeError(".google.api.HttpRule.additionalBindings: array expected");
15428 message.additionalBindings = [];
15429 for (var i = 0; i < object.additionalBindings.length; ++i) {
15430 if (typeof object.additionalBindings[i] !== "object")
15431 throw TypeError(".google.api.HttpRule.additionalBindings: object expected");
15432 message.additionalBindings[i] = $root.google.api.HttpRule.fromObject(object.additionalBindings[i]);
15433 }
15434 }
15435 return message;
15436 };
15437
15438 /**
15439 * Creates a plain object from a HttpRule message. Also converts values to other types if specified.
15440 * @function toObject
15441 * @memberof google.api.HttpRule
15442 * @static
15443 * @param {google.api.HttpRule} message HttpRule
15444 * @param {$protobuf.IConversionOptions} [options] Conversion options
15445 * @returns {Object.<string,*>} Plain object
15446 */
15447 HttpRule.toObject = function toObject(message, options) {
15448 if (!options)
15449 options = {};
15450 var object = {};
15451 if (options.arrays || options.defaults)
15452 object.additionalBindings = [];
15453 if (options.defaults) {
15454 object.selector = "";
15455 object.body = "";
15456 object.responseBody = "";
15457 }
15458 if (message.selector != null && message.hasOwnProperty("selector"))
15459 object.selector = message.selector;
15460 if (message.get != null && message.hasOwnProperty("get")) {
15461 object.get = message.get;
15462 if (options.oneofs)
15463 object.pattern = "get";
15464 }
15465 if (message.put != null && message.hasOwnProperty("put")) {
15466 object.put = message.put;
15467 if (options.oneofs)
15468 object.pattern = "put";
15469 }
15470 if (message.post != null && message.hasOwnProperty("post")) {
15471 object.post = message.post;
15472 if (options.oneofs)
15473 object.pattern = "post";
15474 }
15475 if (message["delete"] != null && message.hasOwnProperty("delete")) {
15476 object["delete"] = message["delete"];
15477 if (options.oneofs)
15478 object.pattern = "delete";
15479 }
15480 if (message.patch != null && message.hasOwnProperty("patch")) {
15481 object.patch = message.patch;
15482 if (options.oneofs)
15483 object.pattern = "patch";
15484 }
15485 if (message.body != null && message.hasOwnProperty("body"))
15486 object.body = message.body;
15487 if (message.custom != null && message.hasOwnProperty("custom")) {
15488 object.custom = $root.google.api.CustomHttpPattern.toObject(message.custom, options);
15489 if (options.oneofs)
15490 object.pattern = "custom";
15491 }
15492 if (message.additionalBindings && message.additionalBindings.length) {
15493 object.additionalBindings = [];
15494 for (var j = 0; j < message.additionalBindings.length; ++j)
15495 object.additionalBindings[j] = $root.google.api.HttpRule.toObject(message.additionalBindings[j], options);
15496 }
15497 if (message.responseBody != null && message.hasOwnProperty("responseBody"))
15498 object.responseBody = message.responseBody;
15499 return object;
15500 };
15501
15502 /**
15503 * Converts this HttpRule to JSON.
15504 * @function toJSON
15505 * @memberof google.api.HttpRule
15506 * @instance
15507 * @returns {Object.<string,*>} JSON object
15508 */
15509 HttpRule.prototype.toJSON = function toJSON() {
15510 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
15511 };
15512
15513 return HttpRule;
15514 })();
15515
15516 api.CustomHttpPattern = (function() {
15517
15518 /**
15519 * Properties of a CustomHttpPattern.
15520 * @memberof google.api
15521 * @interface ICustomHttpPattern
15522 * @property {string|null} [kind] CustomHttpPattern kind
15523 * @property {string|null} [path] CustomHttpPattern path
15524 */
15525
15526 /**
15527 * Constructs a new CustomHttpPattern.
15528 * @memberof google.api
15529 * @classdesc Represents a CustomHttpPattern.
15530 * @implements ICustomHttpPattern
15531 * @constructor
15532 * @param {google.api.ICustomHttpPattern=} [properties] Properties to set
15533 */
15534 function CustomHttpPattern(properties) {
15535 if (properties)
15536 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
15537 if (properties[keys[i]] != null)
15538 this[keys[i]] = properties[keys[i]];
15539 }
15540
15541 /**
15542 * CustomHttpPattern kind.
15543 * @member {string} kind
15544 * @memberof google.api.CustomHttpPattern
15545 * @instance
15546 */
15547 CustomHttpPattern.prototype.kind = "";
15548
15549 /**
15550 * CustomHttpPattern path.
15551 * @member {string} path
15552 * @memberof google.api.CustomHttpPattern
15553 * @instance
15554 */
15555 CustomHttpPattern.prototype.path = "";
15556
15557 /**
15558 * Creates a new CustomHttpPattern instance using the specified properties.
15559 * @function create
15560 * @memberof google.api.CustomHttpPattern
15561 * @static
15562 * @param {google.api.ICustomHttpPattern=} [properties] Properties to set
15563 * @returns {google.api.CustomHttpPattern} CustomHttpPattern instance
15564 */
15565 CustomHttpPattern.create = function create(properties) {
15566 return new CustomHttpPattern(properties);
15567 };
15568
15569 /**
15570 * Encodes the specified CustomHttpPattern message. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
15571 * @function encode
15572 * @memberof google.api.CustomHttpPattern
15573 * @static
15574 * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode
15575 * @param {$protobuf.Writer} [writer] Writer to encode to
15576 * @returns {$protobuf.Writer} Writer
15577 */
15578 CustomHttpPattern.encode = function encode(message, writer) {
15579 if (!writer)
15580 writer = $Writer.create();
15581 if (message.kind != null && Object.hasOwnProperty.call(message, "kind"))
15582 writer.uint32(/* id 1, wireType 2 =*/10).string(message.kind);
15583 if (message.path != null && Object.hasOwnProperty.call(message, "path"))
15584 writer.uint32(/* id 2, wireType 2 =*/18).string(message.path);
15585 return writer;
15586 };
15587
15588 /**
15589 * Encodes the specified CustomHttpPattern message, length delimited. Does not implicitly {@link google.api.CustomHttpPattern.verify|verify} messages.
15590 * @function encodeDelimited
15591 * @memberof google.api.CustomHttpPattern
15592 * @static
15593 * @param {google.api.ICustomHttpPattern} message CustomHttpPattern message or plain object to encode
15594 * @param {$protobuf.Writer} [writer] Writer to encode to
15595 * @returns {$protobuf.Writer} Writer
15596 */
15597 CustomHttpPattern.encodeDelimited = function encodeDelimited(message, writer) {
15598 return this.encode(message, writer).ldelim();
15599 };
15600
15601 /**
15602 * Decodes a CustomHttpPattern message from the specified reader or buffer.
15603 * @function decode
15604 * @memberof google.api.CustomHttpPattern
15605 * @static
15606 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
15607 * @param {number} [length] Message length if known beforehand
15608 * @returns {google.api.CustomHttpPattern} CustomHttpPattern
15609 * @throws {Error} If the payload is not a reader or valid buffer
15610 * @throws {$protobuf.util.ProtocolError} If required fields are missing
15611 */
15612 CustomHttpPattern.decode = function decode(reader, length) {
15613 if (!(reader instanceof $Reader))
15614 reader = $Reader.create(reader);
15615 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.api.CustomHttpPattern();
15616 while (reader.pos < end) {
15617 var tag = reader.uint32();
15618 switch (tag >>> 3) {
15619 case 1:
15620 message.kind = reader.string();
15621 break;
15622 case 2:
15623 message.path = reader.string();
15624 break;
15625 default:
15626 reader.skipType(tag & 7);
15627 break;
15628 }
15629 }
15630 return message;
15631 };
15632
15633 /**
15634 * Decodes a CustomHttpPattern message from the specified reader or buffer, length delimited.
15635 * @function decodeDelimited
15636 * @memberof google.api.CustomHttpPattern
15637 * @static
15638 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
15639 * @returns {google.api.CustomHttpPattern} CustomHttpPattern
15640 * @throws {Error} If the payload is not a reader or valid buffer
15641 * @throws {$protobuf.util.ProtocolError} If required fields are missing
15642 */
15643 CustomHttpPattern.decodeDelimited = function decodeDelimited(reader) {
15644 if (!(reader instanceof $Reader))
15645 reader = new $Reader(reader);
15646 return this.decode(reader, reader.uint32());
15647 };
15648
15649 /**
15650 * Verifies a CustomHttpPattern message.
15651 * @function verify
15652 * @memberof google.api.CustomHttpPattern
15653 * @static
15654 * @param {Object.<string,*>} message Plain object to verify
15655 * @returns {string|null} `null` if valid, otherwise the reason why it is not
15656 */
15657 CustomHttpPattern.verify = function verify(message) {
15658 if (typeof message !== "object" || message === null)
15659 return "object expected";
15660 if (message.kind != null && message.hasOwnProperty("kind"))
15661 if (!$util.isString(message.kind))
15662 return "kind: string expected";
15663 if (message.path != null && message.hasOwnProperty("path"))
15664 if (!$util.isString(message.path))
15665 return "path: string expected";
15666 return null;
15667 };
15668
15669 /**
15670 * Creates a CustomHttpPattern message from a plain object. Also converts values to their respective internal types.
15671 * @function fromObject
15672 * @memberof google.api.CustomHttpPattern
15673 * @static
15674 * @param {Object.<string,*>} object Plain object
15675 * @returns {google.api.CustomHttpPattern} CustomHttpPattern
15676 */
15677 CustomHttpPattern.fromObject = function fromObject(object) {
15678 if (object instanceof $root.google.api.CustomHttpPattern)
15679 return object;
15680 var message = new $root.google.api.CustomHttpPattern();
15681 if (object.kind != null)
15682 message.kind = String(object.kind);
15683 if (object.path != null)
15684 message.path = String(object.path);
15685 return message;
15686 };
15687
15688 /**
15689 * Creates a plain object from a CustomHttpPattern message. Also converts values to other types if specified.
15690 * @function toObject
15691 * @memberof google.api.CustomHttpPattern
15692 * @static
15693 * @param {google.api.CustomHttpPattern} message CustomHttpPattern
15694 * @param {$protobuf.IConversionOptions} [options] Conversion options
15695 * @returns {Object.<string,*>} Plain object
15696 */
15697 CustomHttpPattern.toObject = function toObject(message, options) {
15698 if (!options)
15699 options = {};
15700 var object = {};
15701 if (options.defaults) {
15702 object.kind = "";
15703 object.path = "";
15704 }
15705 if (message.kind != null && message.hasOwnProperty("kind"))
15706 object.kind = message.kind;
15707 if (message.path != null && message.hasOwnProperty("path"))
15708 object.path = message.path;
15709 return object;
15710 };
15711
15712 /**
15713 * Converts this CustomHttpPattern to JSON.
15714 * @function toJSON
15715 * @memberof google.api.CustomHttpPattern
15716 * @instance
15717 * @returns {Object.<string,*>} JSON object
15718 */
15719 CustomHttpPattern.prototype.toJSON = function toJSON() {
15720 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
15721 };
15722
15723 return CustomHttpPattern;
15724 })();
15725
15726 /**
15727 * FieldBehavior enum.
15728 * @name google.api.FieldBehavior
15729 * @enum {number}
15730 * @property {number} FIELD_BEHAVIOR_UNSPECIFIED=0 FIELD_BEHAVIOR_UNSPECIFIED value
15731 * @property {number} OPTIONAL=1 OPTIONAL value
15732 * @property {number} REQUIRED=2 REQUIRED value
15733 * @property {number} OUTPUT_ONLY=3 OUTPUT_ONLY value
15734 * @property {number} INPUT_ONLY=4 INPUT_ONLY value
15735 * @property {number} IMMUTABLE=5 IMMUTABLE value
15736 * @property {number} UNORDERED_LIST=6 UNORDERED_LIST value
15737 */
15738 api.FieldBehavior = (function() {
15739 var valuesById = {}, values = Object.create(valuesById);
15740 values[valuesById[0] = "FIELD_BEHAVIOR_UNSPECIFIED"] = 0;
15741 values[valuesById[1] = "OPTIONAL"] = 1;
15742 values[valuesById[2] = "REQUIRED"] = 2;
15743 values[valuesById[3] = "OUTPUT_ONLY"] = 3;
15744 values[valuesById[4] = "INPUT_ONLY"] = 4;
15745 values[valuesById[5] = "IMMUTABLE"] = 5;
15746 values[valuesById[6] = "UNORDERED_LIST"] = 6;
15747 return values;
15748 })();
15749
15750 return api;
15751 })();
15752
15753 google.protobuf = (function() {
15754
15755 /**
15756 * Namespace protobuf.
15757 * @memberof google
15758 * @namespace
15759 */
15760 var protobuf = {};
15761
15762 protobuf.FileDescriptorSet = (function() {
15763
15764 /**
15765 * Properties of a FileDescriptorSet.
15766 * @memberof google.protobuf
15767 * @interface IFileDescriptorSet
15768 * @property {Array.<google.protobuf.IFileDescriptorProto>|null} [file] FileDescriptorSet file
15769 */
15770
15771 /**
15772 * Constructs a new FileDescriptorSet.
15773 * @memberof google.protobuf
15774 * @classdesc Represents a FileDescriptorSet.
15775 * @implements IFileDescriptorSet
15776 * @constructor
15777 * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set
15778 */
15779 function FileDescriptorSet(properties) {
15780 this.file = [];
15781 if (properties)
15782 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
15783 if (properties[keys[i]] != null)
15784 this[keys[i]] = properties[keys[i]];
15785 }
15786
15787 /**
15788 * FileDescriptorSet file.
15789 * @member {Array.<google.protobuf.IFileDescriptorProto>} file
15790 * @memberof google.protobuf.FileDescriptorSet
15791 * @instance
15792 */
15793 FileDescriptorSet.prototype.file = $util.emptyArray;
15794
15795 /**
15796 * Creates a new FileDescriptorSet instance using the specified properties.
15797 * @function create
15798 * @memberof google.protobuf.FileDescriptorSet
15799 * @static
15800 * @param {google.protobuf.IFileDescriptorSet=} [properties] Properties to set
15801 * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet instance
15802 */
15803 FileDescriptorSet.create = function create(properties) {
15804 return new FileDescriptorSet(properties);
15805 };
15806
15807 /**
15808 * Encodes the specified FileDescriptorSet message. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
15809 * @function encode
15810 * @memberof google.protobuf.FileDescriptorSet
15811 * @static
15812 * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode
15813 * @param {$protobuf.Writer} [writer] Writer to encode to
15814 * @returns {$protobuf.Writer} Writer
15815 */
15816 FileDescriptorSet.encode = function encode(message, writer) {
15817 if (!writer)
15818 writer = $Writer.create();
15819 if (message.file != null && message.file.length)
15820 for (var i = 0; i < message.file.length; ++i)
15821 $root.google.protobuf.FileDescriptorProto.encode(message.file[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
15822 return writer;
15823 };
15824
15825 /**
15826 * Encodes the specified FileDescriptorSet message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorSet.verify|verify} messages.
15827 * @function encodeDelimited
15828 * @memberof google.protobuf.FileDescriptorSet
15829 * @static
15830 * @param {google.protobuf.IFileDescriptorSet} message FileDescriptorSet message or plain object to encode
15831 * @param {$protobuf.Writer} [writer] Writer to encode to
15832 * @returns {$protobuf.Writer} Writer
15833 */
15834 FileDescriptorSet.encodeDelimited = function encodeDelimited(message, writer) {
15835 return this.encode(message, writer).ldelim();
15836 };
15837
15838 /**
15839 * Decodes a FileDescriptorSet message from the specified reader or buffer.
15840 * @function decode
15841 * @memberof google.protobuf.FileDescriptorSet
15842 * @static
15843 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
15844 * @param {number} [length] Message length if known beforehand
15845 * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet
15846 * @throws {Error} If the payload is not a reader or valid buffer
15847 * @throws {$protobuf.util.ProtocolError} If required fields are missing
15848 */
15849 FileDescriptorSet.decode = function decode(reader, length) {
15850 if (!(reader instanceof $Reader))
15851 reader = $Reader.create(reader);
15852 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorSet();
15853 while (reader.pos < end) {
15854 var tag = reader.uint32();
15855 switch (tag >>> 3) {
15856 case 1:
15857 if (!(message.file && message.file.length))
15858 message.file = [];
15859 message.file.push($root.google.protobuf.FileDescriptorProto.decode(reader, reader.uint32()));
15860 break;
15861 default:
15862 reader.skipType(tag & 7);
15863 break;
15864 }
15865 }
15866 return message;
15867 };
15868
15869 /**
15870 * Decodes a FileDescriptorSet message from the specified reader or buffer, length delimited.
15871 * @function decodeDelimited
15872 * @memberof google.protobuf.FileDescriptorSet
15873 * @static
15874 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
15875 * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet
15876 * @throws {Error} If the payload is not a reader or valid buffer
15877 * @throws {$protobuf.util.ProtocolError} If required fields are missing
15878 */
15879 FileDescriptorSet.decodeDelimited = function decodeDelimited(reader) {
15880 if (!(reader instanceof $Reader))
15881 reader = new $Reader(reader);
15882 return this.decode(reader, reader.uint32());
15883 };
15884
15885 /**
15886 * Verifies a FileDescriptorSet message.
15887 * @function verify
15888 * @memberof google.protobuf.FileDescriptorSet
15889 * @static
15890 * @param {Object.<string,*>} message Plain object to verify
15891 * @returns {string|null} `null` if valid, otherwise the reason why it is not
15892 */
15893 FileDescriptorSet.verify = function verify(message) {
15894 if (typeof message !== "object" || message === null)
15895 return "object expected";
15896 if (message.file != null && message.hasOwnProperty("file")) {
15897 if (!Array.isArray(message.file))
15898 return "file: array expected";
15899 for (var i = 0; i < message.file.length; ++i) {
15900 var error = $root.google.protobuf.FileDescriptorProto.verify(message.file[i]);
15901 if (error)
15902 return "file." + error;
15903 }
15904 }
15905 return null;
15906 };
15907
15908 /**
15909 * Creates a FileDescriptorSet message from a plain object. Also converts values to their respective internal types.
15910 * @function fromObject
15911 * @memberof google.protobuf.FileDescriptorSet
15912 * @static
15913 * @param {Object.<string,*>} object Plain object
15914 * @returns {google.protobuf.FileDescriptorSet} FileDescriptorSet
15915 */
15916 FileDescriptorSet.fromObject = function fromObject(object) {
15917 if (object instanceof $root.google.protobuf.FileDescriptorSet)
15918 return object;
15919 var message = new $root.google.protobuf.FileDescriptorSet();
15920 if (object.file) {
15921 if (!Array.isArray(object.file))
15922 throw TypeError(".google.protobuf.FileDescriptorSet.file: array expected");
15923 message.file = [];
15924 for (var i = 0; i < object.file.length; ++i) {
15925 if (typeof object.file[i] !== "object")
15926 throw TypeError(".google.protobuf.FileDescriptorSet.file: object expected");
15927 message.file[i] = $root.google.protobuf.FileDescriptorProto.fromObject(object.file[i]);
15928 }
15929 }
15930 return message;
15931 };
15932
15933 /**
15934 * Creates a plain object from a FileDescriptorSet message. Also converts values to other types if specified.
15935 * @function toObject
15936 * @memberof google.protobuf.FileDescriptorSet
15937 * @static
15938 * @param {google.protobuf.FileDescriptorSet} message FileDescriptorSet
15939 * @param {$protobuf.IConversionOptions} [options] Conversion options
15940 * @returns {Object.<string,*>} Plain object
15941 */
15942 FileDescriptorSet.toObject = function toObject(message, options) {
15943 if (!options)
15944 options = {};
15945 var object = {};
15946 if (options.arrays || options.defaults)
15947 object.file = [];
15948 if (message.file && message.file.length) {
15949 object.file = [];
15950 for (var j = 0; j < message.file.length; ++j)
15951 object.file[j] = $root.google.protobuf.FileDescriptorProto.toObject(message.file[j], options);
15952 }
15953 return object;
15954 };
15955
15956 /**
15957 * Converts this FileDescriptorSet to JSON.
15958 * @function toJSON
15959 * @memberof google.protobuf.FileDescriptorSet
15960 * @instance
15961 * @returns {Object.<string,*>} JSON object
15962 */
15963 FileDescriptorSet.prototype.toJSON = function toJSON() {
15964 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
15965 };
15966
15967 return FileDescriptorSet;
15968 })();
15969
15970 protobuf.FileDescriptorProto = (function() {
15971
15972 /**
15973 * Properties of a FileDescriptorProto.
15974 * @memberof google.protobuf
15975 * @interface IFileDescriptorProto
15976 * @property {string|null} [name] FileDescriptorProto name
15977 * @property {string|null} ["package"] FileDescriptorProto package
15978 * @property {Array.<string>|null} [dependency] FileDescriptorProto dependency
15979 * @property {Array.<number>|null} [publicDependency] FileDescriptorProto publicDependency
15980 * @property {Array.<number>|null} [weakDependency] FileDescriptorProto weakDependency
15981 * @property {Array.<google.protobuf.IDescriptorProto>|null} [messageType] FileDescriptorProto messageType
15982 * @property {Array.<google.protobuf.IEnumDescriptorProto>|null} [enumType] FileDescriptorProto enumType
15983 * @property {Array.<google.protobuf.IServiceDescriptorProto>|null} [service] FileDescriptorProto service
15984 * @property {Array.<google.protobuf.IFieldDescriptorProto>|null} [extension] FileDescriptorProto extension
15985 * @property {google.protobuf.IFileOptions|null} [options] FileDescriptorProto options
15986 * @property {google.protobuf.ISourceCodeInfo|null} [sourceCodeInfo] FileDescriptorProto sourceCodeInfo
15987 * @property {string|null} [syntax] FileDescriptorProto syntax
15988 */
15989
15990 /**
15991 * Constructs a new FileDescriptorProto.
15992 * @memberof google.protobuf
15993 * @classdesc Represents a FileDescriptorProto.
15994 * @implements IFileDescriptorProto
15995 * @constructor
15996 * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set
15997 */
15998 function FileDescriptorProto(properties) {
15999 this.dependency = [];
16000 this.publicDependency = [];
16001 this.weakDependency = [];
16002 this.messageType = [];
16003 this.enumType = [];
16004 this.service = [];
16005 this.extension = [];
16006 if (properties)
16007 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
16008 if (properties[keys[i]] != null)
16009 this[keys[i]] = properties[keys[i]];
16010 }
16011
16012 /**
16013 * FileDescriptorProto name.
16014 * @member {string} name
16015 * @memberof google.protobuf.FileDescriptorProto
16016 * @instance
16017 */
16018 FileDescriptorProto.prototype.name = "";
16019
16020 /**
16021 * FileDescriptorProto package.
16022 * @member {string} package
16023 * @memberof google.protobuf.FileDescriptorProto
16024 * @instance
16025 */
16026 FileDescriptorProto.prototype["package"] = "";
16027
16028 /**
16029 * FileDescriptorProto dependency.
16030 * @member {Array.<string>} dependency
16031 * @memberof google.protobuf.FileDescriptorProto
16032 * @instance
16033 */
16034 FileDescriptorProto.prototype.dependency = $util.emptyArray;
16035
16036 /**
16037 * FileDescriptorProto publicDependency.
16038 * @member {Array.<number>} publicDependency
16039 * @memberof google.protobuf.FileDescriptorProto
16040 * @instance
16041 */
16042 FileDescriptorProto.prototype.publicDependency = $util.emptyArray;
16043
16044 /**
16045 * FileDescriptorProto weakDependency.
16046 * @member {Array.<number>} weakDependency
16047 * @memberof google.protobuf.FileDescriptorProto
16048 * @instance
16049 */
16050 FileDescriptorProto.prototype.weakDependency = $util.emptyArray;
16051
16052 /**
16053 * FileDescriptorProto messageType.
16054 * @member {Array.<google.protobuf.IDescriptorProto>} messageType
16055 * @memberof google.protobuf.FileDescriptorProto
16056 * @instance
16057 */
16058 FileDescriptorProto.prototype.messageType = $util.emptyArray;
16059
16060 /**
16061 * FileDescriptorProto enumType.
16062 * @member {Array.<google.protobuf.IEnumDescriptorProto>} enumType
16063 * @memberof google.protobuf.FileDescriptorProto
16064 * @instance
16065 */
16066 FileDescriptorProto.prototype.enumType = $util.emptyArray;
16067
16068 /**
16069 * FileDescriptorProto service.
16070 * @member {Array.<google.protobuf.IServiceDescriptorProto>} service
16071 * @memberof google.protobuf.FileDescriptorProto
16072 * @instance
16073 */
16074 FileDescriptorProto.prototype.service = $util.emptyArray;
16075
16076 /**
16077 * FileDescriptorProto extension.
16078 * @member {Array.<google.protobuf.IFieldDescriptorProto>} extension
16079 * @memberof google.protobuf.FileDescriptorProto
16080 * @instance
16081 */
16082 FileDescriptorProto.prototype.extension = $util.emptyArray;
16083
16084 /**
16085 * FileDescriptorProto options.
16086 * @member {google.protobuf.IFileOptions|null|undefined} options
16087 * @memberof google.protobuf.FileDescriptorProto
16088 * @instance
16089 */
16090 FileDescriptorProto.prototype.options = null;
16091
16092 /**
16093 * FileDescriptorProto sourceCodeInfo.
16094 * @member {google.protobuf.ISourceCodeInfo|null|undefined} sourceCodeInfo
16095 * @memberof google.protobuf.FileDescriptorProto
16096 * @instance
16097 */
16098 FileDescriptorProto.prototype.sourceCodeInfo = null;
16099
16100 /**
16101 * FileDescriptorProto syntax.
16102 * @member {string} syntax
16103 * @memberof google.protobuf.FileDescriptorProto
16104 * @instance
16105 */
16106 FileDescriptorProto.prototype.syntax = "";
16107
16108 /**
16109 * Creates a new FileDescriptorProto instance using the specified properties.
16110 * @function create
16111 * @memberof google.protobuf.FileDescriptorProto
16112 * @static
16113 * @param {google.protobuf.IFileDescriptorProto=} [properties] Properties to set
16114 * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto instance
16115 */
16116 FileDescriptorProto.create = function create(properties) {
16117 return new FileDescriptorProto(properties);
16118 };
16119
16120 /**
16121 * Encodes the specified FileDescriptorProto message. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
16122 * @function encode
16123 * @memberof google.protobuf.FileDescriptorProto
16124 * @static
16125 * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode
16126 * @param {$protobuf.Writer} [writer] Writer to encode to
16127 * @returns {$protobuf.Writer} Writer
16128 */
16129 FileDescriptorProto.encode = function encode(message, writer) {
16130 if (!writer)
16131 writer = $Writer.create();
16132 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
16133 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
16134 if (message["package"] != null && Object.hasOwnProperty.call(message, "package"))
16135 writer.uint32(/* id 2, wireType 2 =*/18).string(message["package"]);
16136 if (message.dependency != null && message.dependency.length)
16137 for (var i = 0; i < message.dependency.length; ++i)
16138 writer.uint32(/* id 3, wireType 2 =*/26).string(message.dependency[i]);
16139 if (message.messageType != null && message.messageType.length)
16140 for (var i = 0; i < message.messageType.length; ++i)
16141 $root.google.protobuf.DescriptorProto.encode(message.messageType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
16142 if (message.enumType != null && message.enumType.length)
16143 for (var i = 0; i < message.enumType.length; ++i)
16144 $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
16145 if (message.service != null && message.service.length)
16146 for (var i = 0; i < message.service.length; ++i)
16147 $root.google.protobuf.ServiceDescriptorProto.encode(message.service[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
16148 if (message.extension != null && message.extension.length)
16149 for (var i = 0; i < message.extension.length; ++i)
16150 $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
16151 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
16152 $root.google.protobuf.FileOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
16153 if (message.sourceCodeInfo != null && Object.hasOwnProperty.call(message, "sourceCodeInfo"))
16154 $root.google.protobuf.SourceCodeInfo.encode(message.sourceCodeInfo, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
16155 if (message.publicDependency != null && message.publicDependency.length)
16156 for (var i = 0; i < message.publicDependency.length; ++i)
16157 writer.uint32(/* id 10, wireType 0 =*/80).int32(message.publicDependency[i]);
16158 if (message.weakDependency != null && message.weakDependency.length)
16159 for (var i = 0; i < message.weakDependency.length; ++i)
16160 writer.uint32(/* id 11, wireType 0 =*/88).int32(message.weakDependency[i]);
16161 if (message.syntax != null && Object.hasOwnProperty.call(message, "syntax"))
16162 writer.uint32(/* id 12, wireType 2 =*/98).string(message.syntax);
16163 return writer;
16164 };
16165
16166 /**
16167 * Encodes the specified FileDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FileDescriptorProto.verify|verify} messages.
16168 * @function encodeDelimited
16169 * @memberof google.protobuf.FileDescriptorProto
16170 * @static
16171 * @param {google.protobuf.IFileDescriptorProto} message FileDescriptorProto message or plain object to encode
16172 * @param {$protobuf.Writer} [writer] Writer to encode to
16173 * @returns {$protobuf.Writer} Writer
16174 */
16175 FileDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) {
16176 return this.encode(message, writer).ldelim();
16177 };
16178
16179 /**
16180 * Decodes a FileDescriptorProto message from the specified reader or buffer.
16181 * @function decode
16182 * @memberof google.protobuf.FileDescriptorProto
16183 * @static
16184 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
16185 * @param {number} [length] Message length if known beforehand
16186 * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto
16187 * @throws {Error} If the payload is not a reader or valid buffer
16188 * @throws {$protobuf.util.ProtocolError} If required fields are missing
16189 */
16190 FileDescriptorProto.decode = function decode(reader, length) {
16191 if (!(reader instanceof $Reader))
16192 reader = $Reader.create(reader);
16193 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileDescriptorProto();
16194 while (reader.pos < end) {
16195 var tag = reader.uint32();
16196 switch (tag >>> 3) {
16197 case 1:
16198 message.name = reader.string();
16199 break;
16200 case 2:
16201 message["package"] = reader.string();
16202 break;
16203 case 3:
16204 if (!(message.dependency && message.dependency.length))
16205 message.dependency = [];
16206 message.dependency.push(reader.string());
16207 break;
16208 case 10:
16209 if (!(message.publicDependency && message.publicDependency.length))
16210 message.publicDependency = [];
16211 if ((tag & 7) === 2) {
16212 var end2 = reader.uint32() + reader.pos;
16213 while (reader.pos < end2)
16214 message.publicDependency.push(reader.int32());
16215 } else
16216 message.publicDependency.push(reader.int32());
16217 break;
16218 case 11:
16219 if (!(message.weakDependency && message.weakDependency.length))
16220 message.weakDependency = [];
16221 if ((tag & 7) === 2) {
16222 var end2 = reader.uint32() + reader.pos;
16223 while (reader.pos < end2)
16224 message.weakDependency.push(reader.int32());
16225 } else
16226 message.weakDependency.push(reader.int32());
16227 break;
16228 case 4:
16229 if (!(message.messageType && message.messageType.length))
16230 message.messageType = [];
16231 message.messageType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32()));
16232 break;
16233 case 5:
16234 if (!(message.enumType && message.enumType.length))
16235 message.enumType = [];
16236 message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32()));
16237 break;
16238 case 6:
16239 if (!(message.service && message.service.length))
16240 message.service = [];
16241 message.service.push($root.google.protobuf.ServiceDescriptorProto.decode(reader, reader.uint32()));
16242 break;
16243 case 7:
16244 if (!(message.extension && message.extension.length))
16245 message.extension = [];
16246 message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32()));
16247 break;
16248 case 8:
16249 message.options = $root.google.protobuf.FileOptions.decode(reader, reader.uint32());
16250 break;
16251 case 9:
16252 message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.decode(reader, reader.uint32());
16253 break;
16254 case 12:
16255 message.syntax = reader.string();
16256 break;
16257 default:
16258 reader.skipType(tag & 7);
16259 break;
16260 }
16261 }
16262 return message;
16263 };
16264
16265 /**
16266 * Decodes a FileDescriptorProto message from the specified reader or buffer, length delimited.
16267 * @function decodeDelimited
16268 * @memberof google.protobuf.FileDescriptorProto
16269 * @static
16270 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
16271 * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto
16272 * @throws {Error} If the payload is not a reader or valid buffer
16273 * @throws {$protobuf.util.ProtocolError} If required fields are missing
16274 */
16275 FileDescriptorProto.decodeDelimited = function decodeDelimited(reader) {
16276 if (!(reader instanceof $Reader))
16277 reader = new $Reader(reader);
16278 return this.decode(reader, reader.uint32());
16279 };
16280
16281 /**
16282 * Verifies a FileDescriptorProto message.
16283 * @function verify
16284 * @memberof google.protobuf.FileDescriptorProto
16285 * @static
16286 * @param {Object.<string,*>} message Plain object to verify
16287 * @returns {string|null} `null` if valid, otherwise the reason why it is not
16288 */
16289 FileDescriptorProto.verify = function verify(message) {
16290 if (typeof message !== "object" || message === null)
16291 return "object expected";
16292 if (message.name != null && message.hasOwnProperty("name"))
16293 if (!$util.isString(message.name))
16294 return "name: string expected";
16295 if (message["package"] != null && message.hasOwnProperty("package"))
16296 if (!$util.isString(message["package"]))
16297 return "package: string expected";
16298 if (message.dependency != null && message.hasOwnProperty("dependency")) {
16299 if (!Array.isArray(message.dependency))
16300 return "dependency: array expected";
16301 for (var i = 0; i < message.dependency.length; ++i)
16302 if (!$util.isString(message.dependency[i]))
16303 return "dependency: string[] expected";
16304 }
16305 if (message.publicDependency != null && message.hasOwnProperty("publicDependency")) {
16306 if (!Array.isArray(message.publicDependency))
16307 return "publicDependency: array expected";
16308 for (var i = 0; i < message.publicDependency.length; ++i)
16309 if (!$util.isInteger(message.publicDependency[i]))
16310 return "publicDependency: integer[] expected";
16311 }
16312 if (message.weakDependency != null && message.hasOwnProperty("weakDependency")) {
16313 if (!Array.isArray(message.weakDependency))
16314 return "weakDependency: array expected";
16315 for (var i = 0; i < message.weakDependency.length; ++i)
16316 if (!$util.isInteger(message.weakDependency[i]))
16317 return "weakDependency: integer[] expected";
16318 }
16319 if (message.messageType != null && message.hasOwnProperty("messageType")) {
16320 if (!Array.isArray(message.messageType))
16321 return "messageType: array expected";
16322 for (var i = 0; i < message.messageType.length; ++i) {
16323 var error = $root.google.protobuf.DescriptorProto.verify(message.messageType[i]);
16324 if (error)
16325 return "messageType." + error;
16326 }
16327 }
16328 if (message.enumType != null && message.hasOwnProperty("enumType")) {
16329 if (!Array.isArray(message.enumType))
16330 return "enumType: array expected";
16331 for (var i = 0; i < message.enumType.length; ++i) {
16332 var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]);
16333 if (error)
16334 return "enumType." + error;
16335 }
16336 }
16337 if (message.service != null && message.hasOwnProperty("service")) {
16338 if (!Array.isArray(message.service))
16339 return "service: array expected";
16340 for (var i = 0; i < message.service.length; ++i) {
16341 var error = $root.google.protobuf.ServiceDescriptorProto.verify(message.service[i]);
16342 if (error)
16343 return "service." + error;
16344 }
16345 }
16346 if (message.extension != null && message.hasOwnProperty("extension")) {
16347 if (!Array.isArray(message.extension))
16348 return "extension: array expected";
16349 for (var i = 0; i < message.extension.length; ++i) {
16350 var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]);
16351 if (error)
16352 return "extension." + error;
16353 }
16354 }
16355 if (message.options != null && message.hasOwnProperty("options")) {
16356 var error = $root.google.protobuf.FileOptions.verify(message.options);
16357 if (error)
16358 return "options." + error;
16359 }
16360 if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo")) {
16361 var error = $root.google.protobuf.SourceCodeInfo.verify(message.sourceCodeInfo);
16362 if (error)
16363 return "sourceCodeInfo." + error;
16364 }
16365 if (message.syntax != null && message.hasOwnProperty("syntax"))
16366 if (!$util.isString(message.syntax))
16367 return "syntax: string expected";
16368 return null;
16369 };
16370
16371 /**
16372 * Creates a FileDescriptorProto message from a plain object. Also converts values to their respective internal types.
16373 * @function fromObject
16374 * @memberof google.protobuf.FileDescriptorProto
16375 * @static
16376 * @param {Object.<string,*>} object Plain object
16377 * @returns {google.protobuf.FileDescriptorProto} FileDescriptorProto
16378 */
16379 FileDescriptorProto.fromObject = function fromObject(object) {
16380 if (object instanceof $root.google.protobuf.FileDescriptorProto)
16381 return object;
16382 var message = new $root.google.protobuf.FileDescriptorProto();
16383 if (object.name != null)
16384 message.name = String(object.name);
16385 if (object["package"] != null)
16386 message["package"] = String(object["package"]);
16387 if (object.dependency) {
16388 if (!Array.isArray(object.dependency))
16389 throw TypeError(".google.protobuf.FileDescriptorProto.dependency: array expected");
16390 message.dependency = [];
16391 for (var i = 0; i < object.dependency.length; ++i)
16392 message.dependency[i] = String(object.dependency[i]);
16393 }
16394 if (object.publicDependency) {
16395 if (!Array.isArray(object.publicDependency))
16396 throw TypeError(".google.protobuf.FileDescriptorProto.publicDependency: array expected");
16397 message.publicDependency = [];
16398 for (var i = 0; i < object.publicDependency.length; ++i)
16399 message.publicDependency[i] = object.publicDependency[i] | 0;
16400 }
16401 if (object.weakDependency) {
16402 if (!Array.isArray(object.weakDependency))
16403 throw TypeError(".google.protobuf.FileDescriptorProto.weakDependency: array expected");
16404 message.weakDependency = [];
16405 for (var i = 0; i < object.weakDependency.length; ++i)
16406 message.weakDependency[i] = object.weakDependency[i] | 0;
16407 }
16408 if (object.messageType) {
16409 if (!Array.isArray(object.messageType))
16410 throw TypeError(".google.protobuf.FileDescriptorProto.messageType: array expected");
16411 message.messageType = [];
16412 for (var i = 0; i < object.messageType.length; ++i) {
16413 if (typeof object.messageType[i] !== "object")
16414 throw TypeError(".google.protobuf.FileDescriptorProto.messageType: object expected");
16415 message.messageType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.messageType[i]);
16416 }
16417 }
16418 if (object.enumType) {
16419 if (!Array.isArray(object.enumType))
16420 throw TypeError(".google.protobuf.FileDescriptorProto.enumType: array expected");
16421 message.enumType = [];
16422 for (var i = 0; i < object.enumType.length; ++i) {
16423 if (typeof object.enumType[i] !== "object")
16424 throw TypeError(".google.protobuf.FileDescriptorProto.enumType: object expected");
16425 message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]);
16426 }
16427 }
16428 if (object.service) {
16429 if (!Array.isArray(object.service))
16430 throw TypeError(".google.protobuf.FileDescriptorProto.service: array expected");
16431 message.service = [];
16432 for (var i = 0; i < object.service.length; ++i) {
16433 if (typeof object.service[i] !== "object")
16434 throw TypeError(".google.protobuf.FileDescriptorProto.service: object expected");
16435 message.service[i] = $root.google.protobuf.ServiceDescriptorProto.fromObject(object.service[i]);
16436 }
16437 }
16438 if (object.extension) {
16439 if (!Array.isArray(object.extension))
16440 throw TypeError(".google.protobuf.FileDescriptorProto.extension: array expected");
16441 message.extension = [];
16442 for (var i = 0; i < object.extension.length; ++i) {
16443 if (typeof object.extension[i] !== "object")
16444 throw TypeError(".google.protobuf.FileDescriptorProto.extension: object expected");
16445 message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]);
16446 }
16447 }
16448 if (object.options != null) {
16449 if (typeof object.options !== "object")
16450 throw TypeError(".google.protobuf.FileDescriptorProto.options: object expected");
16451 message.options = $root.google.protobuf.FileOptions.fromObject(object.options);
16452 }
16453 if (object.sourceCodeInfo != null) {
16454 if (typeof object.sourceCodeInfo !== "object")
16455 throw TypeError(".google.protobuf.FileDescriptorProto.sourceCodeInfo: object expected");
16456 message.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.fromObject(object.sourceCodeInfo);
16457 }
16458 if (object.syntax != null)
16459 message.syntax = String(object.syntax);
16460 return message;
16461 };
16462
16463 /**
16464 * Creates a plain object from a FileDescriptorProto message. Also converts values to other types if specified.
16465 * @function toObject
16466 * @memberof google.protobuf.FileDescriptorProto
16467 * @static
16468 * @param {google.protobuf.FileDescriptorProto} message FileDescriptorProto
16469 * @param {$protobuf.IConversionOptions} [options] Conversion options
16470 * @returns {Object.<string,*>} Plain object
16471 */
16472 FileDescriptorProto.toObject = function toObject(message, options) {
16473 if (!options)
16474 options = {};
16475 var object = {};
16476 if (options.arrays || options.defaults) {
16477 object.dependency = [];
16478 object.messageType = [];
16479 object.enumType = [];
16480 object.service = [];
16481 object.extension = [];
16482 object.publicDependency = [];
16483 object.weakDependency = [];
16484 }
16485 if (options.defaults) {
16486 object.name = "";
16487 object["package"] = "";
16488 object.options = null;
16489 object.sourceCodeInfo = null;
16490 object.syntax = "";
16491 }
16492 if (message.name != null && message.hasOwnProperty("name"))
16493 object.name = message.name;
16494 if (message["package"] != null && message.hasOwnProperty("package"))
16495 object["package"] = message["package"];
16496 if (message.dependency && message.dependency.length) {
16497 object.dependency = [];
16498 for (var j = 0; j < message.dependency.length; ++j)
16499 object.dependency[j] = message.dependency[j];
16500 }
16501 if (message.messageType && message.messageType.length) {
16502 object.messageType = [];
16503 for (var j = 0; j < message.messageType.length; ++j)
16504 object.messageType[j] = $root.google.protobuf.DescriptorProto.toObject(message.messageType[j], options);
16505 }
16506 if (message.enumType && message.enumType.length) {
16507 object.enumType = [];
16508 for (var j = 0; j < message.enumType.length; ++j)
16509 object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options);
16510 }
16511 if (message.service && message.service.length) {
16512 object.service = [];
16513 for (var j = 0; j < message.service.length; ++j)
16514 object.service[j] = $root.google.protobuf.ServiceDescriptorProto.toObject(message.service[j], options);
16515 }
16516 if (message.extension && message.extension.length) {
16517 object.extension = [];
16518 for (var j = 0; j < message.extension.length; ++j)
16519 object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options);
16520 }
16521 if (message.options != null && message.hasOwnProperty("options"))
16522 object.options = $root.google.protobuf.FileOptions.toObject(message.options, options);
16523 if (message.sourceCodeInfo != null && message.hasOwnProperty("sourceCodeInfo"))
16524 object.sourceCodeInfo = $root.google.protobuf.SourceCodeInfo.toObject(message.sourceCodeInfo, options);
16525 if (message.publicDependency && message.publicDependency.length) {
16526 object.publicDependency = [];
16527 for (var j = 0; j < message.publicDependency.length; ++j)
16528 object.publicDependency[j] = message.publicDependency[j];
16529 }
16530 if (message.weakDependency && message.weakDependency.length) {
16531 object.weakDependency = [];
16532 for (var j = 0; j < message.weakDependency.length; ++j)
16533 object.weakDependency[j] = message.weakDependency[j];
16534 }
16535 if (message.syntax != null && message.hasOwnProperty("syntax"))
16536 object.syntax = message.syntax;
16537 return object;
16538 };
16539
16540 /**
16541 * Converts this FileDescriptorProto to JSON.
16542 * @function toJSON
16543 * @memberof google.protobuf.FileDescriptorProto
16544 * @instance
16545 * @returns {Object.<string,*>} JSON object
16546 */
16547 FileDescriptorProto.prototype.toJSON = function toJSON() {
16548 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
16549 };
16550
16551 return FileDescriptorProto;
16552 })();
16553
16554 protobuf.DescriptorProto = (function() {
16555
16556 /**
16557 * Properties of a DescriptorProto.
16558 * @memberof google.protobuf
16559 * @interface IDescriptorProto
16560 * @property {string|null} [name] DescriptorProto name
16561 * @property {Array.<google.protobuf.IFieldDescriptorProto>|null} [field] DescriptorProto field
16562 * @property {Array.<google.protobuf.IFieldDescriptorProto>|null} [extension] DescriptorProto extension
16563 * @property {Array.<google.protobuf.IDescriptorProto>|null} [nestedType] DescriptorProto nestedType
16564 * @property {Array.<google.protobuf.IEnumDescriptorProto>|null} [enumType] DescriptorProto enumType
16565 * @property {Array.<google.protobuf.DescriptorProto.IExtensionRange>|null} [extensionRange] DescriptorProto extensionRange
16566 * @property {Array.<google.protobuf.IOneofDescriptorProto>|null} [oneofDecl] DescriptorProto oneofDecl
16567 * @property {google.protobuf.IMessageOptions|null} [options] DescriptorProto options
16568 * @property {Array.<google.protobuf.DescriptorProto.IReservedRange>|null} [reservedRange] DescriptorProto reservedRange
16569 * @property {Array.<string>|null} [reservedName] DescriptorProto reservedName
16570 */
16571
16572 /**
16573 * Constructs a new DescriptorProto.
16574 * @memberof google.protobuf
16575 * @classdesc Represents a DescriptorProto.
16576 * @implements IDescriptorProto
16577 * @constructor
16578 * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set
16579 */
16580 function DescriptorProto(properties) {
16581 this.field = [];
16582 this.extension = [];
16583 this.nestedType = [];
16584 this.enumType = [];
16585 this.extensionRange = [];
16586 this.oneofDecl = [];
16587 this.reservedRange = [];
16588 this.reservedName = [];
16589 if (properties)
16590 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
16591 if (properties[keys[i]] != null)
16592 this[keys[i]] = properties[keys[i]];
16593 }
16594
16595 /**
16596 * DescriptorProto name.
16597 * @member {string} name
16598 * @memberof google.protobuf.DescriptorProto
16599 * @instance
16600 */
16601 DescriptorProto.prototype.name = "";
16602
16603 /**
16604 * DescriptorProto field.
16605 * @member {Array.<google.protobuf.IFieldDescriptorProto>} field
16606 * @memberof google.protobuf.DescriptorProto
16607 * @instance
16608 */
16609 DescriptorProto.prototype.field = $util.emptyArray;
16610
16611 /**
16612 * DescriptorProto extension.
16613 * @member {Array.<google.protobuf.IFieldDescriptorProto>} extension
16614 * @memberof google.protobuf.DescriptorProto
16615 * @instance
16616 */
16617 DescriptorProto.prototype.extension = $util.emptyArray;
16618
16619 /**
16620 * DescriptorProto nestedType.
16621 * @member {Array.<google.protobuf.IDescriptorProto>} nestedType
16622 * @memberof google.protobuf.DescriptorProto
16623 * @instance
16624 */
16625 DescriptorProto.prototype.nestedType = $util.emptyArray;
16626
16627 /**
16628 * DescriptorProto enumType.
16629 * @member {Array.<google.protobuf.IEnumDescriptorProto>} enumType
16630 * @memberof google.protobuf.DescriptorProto
16631 * @instance
16632 */
16633 DescriptorProto.prototype.enumType = $util.emptyArray;
16634
16635 /**
16636 * DescriptorProto extensionRange.
16637 * @member {Array.<google.protobuf.DescriptorProto.IExtensionRange>} extensionRange
16638 * @memberof google.protobuf.DescriptorProto
16639 * @instance
16640 */
16641 DescriptorProto.prototype.extensionRange = $util.emptyArray;
16642
16643 /**
16644 * DescriptorProto oneofDecl.
16645 * @member {Array.<google.protobuf.IOneofDescriptorProto>} oneofDecl
16646 * @memberof google.protobuf.DescriptorProto
16647 * @instance
16648 */
16649 DescriptorProto.prototype.oneofDecl = $util.emptyArray;
16650
16651 /**
16652 * DescriptorProto options.
16653 * @member {google.protobuf.IMessageOptions|null|undefined} options
16654 * @memberof google.protobuf.DescriptorProto
16655 * @instance
16656 */
16657 DescriptorProto.prototype.options = null;
16658
16659 /**
16660 * DescriptorProto reservedRange.
16661 * @member {Array.<google.protobuf.DescriptorProto.IReservedRange>} reservedRange
16662 * @memberof google.protobuf.DescriptorProto
16663 * @instance
16664 */
16665 DescriptorProto.prototype.reservedRange = $util.emptyArray;
16666
16667 /**
16668 * DescriptorProto reservedName.
16669 * @member {Array.<string>} reservedName
16670 * @memberof google.protobuf.DescriptorProto
16671 * @instance
16672 */
16673 DescriptorProto.prototype.reservedName = $util.emptyArray;
16674
16675 /**
16676 * Creates a new DescriptorProto instance using the specified properties.
16677 * @function create
16678 * @memberof google.protobuf.DescriptorProto
16679 * @static
16680 * @param {google.protobuf.IDescriptorProto=} [properties] Properties to set
16681 * @returns {google.protobuf.DescriptorProto} DescriptorProto instance
16682 */
16683 DescriptorProto.create = function create(properties) {
16684 return new DescriptorProto(properties);
16685 };
16686
16687 /**
16688 * Encodes the specified DescriptorProto message. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
16689 * @function encode
16690 * @memberof google.protobuf.DescriptorProto
16691 * @static
16692 * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode
16693 * @param {$protobuf.Writer} [writer] Writer to encode to
16694 * @returns {$protobuf.Writer} Writer
16695 */
16696 DescriptorProto.encode = function encode(message, writer) {
16697 if (!writer)
16698 writer = $Writer.create();
16699 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
16700 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
16701 if (message.field != null && message.field.length)
16702 for (var i = 0; i < message.field.length; ++i)
16703 $root.google.protobuf.FieldDescriptorProto.encode(message.field[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
16704 if (message.nestedType != null && message.nestedType.length)
16705 for (var i = 0; i < message.nestedType.length; ++i)
16706 $root.google.protobuf.DescriptorProto.encode(message.nestedType[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
16707 if (message.enumType != null && message.enumType.length)
16708 for (var i = 0; i < message.enumType.length; ++i)
16709 $root.google.protobuf.EnumDescriptorProto.encode(message.enumType[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
16710 if (message.extensionRange != null && message.extensionRange.length)
16711 for (var i = 0; i < message.extensionRange.length; ++i)
16712 $root.google.protobuf.DescriptorProto.ExtensionRange.encode(message.extensionRange[i], writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
16713 if (message.extension != null && message.extension.length)
16714 for (var i = 0; i < message.extension.length; ++i)
16715 $root.google.protobuf.FieldDescriptorProto.encode(message.extension[i], writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
16716 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
16717 $root.google.protobuf.MessageOptions.encode(message.options, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim();
16718 if (message.oneofDecl != null && message.oneofDecl.length)
16719 for (var i = 0; i < message.oneofDecl.length; ++i)
16720 $root.google.protobuf.OneofDescriptorProto.encode(message.oneofDecl[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
16721 if (message.reservedRange != null && message.reservedRange.length)
16722 for (var i = 0; i < message.reservedRange.length; ++i)
16723 $root.google.protobuf.DescriptorProto.ReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
16724 if (message.reservedName != null && message.reservedName.length)
16725 for (var i = 0; i < message.reservedName.length; ++i)
16726 writer.uint32(/* id 10, wireType 2 =*/82).string(message.reservedName[i]);
16727 return writer;
16728 };
16729
16730 /**
16731 * Encodes the specified DescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.verify|verify} messages.
16732 * @function encodeDelimited
16733 * @memberof google.protobuf.DescriptorProto
16734 * @static
16735 * @param {google.protobuf.IDescriptorProto} message DescriptorProto message or plain object to encode
16736 * @param {$protobuf.Writer} [writer] Writer to encode to
16737 * @returns {$protobuf.Writer} Writer
16738 */
16739 DescriptorProto.encodeDelimited = function encodeDelimited(message, writer) {
16740 return this.encode(message, writer).ldelim();
16741 };
16742
16743 /**
16744 * Decodes a DescriptorProto message from the specified reader or buffer.
16745 * @function decode
16746 * @memberof google.protobuf.DescriptorProto
16747 * @static
16748 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
16749 * @param {number} [length] Message length if known beforehand
16750 * @returns {google.protobuf.DescriptorProto} DescriptorProto
16751 * @throws {Error} If the payload is not a reader or valid buffer
16752 * @throws {$protobuf.util.ProtocolError} If required fields are missing
16753 */
16754 DescriptorProto.decode = function decode(reader, length) {
16755 if (!(reader instanceof $Reader))
16756 reader = $Reader.create(reader);
16757 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto();
16758 while (reader.pos < end) {
16759 var tag = reader.uint32();
16760 switch (tag >>> 3) {
16761 case 1:
16762 message.name = reader.string();
16763 break;
16764 case 2:
16765 if (!(message.field && message.field.length))
16766 message.field = [];
16767 message.field.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32()));
16768 break;
16769 case 6:
16770 if (!(message.extension && message.extension.length))
16771 message.extension = [];
16772 message.extension.push($root.google.protobuf.FieldDescriptorProto.decode(reader, reader.uint32()));
16773 break;
16774 case 3:
16775 if (!(message.nestedType && message.nestedType.length))
16776 message.nestedType = [];
16777 message.nestedType.push($root.google.protobuf.DescriptorProto.decode(reader, reader.uint32()));
16778 break;
16779 case 4:
16780 if (!(message.enumType && message.enumType.length))
16781 message.enumType = [];
16782 message.enumType.push($root.google.protobuf.EnumDescriptorProto.decode(reader, reader.uint32()));
16783 break;
16784 case 5:
16785 if (!(message.extensionRange && message.extensionRange.length))
16786 message.extensionRange = [];
16787 message.extensionRange.push($root.google.protobuf.DescriptorProto.ExtensionRange.decode(reader, reader.uint32()));
16788 break;
16789 case 8:
16790 if (!(message.oneofDecl && message.oneofDecl.length))
16791 message.oneofDecl = [];
16792 message.oneofDecl.push($root.google.protobuf.OneofDescriptorProto.decode(reader, reader.uint32()));
16793 break;
16794 case 7:
16795 message.options = $root.google.protobuf.MessageOptions.decode(reader, reader.uint32());
16796 break;
16797 case 9:
16798 if (!(message.reservedRange && message.reservedRange.length))
16799 message.reservedRange = [];
16800 message.reservedRange.push($root.google.protobuf.DescriptorProto.ReservedRange.decode(reader, reader.uint32()));
16801 break;
16802 case 10:
16803 if (!(message.reservedName && message.reservedName.length))
16804 message.reservedName = [];
16805 message.reservedName.push(reader.string());
16806 break;
16807 default:
16808 reader.skipType(tag & 7);
16809 break;
16810 }
16811 }
16812 return message;
16813 };
16814
16815 /**
16816 * Decodes a DescriptorProto message from the specified reader or buffer, length delimited.
16817 * @function decodeDelimited
16818 * @memberof google.protobuf.DescriptorProto
16819 * @static
16820 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
16821 * @returns {google.protobuf.DescriptorProto} DescriptorProto
16822 * @throws {Error} If the payload is not a reader or valid buffer
16823 * @throws {$protobuf.util.ProtocolError} If required fields are missing
16824 */
16825 DescriptorProto.decodeDelimited = function decodeDelimited(reader) {
16826 if (!(reader instanceof $Reader))
16827 reader = new $Reader(reader);
16828 return this.decode(reader, reader.uint32());
16829 };
16830
16831 /**
16832 * Verifies a DescriptorProto message.
16833 * @function verify
16834 * @memberof google.protobuf.DescriptorProto
16835 * @static
16836 * @param {Object.<string,*>} message Plain object to verify
16837 * @returns {string|null} `null` if valid, otherwise the reason why it is not
16838 */
16839 DescriptorProto.verify = function verify(message) {
16840 if (typeof message !== "object" || message === null)
16841 return "object expected";
16842 if (message.name != null && message.hasOwnProperty("name"))
16843 if (!$util.isString(message.name))
16844 return "name: string expected";
16845 if (message.field != null && message.hasOwnProperty("field")) {
16846 if (!Array.isArray(message.field))
16847 return "field: array expected";
16848 for (var i = 0; i < message.field.length; ++i) {
16849 var error = $root.google.protobuf.FieldDescriptorProto.verify(message.field[i]);
16850 if (error)
16851 return "field." + error;
16852 }
16853 }
16854 if (message.extension != null && message.hasOwnProperty("extension")) {
16855 if (!Array.isArray(message.extension))
16856 return "extension: array expected";
16857 for (var i = 0; i < message.extension.length; ++i) {
16858 var error = $root.google.protobuf.FieldDescriptorProto.verify(message.extension[i]);
16859 if (error)
16860 return "extension." + error;
16861 }
16862 }
16863 if (message.nestedType != null && message.hasOwnProperty("nestedType")) {
16864 if (!Array.isArray(message.nestedType))
16865 return "nestedType: array expected";
16866 for (var i = 0; i < message.nestedType.length; ++i) {
16867 var error = $root.google.protobuf.DescriptorProto.verify(message.nestedType[i]);
16868 if (error)
16869 return "nestedType." + error;
16870 }
16871 }
16872 if (message.enumType != null && message.hasOwnProperty("enumType")) {
16873 if (!Array.isArray(message.enumType))
16874 return "enumType: array expected";
16875 for (var i = 0; i < message.enumType.length; ++i) {
16876 var error = $root.google.protobuf.EnumDescriptorProto.verify(message.enumType[i]);
16877 if (error)
16878 return "enumType." + error;
16879 }
16880 }
16881 if (message.extensionRange != null && message.hasOwnProperty("extensionRange")) {
16882 if (!Array.isArray(message.extensionRange))
16883 return "extensionRange: array expected";
16884 for (var i = 0; i < message.extensionRange.length; ++i) {
16885 var error = $root.google.protobuf.DescriptorProto.ExtensionRange.verify(message.extensionRange[i]);
16886 if (error)
16887 return "extensionRange." + error;
16888 }
16889 }
16890 if (message.oneofDecl != null && message.hasOwnProperty("oneofDecl")) {
16891 if (!Array.isArray(message.oneofDecl))
16892 return "oneofDecl: array expected";
16893 for (var i = 0; i < message.oneofDecl.length; ++i) {
16894 var error = $root.google.protobuf.OneofDescriptorProto.verify(message.oneofDecl[i]);
16895 if (error)
16896 return "oneofDecl." + error;
16897 }
16898 }
16899 if (message.options != null && message.hasOwnProperty("options")) {
16900 var error = $root.google.protobuf.MessageOptions.verify(message.options);
16901 if (error)
16902 return "options." + error;
16903 }
16904 if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) {
16905 if (!Array.isArray(message.reservedRange))
16906 return "reservedRange: array expected";
16907 for (var i = 0; i < message.reservedRange.length; ++i) {
16908 var error = $root.google.protobuf.DescriptorProto.ReservedRange.verify(message.reservedRange[i]);
16909 if (error)
16910 return "reservedRange." + error;
16911 }
16912 }
16913 if (message.reservedName != null && message.hasOwnProperty("reservedName")) {
16914 if (!Array.isArray(message.reservedName))
16915 return "reservedName: array expected";
16916 for (var i = 0; i < message.reservedName.length; ++i)
16917 if (!$util.isString(message.reservedName[i]))
16918 return "reservedName: string[] expected";
16919 }
16920 return null;
16921 };
16922
16923 /**
16924 * Creates a DescriptorProto message from a plain object. Also converts values to their respective internal types.
16925 * @function fromObject
16926 * @memberof google.protobuf.DescriptorProto
16927 * @static
16928 * @param {Object.<string,*>} object Plain object
16929 * @returns {google.protobuf.DescriptorProto} DescriptorProto
16930 */
16931 DescriptorProto.fromObject = function fromObject(object) {
16932 if (object instanceof $root.google.protobuf.DescriptorProto)
16933 return object;
16934 var message = new $root.google.protobuf.DescriptorProto();
16935 if (object.name != null)
16936 message.name = String(object.name);
16937 if (object.field) {
16938 if (!Array.isArray(object.field))
16939 throw TypeError(".google.protobuf.DescriptorProto.field: array expected");
16940 message.field = [];
16941 for (var i = 0; i < object.field.length; ++i) {
16942 if (typeof object.field[i] !== "object")
16943 throw TypeError(".google.protobuf.DescriptorProto.field: object expected");
16944 message.field[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.field[i]);
16945 }
16946 }
16947 if (object.extension) {
16948 if (!Array.isArray(object.extension))
16949 throw TypeError(".google.protobuf.DescriptorProto.extension: array expected");
16950 message.extension = [];
16951 for (var i = 0; i < object.extension.length; ++i) {
16952 if (typeof object.extension[i] !== "object")
16953 throw TypeError(".google.protobuf.DescriptorProto.extension: object expected");
16954 message.extension[i] = $root.google.protobuf.FieldDescriptorProto.fromObject(object.extension[i]);
16955 }
16956 }
16957 if (object.nestedType) {
16958 if (!Array.isArray(object.nestedType))
16959 throw TypeError(".google.protobuf.DescriptorProto.nestedType: array expected");
16960 message.nestedType = [];
16961 for (var i = 0; i < object.nestedType.length; ++i) {
16962 if (typeof object.nestedType[i] !== "object")
16963 throw TypeError(".google.protobuf.DescriptorProto.nestedType: object expected");
16964 message.nestedType[i] = $root.google.protobuf.DescriptorProto.fromObject(object.nestedType[i]);
16965 }
16966 }
16967 if (object.enumType) {
16968 if (!Array.isArray(object.enumType))
16969 throw TypeError(".google.protobuf.DescriptorProto.enumType: array expected");
16970 message.enumType = [];
16971 for (var i = 0; i < object.enumType.length; ++i) {
16972 if (typeof object.enumType[i] !== "object")
16973 throw TypeError(".google.protobuf.DescriptorProto.enumType: object expected");
16974 message.enumType[i] = $root.google.protobuf.EnumDescriptorProto.fromObject(object.enumType[i]);
16975 }
16976 }
16977 if (object.extensionRange) {
16978 if (!Array.isArray(object.extensionRange))
16979 throw TypeError(".google.protobuf.DescriptorProto.extensionRange: array expected");
16980 message.extensionRange = [];
16981 for (var i = 0; i < object.extensionRange.length; ++i) {
16982 if (typeof object.extensionRange[i] !== "object")
16983 throw TypeError(".google.protobuf.DescriptorProto.extensionRange: object expected");
16984 message.extensionRange[i] = $root.google.protobuf.DescriptorProto.ExtensionRange.fromObject(object.extensionRange[i]);
16985 }
16986 }
16987 if (object.oneofDecl) {
16988 if (!Array.isArray(object.oneofDecl))
16989 throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: array expected");
16990 message.oneofDecl = [];
16991 for (var i = 0; i < object.oneofDecl.length; ++i) {
16992 if (typeof object.oneofDecl[i] !== "object")
16993 throw TypeError(".google.protobuf.DescriptorProto.oneofDecl: object expected");
16994 message.oneofDecl[i] = $root.google.protobuf.OneofDescriptorProto.fromObject(object.oneofDecl[i]);
16995 }
16996 }
16997 if (object.options != null) {
16998 if (typeof object.options !== "object")
16999 throw TypeError(".google.protobuf.DescriptorProto.options: object expected");
17000 message.options = $root.google.protobuf.MessageOptions.fromObject(object.options);
17001 }
17002 if (object.reservedRange) {
17003 if (!Array.isArray(object.reservedRange))
17004 throw TypeError(".google.protobuf.DescriptorProto.reservedRange: array expected");
17005 message.reservedRange = [];
17006 for (var i = 0; i < object.reservedRange.length; ++i) {
17007 if (typeof object.reservedRange[i] !== "object")
17008 throw TypeError(".google.protobuf.DescriptorProto.reservedRange: object expected");
17009 message.reservedRange[i] = $root.google.protobuf.DescriptorProto.ReservedRange.fromObject(object.reservedRange[i]);
17010 }
17011 }
17012 if (object.reservedName) {
17013 if (!Array.isArray(object.reservedName))
17014 throw TypeError(".google.protobuf.DescriptorProto.reservedName: array expected");
17015 message.reservedName = [];
17016 for (var i = 0; i < object.reservedName.length; ++i)
17017 message.reservedName[i] = String(object.reservedName[i]);
17018 }
17019 return message;
17020 };
17021
17022 /**
17023 * Creates a plain object from a DescriptorProto message. Also converts values to other types if specified.
17024 * @function toObject
17025 * @memberof google.protobuf.DescriptorProto
17026 * @static
17027 * @param {google.protobuf.DescriptorProto} message DescriptorProto
17028 * @param {$protobuf.IConversionOptions} [options] Conversion options
17029 * @returns {Object.<string,*>} Plain object
17030 */
17031 DescriptorProto.toObject = function toObject(message, options) {
17032 if (!options)
17033 options = {};
17034 var object = {};
17035 if (options.arrays || options.defaults) {
17036 object.field = [];
17037 object.nestedType = [];
17038 object.enumType = [];
17039 object.extensionRange = [];
17040 object.extension = [];
17041 object.oneofDecl = [];
17042 object.reservedRange = [];
17043 object.reservedName = [];
17044 }
17045 if (options.defaults) {
17046 object.name = "";
17047 object.options = null;
17048 }
17049 if (message.name != null && message.hasOwnProperty("name"))
17050 object.name = message.name;
17051 if (message.field && message.field.length) {
17052 object.field = [];
17053 for (var j = 0; j < message.field.length; ++j)
17054 object.field[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.field[j], options);
17055 }
17056 if (message.nestedType && message.nestedType.length) {
17057 object.nestedType = [];
17058 for (var j = 0; j < message.nestedType.length; ++j)
17059 object.nestedType[j] = $root.google.protobuf.DescriptorProto.toObject(message.nestedType[j], options);
17060 }
17061 if (message.enumType && message.enumType.length) {
17062 object.enumType = [];
17063 for (var j = 0; j < message.enumType.length; ++j)
17064 object.enumType[j] = $root.google.protobuf.EnumDescriptorProto.toObject(message.enumType[j], options);
17065 }
17066 if (message.extensionRange && message.extensionRange.length) {
17067 object.extensionRange = [];
17068 for (var j = 0; j < message.extensionRange.length; ++j)
17069 object.extensionRange[j] = $root.google.protobuf.DescriptorProto.ExtensionRange.toObject(message.extensionRange[j], options);
17070 }
17071 if (message.extension && message.extension.length) {
17072 object.extension = [];
17073 for (var j = 0; j < message.extension.length; ++j)
17074 object.extension[j] = $root.google.protobuf.FieldDescriptorProto.toObject(message.extension[j], options);
17075 }
17076 if (message.options != null && message.hasOwnProperty("options"))
17077 object.options = $root.google.protobuf.MessageOptions.toObject(message.options, options);
17078 if (message.oneofDecl && message.oneofDecl.length) {
17079 object.oneofDecl = [];
17080 for (var j = 0; j < message.oneofDecl.length; ++j)
17081 object.oneofDecl[j] = $root.google.protobuf.OneofDescriptorProto.toObject(message.oneofDecl[j], options);
17082 }
17083 if (message.reservedRange && message.reservedRange.length) {
17084 object.reservedRange = [];
17085 for (var j = 0; j < message.reservedRange.length; ++j)
17086 object.reservedRange[j] = $root.google.protobuf.DescriptorProto.ReservedRange.toObject(message.reservedRange[j], options);
17087 }
17088 if (message.reservedName && message.reservedName.length) {
17089 object.reservedName = [];
17090 for (var j = 0; j < message.reservedName.length; ++j)
17091 object.reservedName[j] = message.reservedName[j];
17092 }
17093 return object;
17094 };
17095
17096 /**
17097 * Converts this DescriptorProto to JSON.
17098 * @function toJSON
17099 * @memberof google.protobuf.DescriptorProto
17100 * @instance
17101 * @returns {Object.<string,*>} JSON object
17102 */
17103 DescriptorProto.prototype.toJSON = function toJSON() {
17104 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
17105 };
17106
17107 DescriptorProto.ExtensionRange = (function() {
17108
17109 /**
17110 * Properties of an ExtensionRange.
17111 * @memberof google.protobuf.DescriptorProto
17112 * @interface IExtensionRange
17113 * @property {number|null} [start] ExtensionRange start
17114 * @property {number|null} [end] ExtensionRange end
17115 * @property {google.protobuf.IExtensionRangeOptions|null} [options] ExtensionRange options
17116 */
17117
17118 /**
17119 * Constructs a new ExtensionRange.
17120 * @memberof google.protobuf.DescriptorProto
17121 * @classdesc Represents an ExtensionRange.
17122 * @implements IExtensionRange
17123 * @constructor
17124 * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set
17125 */
17126 function ExtensionRange(properties) {
17127 if (properties)
17128 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
17129 if (properties[keys[i]] != null)
17130 this[keys[i]] = properties[keys[i]];
17131 }
17132
17133 /**
17134 * ExtensionRange start.
17135 * @member {number} start
17136 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17137 * @instance
17138 */
17139 ExtensionRange.prototype.start = 0;
17140
17141 /**
17142 * ExtensionRange end.
17143 * @member {number} end
17144 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17145 * @instance
17146 */
17147 ExtensionRange.prototype.end = 0;
17148
17149 /**
17150 * ExtensionRange options.
17151 * @member {google.protobuf.IExtensionRangeOptions|null|undefined} options
17152 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17153 * @instance
17154 */
17155 ExtensionRange.prototype.options = null;
17156
17157 /**
17158 * Creates a new ExtensionRange instance using the specified properties.
17159 * @function create
17160 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17161 * @static
17162 * @param {google.protobuf.DescriptorProto.IExtensionRange=} [properties] Properties to set
17163 * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange instance
17164 */
17165 ExtensionRange.create = function create(properties) {
17166 return new ExtensionRange(properties);
17167 };
17168
17169 /**
17170 * Encodes the specified ExtensionRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
17171 * @function encode
17172 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17173 * @static
17174 * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode
17175 * @param {$protobuf.Writer} [writer] Writer to encode to
17176 * @returns {$protobuf.Writer} Writer
17177 */
17178 ExtensionRange.encode = function encode(message, writer) {
17179 if (!writer)
17180 writer = $Writer.create();
17181 if (message.start != null && Object.hasOwnProperty.call(message, "start"))
17182 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start);
17183 if (message.end != null && Object.hasOwnProperty.call(message, "end"))
17184 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end);
17185 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
17186 $root.google.protobuf.ExtensionRangeOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
17187 return writer;
17188 };
17189
17190 /**
17191 * Encodes the specified ExtensionRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ExtensionRange.verify|verify} messages.
17192 * @function encodeDelimited
17193 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17194 * @static
17195 * @param {google.protobuf.DescriptorProto.IExtensionRange} message ExtensionRange message or plain object to encode
17196 * @param {$protobuf.Writer} [writer] Writer to encode to
17197 * @returns {$protobuf.Writer} Writer
17198 */
17199 ExtensionRange.encodeDelimited = function encodeDelimited(message, writer) {
17200 return this.encode(message, writer).ldelim();
17201 };
17202
17203 /**
17204 * Decodes an ExtensionRange message from the specified reader or buffer.
17205 * @function decode
17206 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17207 * @static
17208 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
17209 * @param {number} [length] Message length if known beforehand
17210 * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange
17211 * @throws {Error} If the payload is not a reader or valid buffer
17212 * @throws {$protobuf.util.ProtocolError} If required fields are missing
17213 */
17214 ExtensionRange.decode = function decode(reader, length) {
17215 if (!(reader instanceof $Reader))
17216 reader = $Reader.create(reader);
17217 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ExtensionRange();
17218 while (reader.pos < end) {
17219 var tag = reader.uint32();
17220 switch (tag >>> 3) {
17221 case 1:
17222 message.start = reader.int32();
17223 break;
17224 case 2:
17225 message.end = reader.int32();
17226 break;
17227 case 3:
17228 message.options = $root.google.protobuf.ExtensionRangeOptions.decode(reader, reader.uint32());
17229 break;
17230 default:
17231 reader.skipType(tag & 7);
17232 break;
17233 }
17234 }
17235 return message;
17236 };
17237
17238 /**
17239 * Decodes an ExtensionRange message from the specified reader or buffer, length delimited.
17240 * @function decodeDelimited
17241 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17242 * @static
17243 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
17244 * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange
17245 * @throws {Error} If the payload is not a reader or valid buffer
17246 * @throws {$protobuf.util.ProtocolError} If required fields are missing
17247 */
17248 ExtensionRange.decodeDelimited = function decodeDelimited(reader) {
17249 if (!(reader instanceof $Reader))
17250 reader = new $Reader(reader);
17251 return this.decode(reader, reader.uint32());
17252 };
17253
17254 /**
17255 * Verifies an ExtensionRange message.
17256 * @function verify
17257 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17258 * @static
17259 * @param {Object.<string,*>} message Plain object to verify
17260 * @returns {string|null} `null` if valid, otherwise the reason why it is not
17261 */
17262 ExtensionRange.verify = function verify(message) {
17263 if (typeof message !== "object" || message === null)
17264 return "object expected";
17265 if (message.start != null && message.hasOwnProperty("start"))
17266 if (!$util.isInteger(message.start))
17267 return "start: integer expected";
17268 if (message.end != null && message.hasOwnProperty("end"))
17269 if (!$util.isInteger(message.end))
17270 return "end: integer expected";
17271 if (message.options != null && message.hasOwnProperty("options")) {
17272 var error = $root.google.protobuf.ExtensionRangeOptions.verify(message.options);
17273 if (error)
17274 return "options." + error;
17275 }
17276 return null;
17277 };
17278
17279 /**
17280 * Creates an ExtensionRange message from a plain object. Also converts values to their respective internal types.
17281 * @function fromObject
17282 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17283 * @static
17284 * @param {Object.<string,*>} object Plain object
17285 * @returns {google.protobuf.DescriptorProto.ExtensionRange} ExtensionRange
17286 */
17287 ExtensionRange.fromObject = function fromObject(object) {
17288 if (object instanceof $root.google.protobuf.DescriptorProto.ExtensionRange)
17289 return object;
17290 var message = new $root.google.protobuf.DescriptorProto.ExtensionRange();
17291 if (object.start != null)
17292 message.start = object.start | 0;
17293 if (object.end != null)
17294 message.end = object.end | 0;
17295 if (object.options != null) {
17296 if (typeof object.options !== "object")
17297 throw TypeError(".google.protobuf.DescriptorProto.ExtensionRange.options: object expected");
17298 message.options = $root.google.protobuf.ExtensionRangeOptions.fromObject(object.options);
17299 }
17300 return message;
17301 };
17302
17303 /**
17304 * Creates a plain object from an ExtensionRange message. Also converts values to other types if specified.
17305 * @function toObject
17306 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17307 * @static
17308 * @param {google.protobuf.DescriptorProto.ExtensionRange} message ExtensionRange
17309 * @param {$protobuf.IConversionOptions} [options] Conversion options
17310 * @returns {Object.<string,*>} Plain object
17311 */
17312 ExtensionRange.toObject = function toObject(message, options) {
17313 if (!options)
17314 options = {};
17315 var object = {};
17316 if (options.defaults) {
17317 object.start = 0;
17318 object.end = 0;
17319 object.options = null;
17320 }
17321 if (message.start != null && message.hasOwnProperty("start"))
17322 object.start = message.start;
17323 if (message.end != null && message.hasOwnProperty("end"))
17324 object.end = message.end;
17325 if (message.options != null && message.hasOwnProperty("options"))
17326 object.options = $root.google.protobuf.ExtensionRangeOptions.toObject(message.options, options);
17327 return object;
17328 };
17329
17330 /**
17331 * Converts this ExtensionRange to JSON.
17332 * @function toJSON
17333 * @memberof google.protobuf.DescriptorProto.ExtensionRange
17334 * @instance
17335 * @returns {Object.<string,*>} JSON object
17336 */
17337 ExtensionRange.prototype.toJSON = function toJSON() {
17338 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
17339 };
17340
17341 return ExtensionRange;
17342 })();
17343
17344 DescriptorProto.ReservedRange = (function() {
17345
17346 /**
17347 * Properties of a ReservedRange.
17348 * @memberof google.protobuf.DescriptorProto
17349 * @interface IReservedRange
17350 * @property {number|null} [start] ReservedRange start
17351 * @property {number|null} [end] ReservedRange end
17352 */
17353
17354 /**
17355 * Constructs a new ReservedRange.
17356 * @memberof google.protobuf.DescriptorProto
17357 * @classdesc Represents a ReservedRange.
17358 * @implements IReservedRange
17359 * @constructor
17360 * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set
17361 */
17362 function ReservedRange(properties) {
17363 if (properties)
17364 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
17365 if (properties[keys[i]] != null)
17366 this[keys[i]] = properties[keys[i]];
17367 }
17368
17369 /**
17370 * ReservedRange start.
17371 * @member {number} start
17372 * @memberof google.protobuf.DescriptorProto.ReservedRange
17373 * @instance
17374 */
17375 ReservedRange.prototype.start = 0;
17376
17377 /**
17378 * ReservedRange end.
17379 * @member {number} end
17380 * @memberof google.protobuf.DescriptorProto.ReservedRange
17381 * @instance
17382 */
17383 ReservedRange.prototype.end = 0;
17384
17385 /**
17386 * Creates a new ReservedRange instance using the specified properties.
17387 * @function create
17388 * @memberof google.protobuf.DescriptorProto.ReservedRange
17389 * @static
17390 * @param {google.protobuf.DescriptorProto.IReservedRange=} [properties] Properties to set
17391 * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange instance
17392 */
17393 ReservedRange.create = function create(properties) {
17394 return new ReservedRange(properties);
17395 };
17396
17397 /**
17398 * Encodes the specified ReservedRange message. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
17399 * @function encode
17400 * @memberof google.protobuf.DescriptorProto.ReservedRange
17401 * @static
17402 * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode
17403 * @param {$protobuf.Writer} [writer] Writer to encode to
17404 * @returns {$protobuf.Writer} Writer
17405 */
17406 ReservedRange.encode = function encode(message, writer) {
17407 if (!writer)
17408 writer = $Writer.create();
17409 if (message.start != null && Object.hasOwnProperty.call(message, "start"))
17410 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start);
17411 if (message.end != null && Object.hasOwnProperty.call(message, "end"))
17412 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end);
17413 return writer;
17414 };
17415
17416 /**
17417 * Encodes the specified ReservedRange message, length delimited. Does not implicitly {@link google.protobuf.DescriptorProto.ReservedRange.verify|verify} messages.
17418 * @function encodeDelimited
17419 * @memberof google.protobuf.DescriptorProto.ReservedRange
17420 * @static
17421 * @param {google.protobuf.DescriptorProto.IReservedRange} message ReservedRange message or plain object to encode
17422 * @param {$protobuf.Writer} [writer] Writer to encode to
17423 * @returns {$protobuf.Writer} Writer
17424 */
17425 ReservedRange.encodeDelimited = function encodeDelimited(message, writer) {
17426 return this.encode(message, writer).ldelim();
17427 };
17428
17429 /**
17430 * Decodes a ReservedRange message from the specified reader or buffer.
17431 * @function decode
17432 * @memberof google.protobuf.DescriptorProto.ReservedRange
17433 * @static
17434 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
17435 * @param {number} [length] Message length if known beforehand
17436 * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange
17437 * @throws {Error} If the payload is not a reader or valid buffer
17438 * @throws {$protobuf.util.ProtocolError} If required fields are missing
17439 */
17440 ReservedRange.decode = function decode(reader, length) {
17441 if (!(reader instanceof $Reader))
17442 reader = $Reader.create(reader);
17443 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DescriptorProto.ReservedRange();
17444 while (reader.pos < end) {
17445 var tag = reader.uint32();
17446 switch (tag >>> 3) {
17447 case 1:
17448 message.start = reader.int32();
17449 break;
17450 case 2:
17451 message.end = reader.int32();
17452 break;
17453 default:
17454 reader.skipType(tag & 7);
17455 break;
17456 }
17457 }
17458 return message;
17459 };
17460
17461 /**
17462 * Decodes a ReservedRange message from the specified reader or buffer, length delimited.
17463 * @function decodeDelimited
17464 * @memberof google.protobuf.DescriptorProto.ReservedRange
17465 * @static
17466 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
17467 * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange
17468 * @throws {Error} If the payload is not a reader or valid buffer
17469 * @throws {$protobuf.util.ProtocolError} If required fields are missing
17470 */
17471 ReservedRange.decodeDelimited = function decodeDelimited(reader) {
17472 if (!(reader instanceof $Reader))
17473 reader = new $Reader(reader);
17474 return this.decode(reader, reader.uint32());
17475 };
17476
17477 /**
17478 * Verifies a ReservedRange message.
17479 * @function verify
17480 * @memberof google.protobuf.DescriptorProto.ReservedRange
17481 * @static
17482 * @param {Object.<string,*>} message Plain object to verify
17483 * @returns {string|null} `null` if valid, otherwise the reason why it is not
17484 */
17485 ReservedRange.verify = function verify(message) {
17486 if (typeof message !== "object" || message === null)
17487 return "object expected";
17488 if (message.start != null && message.hasOwnProperty("start"))
17489 if (!$util.isInteger(message.start))
17490 return "start: integer expected";
17491 if (message.end != null && message.hasOwnProperty("end"))
17492 if (!$util.isInteger(message.end))
17493 return "end: integer expected";
17494 return null;
17495 };
17496
17497 /**
17498 * Creates a ReservedRange message from a plain object. Also converts values to their respective internal types.
17499 * @function fromObject
17500 * @memberof google.protobuf.DescriptorProto.ReservedRange
17501 * @static
17502 * @param {Object.<string,*>} object Plain object
17503 * @returns {google.protobuf.DescriptorProto.ReservedRange} ReservedRange
17504 */
17505 ReservedRange.fromObject = function fromObject(object) {
17506 if (object instanceof $root.google.protobuf.DescriptorProto.ReservedRange)
17507 return object;
17508 var message = new $root.google.protobuf.DescriptorProto.ReservedRange();
17509 if (object.start != null)
17510 message.start = object.start | 0;
17511 if (object.end != null)
17512 message.end = object.end | 0;
17513 return message;
17514 };
17515
17516 /**
17517 * Creates a plain object from a ReservedRange message. Also converts values to other types if specified.
17518 * @function toObject
17519 * @memberof google.protobuf.DescriptorProto.ReservedRange
17520 * @static
17521 * @param {google.protobuf.DescriptorProto.ReservedRange} message ReservedRange
17522 * @param {$protobuf.IConversionOptions} [options] Conversion options
17523 * @returns {Object.<string,*>} Plain object
17524 */
17525 ReservedRange.toObject = function toObject(message, options) {
17526 if (!options)
17527 options = {};
17528 var object = {};
17529 if (options.defaults) {
17530 object.start = 0;
17531 object.end = 0;
17532 }
17533 if (message.start != null && message.hasOwnProperty("start"))
17534 object.start = message.start;
17535 if (message.end != null && message.hasOwnProperty("end"))
17536 object.end = message.end;
17537 return object;
17538 };
17539
17540 /**
17541 * Converts this ReservedRange to JSON.
17542 * @function toJSON
17543 * @memberof google.protobuf.DescriptorProto.ReservedRange
17544 * @instance
17545 * @returns {Object.<string,*>} JSON object
17546 */
17547 ReservedRange.prototype.toJSON = function toJSON() {
17548 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
17549 };
17550
17551 return ReservedRange;
17552 })();
17553
17554 return DescriptorProto;
17555 })();
17556
17557 protobuf.ExtensionRangeOptions = (function() {
17558
17559 /**
17560 * Properties of an ExtensionRangeOptions.
17561 * @memberof google.protobuf
17562 * @interface IExtensionRangeOptions
17563 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] ExtensionRangeOptions uninterpretedOption
17564 */
17565
17566 /**
17567 * Constructs a new ExtensionRangeOptions.
17568 * @memberof google.protobuf
17569 * @classdesc Represents an ExtensionRangeOptions.
17570 * @implements IExtensionRangeOptions
17571 * @constructor
17572 * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set
17573 */
17574 function ExtensionRangeOptions(properties) {
17575 this.uninterpretedOption = [];
17576 if (properties)
17577 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
17578 if (properties[keys[i]] != null)
17579 this[keys[i]] = properties[keys[i]];
17580 }
17581
17582 /**
17583 * ExtensionRangeOptions uninterpretedOption.
17584 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
17585 * @memberof google.protobuf.ExtensionRangeOptions
17586 * @instance
17587 */
17588 ExtensionRangeOptions.prototype.uninterpretedOption = $util.emptyArray;
17589
17590 /**
17591 * Creates a new ExtensionRangeOptions instance using the specified properties.
17592 * @function create
17593 * @memberof google.protobuf.ExtensionRangeOptions
17594 * @static
17595 * @param {google.protobuf.IExtensionRangeOptions=} [properties] Properties to set
17596 * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions instance
17597 */
17598 ExtensionRangeOptions.create = function create(properties) {
17599 return new ExtensionRangeOptions(properties);
17600 };
17601
17602 /**
17603 * Encodes the specified ExtensionRangeOptions message. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
17604 * @function encode
17605 * @memberof google.protobuf.ExtensionRangeOptions
17606 * @static
17607 * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode
17608 * @param {$protobuf.Writer} [writer] Writer to encode to
17609 * @returns {$protobuf.Writer} Writer
17610 */
17611 ExtensionRangeOptions.encode = function encode(message, writer) {
17612 if (!writer)
17613 writer = $Writer.create();
17614 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
17615 for (var i = 0; i < message.uninterpretedOption.length; ++i)
17616 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
17617 return writer;
17618 };
17619
17620 /**
17621 * Encodes the specified ExtensionRangeOptions message, length delimited. Does not implicitly {@link google.protobuf.ExtensionRangeOptions.verify|verify} messages.
17622 * @function encodeDelimited
17623 * @memberof google.protobuf.ExtensionRangeOptions
17624 * @static
17625 * @param {google.protobuf.IExtensionRangeOptions} message ExtensionRangeOptions message or plain object to encode
17626 * @param {$protobuf.Writer} [writer] Writer to encode to
17627 * @returns {$protobuf.Writer} Writer
17628 */
17629 ExtensionRangeOptions.encodeDelimited = function encodeDelimited(message, writer) {
17630 return this.encode(message, writer).ldelim();
17631 };
17632
17633 /**
17634 * Decodes an ExtensionRangeOptions message from the specified reader or buffer.
17635 * @function decode
17636 * @memberof google.protobuf.ExtensionRangeOptions
17637 * @static
17638 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
17639 * @param {number} [length] Message length if known beforehand
17640 * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions
17641 * @throws {Error} If the payload is not a reader or valid buffer
17642 * @throws {$protobuf.util.ProtocolError} If required fields are missing
17643 */
17644 ExtensionRangeOptions.decode = function decode(reader, length) {
17645 if (!(reader instanceof $Reader))
17646 reader = $Reader.create(reader);
17647 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ExtensionRangeOptions();
17648 while (reader.pos < end) {
17649 var tag = reader.uint32();
17650 switch (tag >>> 3) {
17651 case 999:
17652 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
17653 message.uninterpretedOption = [];
17654 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
17655 break;
17656 default:
17657 reader.skipType(tag & 7);
17658 break;
17659 }
17660 }
17661 return message;
17662 };
17663
17664 /**
17665 * Decodes an ExtensionRangeOptions message from the specified reader or buffer, length delimited.
17666 * @function decodeDelimited
17667 * @memberof google.protobuf.ExtensionRangeOptions
17668 * @static
17669 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
17670 * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions
17671 * @throws {Error} If the payload is not a reader or valid buffer
17672 * @throws {$protobuf.util.ProtocolError} If required fields are missing
17673 */
17674 ExtensionRangeOptions.decodeDelimited = function decodeDelimited(reader) {
17675 if (!(reader instanceof $Reader))
17676 reader = new $Reader(reader);
17677 return this.decode(reader, reader.uint32());
17678 };
17679
17680 /**
17681 * Verifies an ExtensionRangeOptions message.
17682 * @function verify
17683 * @memberof google.protobuf.ExtensionRangeOptions
17684 * @static
17685 * @param {Object.<string,*>} message Plain object to verify
17686 * @returns {string|null} `null` if valid, otherwise the reason why it is not
17687 */
17688 ExtensionRangeOptions.verify = function verify(message) {
17689 if (typeof message !== "object" || message === null)
17690 return "object expected";
17691 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
17692 if (!Array.isArray(message.uninterpretedOption))
17693 return "uninterpretedOption: array expected";
17694 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
17695 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
17696 if (error)
17697 return "uninterpretedOption." + error;
17698 }
17699 }
17700 return null;
17701 };
17702
17703 /**
17704 * Creates an ExtensionRangeOptions message from a plain object. Also converts values to their respective internal types.
17705 * @function fromObject
17706 * @memberof google.protobuf.ExtensionRangeOptions
17707 * @static
17708 * @param {Object.<string,*>} object Plain object
17709 * @returns {google.protobuf.ExtensionRangeOptions} ExtensionRangeOptions
17710 */
17711 ExtensionRangeOptions.fromObject = function fromObject(object) {
17712 if (object instanceof $root.google.protobuf.ExtensionRangeOptions)
17713 return object;
17714 var message = new $root.google.protobuf.ExtensionRangeOptions();
17715 if (object.uninterpretedOption) {
17716 if (!Array.isArray(object.uninterpretedOption))
17717 throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: array expected");
17718 message.uninterpretedOption = [];
17719 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
17720 if (typeof object.uninterpretedOption[i] !== "object")
17721 throw TypeError(".google.protobuf.ExtensionRangeOptions.uninterpretedOption: object expected");
17722 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
17723 }
17724 }
17725 return message;
17726 };
17727
17728 /**
17729 * Creates a plain object from an ExtensionRangeOptions message. Also converts values to other types if specified.
17730 * @function toObject
17731 * @memberof google.protobuf.ExtensionRangeOptions
17732 * @static
17733 * @param {google.protobuf.ExtensionRangeOptions} message ExtensionRangeOptions
17734 * @param {$protobuf.IConversionOptions} [options] Conversion options
17735 * @returns {Object.<string,*>} Plain object
17736 */
17737 ExtensionRangeOptions.toObject = function toObject(message, options) {
17738 if (!options)
17739 options = {};
17740 var object = {};
17741 if (options.arrays || options.defaults)
17742 object.uninterpretedOption = [];
17743 if (message.uninterpretedOption && message.uninterpretedOption.length) {
17744 object.uninterpretedOption = [];
17745 for (var j = 0; j < message.uninterpretedOption.length; ++j)
17746 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
17747 }
17748 return object;
17749 };
17750
17751 /**
17752 * Converts this ExtensionRangeOptions to JSON.
17753 * @function toJSON
17754 * @memberof google.protobuf.ExtensionRangeOptions
17755 * @instance
17756 * @returns {Object.<string,*>} JSON object
17757 */
17758 ExtensionRangeOptions.prototype.toJSON = function toJSON() {
17759 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
17760 };
17761
17762 return ExtensionRangeOptions;
17763 })();
17764
17765 protobuf.FieldDescriptorProto = (function() {
17766
17767 /**
17768 * Properties of a FieldDescriptorProto.
17769 * @memberof google.protobuf
17770 * @interface IFieldDescriptorProto
17771 * @property {string|null} [name] FieldDescriptorProto name
17772 * @property {number|null} [number] FieldDescriptorProto number
17773 * @property {google.protobuf.FieldDescriptorProto.Label|null} [label] FieldDescriptorProto label
17774 * @property {google.protobuf.FieldDescriptorProto.Type|null} [type] FieldDescriptorProto type
17775 * @property {string|null} [typeName] FieldDescriptorProto typeName
17776 * @property {string|null} [extendee] FieldDescriptorProto extendee
17777 * @property {string|null} [defaultValue] FieldDescriptorProto defaultValue
17778 * @property {number|null} [oneofIndex] FieldDescriptorProto oneofIndex
17779 * @property {string|null} [jsonName] FieldDescriptorProto jsonName
17780 * @property {google.protobuf.IFieldOptions|null} [options] FieldDescriptorProto options
17781 * @property {boolean|null} [proto3Optional] FieldDescriptorProto proto3Optional
17782 */
17783
17784 /**
17785 * Constructs a new FieldDescriptorProto.
17786 * @memberof google.protobuf
17787 * @classdesc Represents a FieldDescriptorProto.
17788 * @implements IFieldDescriptorProto
17789 * @constructor
17790 * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set
17791 */
17792 function FieldDescriptorProto(properties) {
17793 if (properties)
17794 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
17795 if (properties[keys[i]] != null)
17796 this[keys[i]] = properties[keys[i]];
17797 }
17798
17799 /**
17800 * FieldDescriptorProto name.
17801 * @member {string} name
17802 * @memberof google.protobuf.FieldDescriptorProto
17803 * @instance
17804 */
17805 FieldDescriptorProto.prototype.name = "";
17806
17807 /**
17808 * FieldDescriptorProto number.
17809 * @member {number} number
17810 * @memberof google.protobuf.FieldDescriptorProto
17811 * @instance
17812 */
17813 FieldDescriptorProto.prototype.number = 0;
17814
17815 /**
17816 * FieldDescriptorProto label.
17817 * @member {google.protobuf.FieldDescriptorProto.Label} label
17818 * @memberof google.protobuf.FieldDescriptorProto
17819 * @instance
17820 */
17821 FieldDescriptorProto.prototype.label = 1;
17822
17823 /**
17824 * FieldDescriptorProto type.
17825 * @member {google.protobuf.FieldDescriptorProto.Type} type
17826 * @memberof google.protobuf.FieldDescriptorProto
17827 * @instance
17828 */
17829 FieldDescriptorProto.prototype.type = 1;
17830
17831 /**
17832 * FieldDescriptorProto typeName.
17833 * @member {string} typeName
17834 * @memberof google.protobuf.FieldDescriptorProto
17835 * @instance
17836 */
17837 FieldDescriptorProto.prototype.typeName = "";
17838
17839 /**
17840 * FieldDescriptorProto extendee.
17841 * @member {string} extendee
17842 * @memberof google.protobuf.FieldDescriptorProto
17843 * @instance
17844 */
17845 FieldDescriptorProto.prototype.extendee = "";
17846
17847 /**
17848 * FieldDescriptorProto defaultValue.
17849 * @member {string} defaultValue
17850 * @memberof google.protobuf.FieldDescriptorProto
17851 * @instance
17852 */
17853 FieldDescriptorProto.prototype.defaultValue = "";
17854
17855 /**
17856 * FieldDescriptorProto oneofIndex.
17857 * @member {number} oneofIndex
17858 * @memberof google.protobuf.FieldDescriptorProto
17859 * @instance
17860 */
17861 FieldDescriptorProto.prototype.oneofIndex = 0;
17862
17863 /**
17864 * FieldDescriptorProto jsonName.
17865 * @member {string} jsonName
17866 * @memberof google.protobuf.FieldDescriptorProto
17867 * @instance
17868 */
17869 FieldDescriptorProto.prototype.jsonName = "";
17870
17871 /**
17872 * FieldDescriptorProto options.
17873 * @member {google.protobuf.IFieldOptions|null|undefined} options
17874 * @memberof google.protobuf.FieldDescriptorProto
17875 * @instance
17876 */
17877 FieldDescriptorProto.prototype.options = null;
17878
17879 /**
17880 * FieldDescriptorProto proto3Optional.
17881 * @member {boolean} proto3Optional
17882 * @memberof google.protobuf.FieldDescriptorProto
17883 * @instance
17884 */
17885 FieldDescriptorProto.prototype.proto3Optional = false;
17886
17887 /**
17888 * Creates a new FieldDescriptorProto instance using the specified properties.
17889 * @function create
17890 * @memberof google.protobuf.FieldDescriptorProto
17891 * @static
17892 * @param {google.protobuf.IFieldDescriptorProto=} [properties] Properties to set
17893 * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto instance
17894 */
17895 FieldDescriptorProto.create = function create(properties) {
17896 return new FieldDescriptorProto(properties);
17897 };
17898
17899 /**
17900 * Encodes the specified FieldDescriptorProto message. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
17901 * @function encode
17902 * @memberof google.protobuf.FieldDescriptorProto
17903 * @static
17904 * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode
17905 * @param {$protobuf.Writer} [writer] Writer to encode to
17906 * @returns {$protobuf.Writer} Writer
17907 */
17908 FieldDescriptorProto.encode = function encode(message, writer) {
17909 if (!writer)
17910 writer = $Writer.create();
17911 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
17912 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
17913 if (message.extendee != null && Object.hasOwnProperty.call(message, "extendee"))
17914 writer.uint32(/* id 2, wireType 2 =*/18).string(message.extendee);
17915 if (message.number != null && Object.hasOwnProperty.call(message, "number"))
17916 writer.uint32(/* id 3, wireType 0 =*/24).int32(message.number);
17917 if (message.label != null && Object.hasOwnProperty.call(message, "label"))
17918 writer.uint32(/* id 4, wireType 0 =*/32).int32(message.label);
17919 if (message.type != null && Object.hasOwnProperty.call(message, "type"))
17920 writer.uint32(/* id 5, wireType 0 =*/40).int32(message.type);
17921 if (message.typeName != null && Object.hasOwnProperty.call(message, "typeName"))
17922 writer.uint32(/* id 6, wireType 2 =*/50).string(message.typeName);
17923 if (message.defaultValue != null && Object.hasOwnProperty.call(message, "defaultValue"))
17924 writer.uint32(/* id 7, wireType 2 =*/58).string(message.defaultValue);
17925 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
17926 $root.google.protobuf.FieldOptions.encode(message.options, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
17927 if (message.oneofIndex != null && Object.hasOwnProperty.call(message, "oneofIndex"))
17928 writer.uint32(/* id 9, wireType 0 =*/72).int32(message.oneofIndex);
17929 if (message.jsonName != null && Object.hasOwnProperty.call(message, "jsonName"))
17930 writer.uint32(/* id 10, wireType 2 =*/82).string(message.jsonName);
17931 if (message.proto3Optional != null && Object.hasOwnProperty.call(message, "proto3Optional"))
17932 writer.uint32(/* id 17, wireType 0 =*/136).bool(message.proto3Optional);
17933 return writer;
17934 };
17935
17936 /**
17937 * Encodes the specified FieldDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.FieldDescriptorProto.verify|verify} messages.
17938 * @function encodeDelimited
17939 * @memberof google.protobuf.FieldDescriptorProto
17940 * @static
17941 * @param {google.protobuf.IFieldDescriptorProto} message FieldDescriptorProto message or plain object to encode
17942 * @param {$protobuf.Writer} [writer] Writer to encode to
17943 * @returns {$protobuf.Writer} Writer
17944 */
17945 FieldDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) {
17946 return this.encode(message, writer).ldelim();
17947 };
17948
17949 /**
17950 * Decodes a FieldDescriptorProto message from the specified reader or buffer.
17951 * @function decode
17952 * @memberof google.protobuf.FieldDescriptorProto
17953 * @static
17954 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
17955 * @param {number} [length] Message length if known beforehand
17956 * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto
17957 * @throws {Error} If the payload is not a reader or valid buffer
17958 * @throws {$protobuf.util.ProtocolError} If required fields are missing
17959 */
17960 FieldDescriptorProto.decode = function decode(reader, length) {
17961 if (!(reader instanceof $Reader))
17962 reader = $Reader.create(reader);
17963 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldDescriptorProto();
17964 while (reader.pos < end) {
17965 var tag = reader.uint32();
17966 switch (tag >>> 3) {
17967 case 1:
17968 message.name = reader.string();
17969 break;
17970 case 3:
17971 message.number = reader.int32();
17972 break;
17973 case 4:
17974 message.label = reader.int32();
17975 break;
17976 case 5:
17977 message.type = reader.int32();
17978 break;
17979 case 6:
17980 message.typeName = reader.string();
17981 break;
17982 case 2:
17983 message.extendee = reader.string();
17984 break;
17985 case 7:
17986 message.defaultValue = reader.string();
17987 break;
17988 case 9:
17989 message.oneofIndex = reader.int32();
17990 break;
17991 case 10:
17992 message.jsonName = reader.string();
17993 break;
17994 case 8:
17995 message.options = $root.google.protobuf.FieldOptions.decode(reader, reader.uint32());
17996 break;
17997 case 17:
17998 message.proto3Optional = reader.bool();
17999 break;
18000 default:
18001 reader.skipType(tag & 7);
18002 break;
18003 }
18004 }
18005 return message;
18006 };
18007
18008 /**
18009 * Decodes a FieldDescriptorProto message from the specified reader or buffer, length delimited.
18010 * @function decodeDelimited
18011 * @memberof google.protobuf.FieldDescriptorProto
18012 * @static
18013 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
18014 * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto
18015 * @throws {Error} If the payload is not a reader or valid buffer
18016 * @throws {$protobuf.util.ProtocolError} If required fields are missing
18017 */
18018 FieldDescriptorProto.decodeDelimited = function decodeDelimited(reader) {
18019 if (!(reader instanceof $Reader))
18020 reader = new $Reader(reader);
18021 return this.decode(reader, reader.uint32());
18022 };
18023
18024 /**
18025 * Verifies a FieldDescriptorProto message.
18026 * @function verify
18027 * @memberof google.protobuf.FieldDescriptorProto
18028 * @static
18029 * @param {Object.<string,*>} message Plain object to verify
18030 * @returns {string|null} `null` if valid, otherwise the reason why it is not
18031 */
18032 FieldDescriptorProto.verify = function verify(message) {
18033 if (typeof message !== "object" || message === null)
18034 return "object expected";
18035 if (message.name != null && message.hasOwnProperty("name"))
18036 if (!$util.isString(message.name))
18037 return "name: string expected";
18038 if (message.number != null && message.hasOwnProperty("number"))
18039 if (!$util.isInteger(message.number))
18040 return "number: integer expected";
18041 if (message.label != null && message.hasOwnProperty("label"))
18042 switch (message.label) {
18043 default:
18044 return "label: enum value expected";
18045 case 1:
18046 case 2:
18047 case 3:
18048 break;
18049 }
18050 if (message.type != null && message.hasOwnProperty("type"))
18051 switch (message.type) {
18052 default:
18053 return "type: enum value expected";
18054 case 1:
18055 case 2:
18056 case 3:
18057 case 4:
18058 case 5:
18059 case 6:
18060 case 7:
18061 case 8:
18062 case 9:
18063 case 10:
18064 case 11:
18065 case 12:
18066 case 13:
18067 case 14:
18068 case 15:
18069 case 16:
18070 case 17:
18071 case 18:
18072 break;
18073 }
18074 if (message.typeName != null && message.hasOwnProperty("typeName"))
18075 if (!$util.isString(message.typeName))
18076 return "typeName: string expected";
18077 if (message.extendee != null && message.hasOwnProperty("extendee"))
18078 if (!$util.isString(message.extendee))
18079 return "extendee: string expected";
18080 if (message.defaultValue != null && message.hasOwnProperty("defaultValue"))
18081 if (!$util.isString(message.defaultValue))
18082 return "defaultValue: string expected";
18083 if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex"))
18084 if (!$util.isInteger(message.oneofIndex))
18085 return "oneofIndex: integer expected";
18086 if (message.jsonName != null && message.hasOwnProperty("jsonName"))
18087 if (!$util.isString(message.jsonName))
18088 return "jsonName: string expected";
18089 if (message.options != null && message.hasOwnProperty("options")) {
18090 var error = $root.google.protobuf.FieldOptions.verify(message.options);
18091 if (error)
18092 return "options." + error;
18093 }
18094 if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional"))
18095 if (typeof message.proto3Optional !== "boolean")
18096 return "proto3Optional: boolean expected";
18097 return null;
18098 };
18099
18100 /**
18101 * Creates a FieldDescriptorProto message from a plain object. Also converts values to their respective internal types.
18102 * @function fromObject
18103 * @memberof google.protobuf.FieldDescriptorProto
18104 * @static
18105 * @param {Object.<string,*>} object Plain object
18106 * @returns {google.protobuf.FieldDescriptorProto} FieldDescriptorProto
18107 */
18108 FieldDescriptorProto.fromObject = function fromObject(object) {
18109 if (object instanceof $root.google.protobuf.FieldDescriptorProto)
18110 return object;
18111 var message = new $root.google.protobuf.FieldDescriptorProto();
18112 if (object.name != null)
18113 message.name = String(object.name);
18114 if (object.number != null)
18115 message.number = object.number | 0;
18116 switch (object.label) {
18117 case "LABEL_OPTIONAL":
18118 case 1:
18119 message.label = 1;
18120 break;
18121 case "LABEL_REQUIRED":
18122 case 2:
18123 message.label = 2;
18124 break;
18125 case "LABEL_REPEATED":
18126 case 3:
18127 message.label = 3;
18128 break;
18129 }
18130 switch (object.type) {
18131 case "TYPE_DOUBLE":
18132 case 1:
18133 message.type = 1;
18134 break;
18135 case "TYPE_FLOAT":
18136 case 2:
18137 message.type = 2;
18138 break;
18139 case "TYPE_INT64":
18140 case 3:
18141 message.type = 3;
18142 break;
18143 case "TYPE_UINT64":
18144 case 4:
18145 message.type = 4;
18146 break;
18147 case "TYPE_INT32":
18148 case 5:
18149 message.type = 5;
18150 break;
18151 case "TYPE_FIXED64":
18152 case 6:
18153 message.type = 6;
18154 break;
18155 case "TYPE_FIXED32":
18156 case 7:
18157 message.type = 7;
18158 break;
18159 case "TYPE_BOOL":
18160 case 8:
18161 message.type = 8;
18162 break;
18163 case "TYPE_STRING":
18164 case 9:
18165 message.type = 9;
18166 break;
18167 case "TYPE_GROUP":
18168 case 10:
18169 message.type = 10;
18170 break;
18171 case "TYPE_MESSAGE":
18172 case 11:
18173 message.type = 11;
18174 break;
18175 case "TYPE_BYTES":
18176 case 12:
18177 message.type = 12;
18178 break;
18179 case "TYPE_UINT32":
18180 case 13:
18181 message.type = 13;
18182 break;
18183 case "TYPE_ENUM":
18184 case 14:
18185 message.type = 14;
18186 break;
18187 case "TYPE_SFIXED32":
18188 case 15:
18189 message.type = 15;
18190 break;
18191 case "TYPE_SFIXED64":
18192 case 16:
18193 message.type = 16;
18194 break;
18195 case "TYPE_SINT32":
18196 case 17:
18197 message.type = 17;
18198 break;
18199 case "TYPE_SINT64":
18200 case 18:
18201 message.type = 18;
18202 break;
18203 }
18204 if (object.typeName != null)
18205 message.typeName = String(object.typeName);
18206 if (object.extendee != null)
18207 message.extendee = String(object.extendee);
18208 if (object.defaultValue != null)
18209 message.defaultValue = String(object.defaultValue);
18210 if (object.oneofIndex != null)
18211 message.oneofIndex = object.oneofIndex | 0;
18212 if (object.jsonName != null)
18213 message.jsonName = String(object.jsonName);
18214 if (object.options != null) {
18215 if (typeof object.options !== "object")
18216 throw TypeError(".google.protobuf.FieldDescriptorProto.options: object expected");
18217 message.options = $root.google.protobuf.FieldOptions.fromObject(object.options);
18218 }
18219 if (object.proto3Optional != null)
18220 message.proto3Optional = Boolean(object.proto3Optional);
18221 return message;
18222 };
18223
18224 /**
18225 * Creates a plain object from a FieldDescriptorProto message. Also converts values to other types if specified.
18226 * @function toObject
18227 * @memberof google.protobuf.FieldDescriptorProto
18228 * @static
18229 * @param {google.protobuf.FieldDescriptorProto} message FieldDescriptorProto
18230 * @param {$protobuf.IConversionOptions} [options] Conversion options
18231 * @returns {Object.<string,*>} Plain object
18232 */
18233 FieldDescriptorProto.toObject = function toObject(message, options) {
18234 if (!options)
18235 options = {};
18236 var object = {};
18237 if (options.defaults) {
18238 object.name = "";
18239 object.extendee = "";
18240 object.number = 0;
18241 object.label = options.enums === String ? "LABEL_OPTIONAL" : 1;
18242 object.type = options.enums === String ? "TYPE_DOUBLE" : 1;
18243 object.typeName = "";
18244 object.defaultValue = "";
18245 object.options = null;
18246 object.oneofIndex = 0;
18247 object.jsonName = "";
18248 object.proto3Optional = false;
18249 }
18250 if (message.name != null && message.hasOwnProperty("name"))
18251 object.name = message.name;
18252 if (message.extendee != null && message.hasOwnProperty("extendee"))
18253 object.extendee = message.extendee;
18254 if (message.number != null && message.hasOwnProperty("number"))
18255 object.number = message.number;
18256 if (message.label != null && message.hasOwnProperty("label"))
18257 object.label = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Label[message.label] : message.label;
18258 if (message.type != null && message.hasOwnProperty("type"))
18259 object.type = options.enums === String ? $root.google.protobuf.FieldDescriptorProto.Type[message.type] : message.type;
18260 if (message.typeName != null && message.hasOwnProperty("typeName"))
18261 object.typeName = message.typeName;
18262 if (message.defaultValue != null && message.hasOwnProperty("defaultValue"))
18263 object.defaultValue = message.defaultValue;
18264 if (message.options != null && message.hasOwnProperty("options"))
18265 object.options = $root.google.protobuf.FieldOptions.toObject(message.options, options);
18266 if (message.oneofIndex != null && message.hasOwnProperty("oneofIndex"))
18267 object.oneofIndex = message.oneofIndex;
18268 if (message.jsonName != null && message.hasOwnProperty("jsonName"))
18269 object.jsonName = message.jsonName;
18270 if (message.proto3Optional != null && message.hasOwnProperty("proto3Optional"))
18271 object.proto3Optional = message.proto3Optional;
18272 return object;
18273 };
18274
18275 /**
18276 * Converts this FieldDescriptorProto to JSON.
18277 * @function toJSON
18278 * @memberof google.protobuf.FieldDescriptorProto
18279 * @instance
18280 * @returns {Object.<string,*>} JSON object
18281 */
18282 FieldDescriptorProto.prototype.toJSON = function toJSON() {
18283 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
18284 };
18285
18286 /**
18287 * Type enum.
18288 * @name google.protobuf.FieldDescriptorProto.Type
18289 * @enum {number}
18290 * @property {number} TYPE_DOUBLE=1 TYPE_DOUBLE value
18291 * @property {number} TYPE_FLOAT=2 TYPE_FLOAT value
18292 * @property {number} TYPE_INT64=3 TYPE_INT64 value
18293 * @property {number} TYPE_UINT64=4 TYPE_UINT64 value
18294 * @property {number} TYPE_INT32=5 TYPE_INT32 value
18295 * @property {number} TYPE_FIXED64=6 TYPE_FIXED64 value
18296 * @property {number} TYPE_FIXED32=7 TYPE_FIXED32 value
18297 * @property {number} TYPE_BOOL=8 TYPE_BOOL value
18298 * @property {number} TYPE_STRING=9 TYPE_STRING value
18299 * @property {number} TYPE_GROUP=10 TYPE_GROUP value
18300 * @property {number} TYPE_MESSAGE=11 TYPE_MESSAGE value
18301 * @property {number} TYPE_BYTES=12 TYPE_BYTES value
18302 * @property {number} TYPE_UINT32=13 TYPE_UINT32 value
18303 * @property {number} TYPE_ENUM=14 TYPE_ENUM value
18304 * @property {number} TYPE_SFIXED32=15 TYPE_SFIXED32 value
18305 * @property {number} TYPE_SFIXED64=16 TYPE_SFIXED64 value
18306 * @property {number} TYPE_SINT32=17 TYPE_SINT32 value
18307 * @property {number} TYPE_SINT64=18 TYPE_SINT64 value
18308 */
18309 FieldDescriptorProto.Type = (function() {
18310 var valuesById = {}, values = Object.create(valuesById);
18311 values[valuesById[1] = "TYPE_DOUBLE"] = 1;
18312 values[valuesById[2] = "TYPE_FLOAT"] = 2;
18313 values[valuesById[3] = "TYPE_INT64"] = 3;
18314 values[valuesById[4] = "TYPE_UINT64"] = 4;
18315 values[valuesById[5] = "TYPE_INT32"] = 5;
18316 values[valuesById[6] = "TYPE_FIXED64"] = 6;
18317 values[valuesById[7] = "TYPE_FIXED32"] = 7;
18318 values[valuesById[8] = "TYPE_BOOL"] = 8;
18319 values[valuesById[9] = "TYPE_STRING"] = 9;
18320 values[valuesById[10] = "TYPE_GROUP"] = 10;
18321 values[valuesById[11] = "TYPE_MESSAGE"] = 11;
18322 values[valuesById[12] = "TYPE_BYTES"] = 12;
18323 values[valuesById[13] = "TYPE_UINT32"] = 13;
18324 values[valuesById[14] = "TYPE_ENUM"] = 14;
18325 values[valuesById[15] = "TYPE_SFIXED32"] = 15;
18326 values[valuesById[16] = "TYPE_SFIXED64"] = 16;
18327 values[valuesById[17] = "TYPE_SINT32"] = 17;
18328 values[valuesById[18] = "TYPE_SINT64"] = 18;
18329 return values;
18330 })();
18331
18332 /**
18333 * Label enum.
18334 * @name google.protobuf.FieldDescriptorProto.Label
18335 * @enum {number}
18336 * @property {number} LABEL_OPTIONAL=1 LABEL_OPTIONAL value
18337 * @property {number} LABEL_REQUIRED=2 LABEL_REQUIRED value
18338 * @property {number} LABEL_REPEATED=3 LABEL_REPEATED value
18339 */
18340 FieldDescriptorProto.Label = (function() {
18341 var valuesById = {}, values = Object.create(valuesById);
18342 values[valuesById[1] = "LABEL_OPTIONAL"] = 1;
18343 values[valuesById[2] = "LABEL_REQUIRED"] = 2;
18344 values[valuesById[3] = "LABEL_REPEATED"] = 3;
18345 return values;
18346 })();
18347
18348 return FieldDescriptorProto;
18349 })();
18350
18351 protobuf.OneofDescriptorProto = (function() {
18352
18353 /**
18354 * Properties of an OneofDescriptorProto.
18355 * @memberof google.protobuf
18356 * @interface IOneofDescriptorProto
18357 * @property {string|null} [name] OneofDescriptorProto name
18358 * @property {google.protobuf.IOneofOptions|null} [options] OneofDescriptorProto options
18359 */
18360
18361 /**
18362 * Constructs a new OneofDescriptorProto.
18363 * @memberof google.protobuf
18364 * @classdesc Represents an OneofDescriptorProto.
18365 * @implements IOneofDescriptorProto
18366 * @constructor
18367 * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set
18368 */
18369 function OneofDescriptorProto(properties) {
18370 if (properties)
18371 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
18372 if (properties[keys[i]] != null)
18373 this[keys[i]] = properties[keys[i]];
18374 }
18375
18376 /**
18377 * OneofDescriptorProto name.
18378 * @member {string} name
18379 * @memberof google.protobuf.OneofDescriptorProto
18380 * @instance
18381 */
18382 OneofDescriptorProto.prototype.name = "";
18383
18384 /**
18385 * OneofDescriptorProto options.
18386 * @member {google.protobuf.IOneofOptions|null|undefined} options
18387 * @memberof google.protobuf.OneofDescriptorProto
18388 * @instance
18389 */
18390 OneofDescriptorProto.prototype.options = null;
18391
18392 /**
18393 * Creates a new OneofDescriptorProto instance using the specified properties.
18394 * @function create
18395 * @memberof google.protobuf.OneofDescriptorProto
18396 * @static
18397 * @param {google.protobuf.IOneofDescriptorProto=} [properties] Properties to set
18398 * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto instance
18399 */
18400 OneofDescriptorProto.create = function create(properties) {
18401 return new OneofDescriptorProto(properties);
18402 };
18403
18404 /**
18405 * Encodes the specified OneofDescriptorProto message. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
18406 * @function encode
18407 * @memberof google.protobuf.OneofDescriptorProto
18408 * @static
18409 * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode
18410 * @param {$protobuf.Writer} [writer] Writer to encode to
18411 * @returns {$protobuf.Writer} Writer
18412 */
18413 OneofDescriptorProto.encode = function encode(message, writer) {
18414 if (!writer)
18415 writer = $Writer.create();
18416 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
18417 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
18418 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
18419 $root.google.protobuf.OneofOptions.encode(message.options, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
18420 return writer;
18421 };
18422
18423 /**
18424 * Encodes the specified OneofDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.OneofDescriptorProto.verify|verify} messages.
18425 * @function encodeDelimited
18426 * @memberof google.protobuf.OneofDescriptorProto
18427 * @static
18428 * @param {google.protobuf.IOneofDescriptorProto} message OneofDescriptorProto message or plain object to encode
18429 * @param {$protobuf.Writer} [writer] Writer to encode to
18430 * @returns {$protobuf.Writer} Writer
18431 */
18432 OneofDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) {
18433 return this.encode(message, writer).ldelim();
18434 };
18435
18436 /**
18437 * Decodes an OneofDescriptorProto message from the specified reader or buffer.
18438 * @function decode
18439 * @memberof google.protobuf.OneofDescriptorProto
18440 * @static
18441 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
18442 * @param {number} [length] Message length if known beforehand
18443 * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto
18444 * @throws {Error} If the payload is not a reader or valid buffer
18445 * @throws {$protobuf.util.ProtocolError} If required fields are missing
18446 */
18447 OneofDescriptorProto.decode = function decode(reader, length) {
18448 if (!(reader instanceof $Reader))
18449 reader = $Reader.create(reader);
18450 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofDescriptorProto();
18451 while (reader.pos < end) {
18452 var tag = reader.uint32();
18453 switch (tag >>> 3) {
18454 case 1:
18455 message.name = reader.string();
18456 break;
18457 case 2:
18458 message.options = $root.google.protobuf.OneofOptions.decode(reader, reader.uint32());
18459 break;
18460 default:
18461 reader.skipType(tag & 7);
18462 break;
18463 }
18464 }
18465 return message;
18466 };
18467
18468 /**
18469 * Decodes an OneofDescriptorProto message from the specified reader or buffer, length delimited.
18470 * @function decodeDelimited
18471 * @memberof google.protobuf.OneofDescriptorProto
18472 * @static
18473 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
18474 * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto
18475 * @throws {Error} If the payload is not a reader or valid buffer
18476 * @throws {$protobuf.util.ProtocolError} If required fields are missing
18477 */
18478 OneofDescriptorProto.decodeDelimited = function decodeDelimited(reader) {
18479 if (!(reader instanceof $Reader))
18480 reader = new $Reader(reader);
18481 return this.decode(reader, reader.uint32());
18482 };
18483
18484 /**
18485 * Verifies an OneofDescriptorProto message.
18486 * @function verify
18487 * @memberof google.protobuf.OneofDescriptorProto
18488 * @static
18489 * @param {Object.<string,*>} message Plain object to verify
18490 * @returns {string|null} `null` if valid, otherwise the reason why it is not
18491 */
18492 OneofDescriptorProto.verify = function verify(message) {
18493 if (typeof message !== "object" || message === null)
18494 return "object expected";
18495 if (message.name != null && message.hasOwnProperty("name"))
18496 if (!$util.isString(message.name))
18497 return "name: string expected";
18498 if (message.options != null && message.hasOwnProperty("options")) {
18499 var error = $root.google.protobuf.OneofOptions.verify(message.options);
18500 if (error)
18501 return "options." + error;
18502 }
18503 return null;
18504 };
18505
18506 /**
18507 * Creates an OneofDescriptorProto message from a plain object. Also converts values to their respective internal types.
18508 * @function fromObject
18509 * @memberof google.protobuf.OneofDescriptorProto
18510 * @static
18511 * @param {Object.<string,*>} object Plain object
18512 * @returns {google.protobuf.OneofDescriptorProto} OneofDescriptorProto
18513 */
18514 OneofDescriptorProto.fromObject = function fromObject(object) {
18515 if (object instanceof $root.google.protobuf.OneofDescriptorProto)
18516 return object;
18517 var message = new $root.google.protobuf.OneofDescriptorProto();
18518 if (object.name != null)
18519 message.name = String(object.name);
18520 if (object.options != null) {
18521 if (typeof object.options !== "object")
18522 throw TypeError(".google.protobuf.OneofDescriptorProto.options: object expected");
18523 message.options = $root.google.protobuf.OneofOptions.fromObject(object.options);
18524 }
18525 return message;
18526 };
18527
18528 /**
18529 * Creates a plain object from an OneofDescriptorProto message. Also converts values to other types if specified.
18530 * @function toObject
18531 * @memberof google.protobuf.OneofDescriptorProto
18532 * @static
18533 * @param {google.protobuf.OneofDescriptorProto} message OneofDescriptorProto
18534 * @param {$protobuf.IConversionOptions} [options] Conversion options
18535 * @returns {Object.<string,*>} Plain object
18536 */
18537 OneofDescriptorProto.toObject = function toObject(message, options) {
18538 if (!options)
18539 options = {};
18540 var object = {};
18541 if (options.defaults) {
18542 object.name = "";
18543 object.options = null;
18544 }
18545 if (message.name != null && message.hasOwnProperty("name"))
18546 object.name = message.name;
18547 if (message.options != null && message.hasOwnProperty("options"))
18548 object.options = $root.google.protobuf.OneofOptions.toObject(message.options, options);
18549 return object;
18550 };
18551
18552 /**
18553 * Converts this OneofDescriptorProto to JSON.
18554 * @function toJSON
18555 * @memberof google.protobuf.OneofDescriptorProto
18556 * @instance
18557 * @returns {Object.<string,*>} JSON object
18558 */
18559 OneofDescriptorProto.prototype.toJSON = function toJSON() {
18560 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
18561 };
18562
18563 return OneofDescriptorProto;
18564 })();
18565
18566 protobuf.EnumDescriptorProto = (function() {
18567
18568 /**
18569 * Properties of an EnumDescriptorProto.
18570 * @memberof google.protobuf
18571 * @interface IEnumDescriptorProto
18572 * @property {string|null} [name] EnumDescriptorProto name
18573 * @property {Array.<google.protobuf.IEnumValueDescriptorProto>|null} [value] EnumDescriptorProto value
18574 * @property {google.protobuf.IEnumOptions|null} [options] EnumDescriptorProto options
18575 * @property {Array.<google.protobuf.EnumDescriptorProto.IEnumReservedRange>|null} [reservedRange] EnumDescriptorProto reservedRange
18576 * @property {Array.<string>|null} [reservedName] EnumDescriptorProto reservedName
18577 */
18578
18579 /**
18580 * Constructs a new EnumDescriptorProto.
18581 * @memberof google.protobuf
18582 * @classdesc Represents an EnumDescriptorProto.
18583 * @implements IEnumDescriptorProto
18584 * @constructor
18585 * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set
18586 */
18587 function EnumDescriptorProto(properties) {
18588 this.value = [];
18589 this.reservedRange = [];
18590 this.reservedName = [];
18591 if (properties)
18592 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
18593 if (properties[keys[i]] != null)
18594 this[keys[i]] = properties[keys[i]];
18595 }
18596
18597 /**
18598 * EnumDescriptorProto name.
18599 * @member {string} name
18600 * @memberof google.protobuf.EnumDescriptorProto
18601 * @instance
18602 */
18603 EnumDescriptorProto.prototype.name = "";
18604
18605 /**
18606 * EnumDescriptorProto value.
18607 * @member {Array.<google.protobuf.IEnumValueDescriptorProto>} value
18608 * @memberof google.protobuf.EnumDescriptorProto
18609 * @instance
18610 */
18611 EnumDescriptorProto.prototype.value = $util.emptyArray;
18612
18613 /**
18614 * EnumDescriptorProto options.
18615 * @member {google.protobuf.IEnumOptions|null|undefined} options
18616 * @memberof google.protobuf.EnumDescriptorProto
18617 * @instance
18618 */
18619 EnumDescriptorProto.prototype.options = null;
18620
18621 /**
18622 * EnumDescriptorProto reservedRange.
18623 * @member {Array.<google.protobuf.EnumDescriptorProto.IEnumReservedRange>} reservedRange
18624 * @memberof google.protobuf.EnumDescriptorProto
18625 * @instance
18626 */
18627 EnumDescriptorProto.prototype.reservedRange = $util.emptyArray;
18628
18629 /**
18630 * EnumDescriptorProto reservedName.
18631 * @member {Array.<string>} reservedName
18632 * @memberof google.protobuf.EnumDescriptorProto
18633 * @instance
18634 */
18635 EnumDescriptorProto.prototype.reservedName = $util.emptyArray;
18636
18637 /**
18638 * Creates a new EnumDescriptorProto instance using the specified properties.
18639 * @function create
18640 * @memberof google.protobuf.EnumDescriptorProto
18641 * @static
18642 * @param {google.protobuf.IEnumDescriptorProto=} [properties] Properties to set
18643 * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto instance
18644 */
18645 EnumDescriptorProto.create = function create(properties) {
18646 return new EnumDescriptorProto(properties);
18647 };
18648
18649 /**
18650 * Encodes the specified EnumDescriptorProto message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
18651 * @function encode
18652 * @memberof google.protobuf.EnumDescriptorProto
18653 * @static
18654 * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode
18655 * @param {$protobuf.Writer} [writer] Writer to encode to
18656 * @returns {$protobuf.Writer} Writer
18657 */
18658 EnumDescriptorProto.encode = function encode(message, writer) {
18659 if (!writer)
18660 writer = $Writer.create();
18661 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
18662 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
18663 if (message.value != null && message.value.length)
18664 for (var i = 0; i < message.value.length; ++i)
18665 $root.google.protobuf.EnumValueDescriptorProto.encode(message.value[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
18666 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
18667 $root.google.protobuf.EnumOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
18668 if (message.reservedRange != null && message.reservedRange.length)
18669 for (var i = 0; i < message.reservedRange.length; ++i)
18670 $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.encode(message.reservedRange[i], writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
18671 if (message.reservedName != null && message.reservedName.length)
18672 for (var i = 0; i < message.reservedName.length; ++i)
18673 writer.uint32(/* id 5, wireType 2 =*/42).string(message.reservedName[i]);
18674 return writer;
18675 };
18676
18677 /**
18678 * Encodes the specified EnumDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.verify|verify} messages.
18679 * @function encodeDelimited
18680 * @memberof google.protobuf.EnumDescriptorProto
18681 * @static
18682 * @param {google.protobuf.IEnumDescriptorProto} message EnumDescriptorProto message or plain object to encode
18683 * @param {$protobuf.Writer} [writer] Writer to encode to
18684 * @returns {$protobuf.Writer} Writer
18685 */
18686 EnumDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) {
18687 return this.encode(message, writer).ldelim();
18688 };
18689
18690 /**
18691 * Decodes an EnumDescriptorProto message from the specified reader or buffer.
18692 * @function decode
18693 * @memberof google.protobuf.EnumDescriptorProto
18694 * @static
18695 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
18696 * @param {number} [length] Message length if known beforehand
18697 * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto
18698 * @throws {Error} If the payload is not a reader or valid buffer
18699 * @throws {$protobuf.util.ProtocolError} If required fields are missing
18700 */
18701 EnumDescriptorProto.decode = function decode(reader, length) {
18702 if (!(reader instanceof $Reader))
18703 reader = $Reader.create(reader);
18704 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto();
18705 while (reader.pos < end) {
18706 var tag = reader.uint32();
18707 switch (tag >>> 3) {
18708 case 1:
18709 message.name = reader.string();
18710 break;
18711 case 2:
18712 if (!(message.value && message.value.length))
18713 message.value = [];
18714 message.value.push($root.google.protobuf.EnumValueDescriptorProto.decode(reader, reader.uint32()));
18715 break;
18716 case 3:
18717 message.options = $root.google.protobuf.EnumOptions.decode(reader, reader.uint32());
18718 break;
18719 case 4:
18720 if (!(message.reservedRange && message.reservedRange.length))
18721 message.reservedRange = [];
18722 message.reservedRange.push($root.google.protobuf.EnumDescriptorProto.EnumReservedRange.decode(reader, reader.uint32()));
18723 break;
18724 case 5:
18725 if (!(message.reservedName && message.reservedName.length))
18726 message.reservedName = [];
18727 message.reservedName.push(reader.string());
18728 break;
18729 default:
18730 reader.skipType(tag & 7);
18731 break;
18732 }
18733 }
18734 return message;
18735 };
18736
18737 /**
18738 * Decodes an EnumDescriptorProto message from the specified reader or buffer, length delimited.
18739 * @function decodeDelimited
18740 * @memberof google.protobuf.EnumDescriptorProto
18741 * @static
18742 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
18743 * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto
18744 * @throws {Error} If the payload is not a reader or valid buffer
18745 * @throws {$protobuf.util.ProtocolError} If required fields are missing
18746 */
18747 EnumDescriptorProto.decodeDelimited = function decodeDelimited(reader) {
18748 if (!(reader instanceof $Reader))
18749 reader = new $Reader(reader);
18750 return this.decode(reader, reader.uint32());
18751 };
18752
18753 /**
18754 * Verifies an EnumDescriptorProto message.
18755 * @function verify
18756 * @memberof google.protobuf.EnumDescriptorProto
18757 * @static
18758 * @param {Object.<string,*>} message Plain object to verify
18759 * @returns {string|null} `null` if valid, otherwise the reason why it is not
18760 */
18761 EnumDescriptorProto.verify = function verify(message) {
18762 if (typeof message !== "object" || message === null)
18763 return "object expected";
18764 if (message.name != null && message.hasOwnProperty("name"))
18765 if (!$util.isString(message.name))
18766 return "name: string expected";
18767 if (message.value != null && message.hasOwnProperty("value")) {
18768 if (!Array.isArray(message.value))
18769 return "value: array expected";
18770 for (var i = 0; i < message.value.length; ++i) {
18771 var error = $root.google.protobuf.EnumValueDescriptorProto.verify(message.value[i]);
18772 if (error)
18773 return "value." + error;
18774 }
18775 }
18776 if (message.options != null && message.hasOwnProperty("options")) {
18777 var error = $root.google.protobuf.EnumOptions.verify(message.options);
18778 if (error)
18779 return "options." + error;
18780 }
18781 if (message.reservedRange != null && message.hasOwnProperty("reservedRange")) {
18782 if (!Array.isArray(message.reservedRange))
18783 return "reservedRange: array expected";
18784 for (var i = 0; i < message.reservedRange.length; ++i) {
18785 var error = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.verify(message.reservedRange[i]);
18786 if (error)
18787 return "reservedRange." + error;
18788 }
18789 }
18790 if (message.reservedName != null && message.hasOwnProperty("reservedName")) {
18791 if (!Array.isArray(message.reservedName))
18792 return "reservedName: array expected";
18793 for (var i = 0; i < message.reservedName.length; ++i)
18794 if (!$util.isString(message.reservedName[i]))
18795 return "reservedName: string[] expected";
18796 }
18797 return null;
18798 };
18799
18800 /**
18801 * Creates an EnumDescriptorProto message from a plain object. Also converts values to their respective internal types.
18802 * @function fromObject
18803 * @memberof google.protobuf.EnumDescriptorProto
18804 * @static
18805 * @param {Object.<string,*>} object Plain object
18806 * @returns {google.protobuf.EnumDescriptorProto} EnumDescriptorProto
18807 */
18808 EnumDescriptorProto.fromObject = function fromObject(object) {
18809 if (object instanceof $root.google.protobuf.EnumDescriptorProto)
18810 return object;
18811 var message = new $root.google.protobuf.EnumDescriptorProto();
18812 if (object.name != null)
18813 message.name = String(object.name);
18814 if (object.value) {
18815 if (!Array.isArray(object.value))
18816 throw TypeError(".google.protobuf.EnumDescriptorProto.value: array expected");
18817 message.value = [];
18818 for (var i = 0; i < object.value.length; ++i) {
18819 if (typeof object.value[i] !== "object")
18820 throw TypeError(".google.protobuf.EnumDescriptorProto.value: object expected");
18821 message.value[i] = $root.google.protobuf.EnumValueDescriptorProto.fromObject(object.value[i]);
18822 }
18823 }
18824 if (object.options != null) {
18825 if (typeof object.options !== "object")
18826 throw TypeError(".google.protobuf.EnumDescriptorProto.options: object expected");
18827 message.options = $root.google.protobuf.EnumOptions.fromObject(object.options);
18828 }
18829 if (object.reservedRange) {
18830 if (!Array.isArray(object.reservedRange))
18831 throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: array expected");
18832 message.reservedRange = [];
18833 for (var i = 0; i < object.reservedRange.length; ++i) {
18834 if (typeof object.reservedRange[i] !== "object")
18835 throw TypeError(".google.protobuf.EnumDescriptorProto.reservedRange: object expected");
18836 message.reservedRange[i] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.fromObject(object.reservedRange[i]);
18837 }
18838 }
18839 if (object.reservedName) {
18840 if (!Array.isArray(object.reservedName))
18841 throw TypeError(".google.protobuf.EnumDescriptorProto.reservedName: array expected");
18842 message.reservedName = [];
18843 for (var i = 0; i < object.reservedName.length; ++i)
18844 message.reservedName[i] = String(object.reservedName[i]);
18845 }
18846 return message;
18847 };
18848
18849 /**
18850 * Creates a plain object from an EnumDescriptorProto message. Also converts values to other types if specified.
18851 * @function toObject
18852 * @memberof google.protobuf.EnumDescriptorProto
18853 * @static
18854 * @param {google.protobuf.EnumDescriptorProto} message EnumDescriptorProto
18855 * @param {$protobuf.IConversionOptions} [options] Conversion options
18856 * @returns {Object.<string,*>} Plain object
18857 */
18858 EnumDescriptorProto.toObject = function toObject(message, options) {
18859 if (!options)
18860 options = {};
18861 var object = {};
18862 if (options.arrays || options.defaults) {
18863 object.value = [];
18864 object.reservedRange = [];
18865 object.reservedName = [];
18866 }
18867 if (options.defaults) {
18868 object.name = "";
18869 object.options = null;
18870 }
18871 if (message.name != null && message.hasOwnProperty("name"))
18872 object.name = message.name;
18873 if (message.value && message.value.length) {
18874 object.value = [];
18875 for (var j = 0; j < message.value.length; ++j)
18876 object.value[j] = $root.google.protobuf.EnumValueDescriptorProto.toObject(message.value[j], options);
18877 }
18878 if (message.options != null && message.hasOwnProperty("options"))
18879 object.options = $root.google.protobuf.EnumOptions.toObject(message.options, options);
18880 if (message.reservedRange && message.reservedRange.length) {
18881 object.reservedRange = [];
18882 for (var j = 0; j < message.reservedRange.length; ++j)
18883 object.reservedRange[j] = $root.google.protobuf.EnumDescriptorProto.EnumReservedRange.toObject(message.reservedRange[j], options);
18884 }
18885 if (message.reservedName && message.reservedName.length) {
18886 object.reservedName = [];
18887 for (var j = 0; j < message.reservedName.length; ++j)
18888 object.reservedName[j] = message.reservedName[j];
18889 }
18890 return object;
18891 };
18892
18893 /**
18894 * Converts this EnumDescriptorProto to JSON.
18895 * @function toJSON
18896 * @memberof google.protobuf.EnumDescriptorProto
18897 * @instance
18898 * @returns {Object.<string,*>} JSON object
18899 */
18900 EnumDescriptorProto.prototype.toJSON = function toJSON() {
18901 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
18902 };
18903
18904 EnumDescriptorProto.EnumReservedRange = (function() {
18905
18906 /**
18907 * Properties of an EnumReservedRange.
18908 * @memberof google.protobuf.EnumDescriptorProto
18909 * @interface IEnumReservedRange
18910 * @property {number|null} [start] EnumReservedRange start
18911 * @property {number|null} [end] EnumReservedRange end
18912 */
18913
18914 /**
18915 * Constructs a new EnumReservedRange.
18916 * @memberof google.protobuf.EnumDescriptorProto
18917 * @classdesc Represents an EnumReservedRange.
18918 * @implements IEnumReservedRange
18919 * @constructor
18920 * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set
18921 */
18922 function EnumReservedRange(properties) {
18923 if (properties)
18924 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
18925 if (properties[keys[i]] != null)
18926 this[keys[i]] = properties[keys[i]];
18927 }
18928
18929 /**
18930 * EnumReservedRange start.
18931 * @member {number} start
18932 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
18933 * @instance
18934 */
18935 EnumReservedRange.prototype.start = 0;
18936
18937 /**
18938 * EnumReservedRange end.
18939 * @member {number} end
18940 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
18941 * @instance
18942 */
18943 EnumReservedRange.prototype.end = 0;
18944
18945 /**
18946 * Creates a new EnumReservedRange instance using the specified properties.
18947 * @function create
18948 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
18949 * @static
18950 * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange=} [properties] Properties to set
18951 * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange instance
18952 */
18953 EnumReservedRange.create = function create(properties) {
18954 return new EnumReservedRange(properties);
18955 };
18956
18957 /**
18958 * Encodes the specified EnumReservedRange message. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
18959 * @function encode
18960 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
18961 * @static
18962 * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode
18963 * @param {$protobuf.Writer} [writer] Writer to encode to
18964 * @returns {$protobuf.Writer} Writer
18965 */
18966 EnumReservedRange.encode = function encode(message, writer) {
18967 if (!writer)
18968 writer = $Writer.create();
18969 if (message.start != null && Object.hasOwnProperty.call(message, "start"))
18970 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.start);
18971 if (message.end != null && Object.hasOwnProperty.call(message, "end"))
18972 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.end);
18973 return writer;
18974 };
18975
18976 /**
18977 * Encodes the specified EnumReservedRange message, length delimited. Does not implicitly {@link google.protobuf.EnumDescriptorProto.EnumReservedRange.verify|verify} messages.
18978 * @function encodeDelimited
18979 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
18980 * @static
18981 * @param {google.protobuf.EnumDescriptorProto.IEnumReservedRange} message EnumReservedRange message or plain object to encode
18982 * @param {$protobuf.Writer} [writer] Writer to encode to
18983 * @returns {$protobuf.Writer} Writer
18984 */
18985 EnumReservedRange.encodeDelimited = function encodeDelimited(message, writer) {
18986 return this.encode(message, writer).ldelim();
18987 };
18988
18989 /**
18990 * Decodes an EnumReservedRange message from the specified reader or buffer.
18991 * @function decode
18992 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
18993 * @static
18994 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
18995 * @param {number} [length] Message length if known beforehand
18996 * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange
18997 * @throws {Error} If the payload is not a reader or valid buffer
18998 * @throws {$protobuf.util.ProtocolError} If required fields are missing
18999 */
19000 EnumReservedRange.decode = function decode(reader, length) {
19001 if (!(reader instanceof $Reader))
19002 reader = $Reader.create(reader);
19003 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange();
19004 while (reader.pos < end) {
19005 var tag = reader.uint32();
19006 switch (tag >>> 3) {
19007 case 1:
19008 message.start = reader.int32();
19009 break;
19010 case 2:
19011 message.end = reader.int32();
19012 break;
19013 default:
19014 reader.skipType(tag & 7);
19015 break;
19016 }
19017 }
19018 return message;
19019 };
19020
19021 /**
19022 * Decodes an EnumReservedRange message from the specified reader or buffer, length delimited.
19023 * @function decodeDelimited
19024 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
19025 * @static
19026 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19027 * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange
19028 * @throws {Error} If the payload is not a reader or valid buffer
19029 * @throws {$protobuf.util.ProtocolError} If required fields are missing
19030 */
19031 EnumReservedRange.decodeDelimited = function decodeDelimited(reader) {
19032 if (!(reader instanceof $Reader))
19033 reader = new $Reader(reader);
19034 return this.decode(reader, reader.uint32());
19035 };
19036
19037 /**
19038 * Verifies an EnumReservedRange message.
19039 * @function verify
19040 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
19041 * @static
19042 * @param {Object.<string,*>} message Plain object to verify
19043 * @returns {string|null} `null` if valid, otherwise the reason why it is not
19044 */
19045 EnumReservedRange.verify = function verify(message) {
19046 if (typeof message !== "object" || message === null)
19047 return "object expected";
19048 if (message.start != null && message.hasOwnProperty("start"))
19049 if (!$util.isInteger(message.start))
19050 return "start: integer expected";
19051 if (message.end != null && message.hasOwnProperty("end"))
19052 if (!$util.isInteger(message.end))
19053 return "end: integer expected";
19054 return null;
19055 };
19056
19057 /**
19058 * Creates an EnumReservedRange message from a plain object. Also converts values to their respective internal types.
19059 * @function fromObject
19060 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
19061 * @static
19062 * @param {Object.<string,*>} object Plain object
19063 * @returns {google.protobuf.EnumDescriptorProto.EnumReservedRange} EnumReservedRange
19064 */
19065 EnumReservedRange.fromObject = function fromObject(object) {
19066 if (object instanceof $root.google.protobuf.EnumDescriptorProto.EnumReservedRange)
19067 return object;
19068 var message = new $root.google.protobuf.EnumDescriptorProto.EnumReservedRange();
19069 if (object.start != null)
19070 message.start = object.start | 0;
19071 if (object.end != null)
19072 message.end = object.end | 0;
19073 return message;
19074 };
19075
19076 /**
19077 * Creates a plain object from an EnumReservedRange message. Also converts values to other types if specified.
19078 * @function toObject
19079 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
19080 * @static
19081 * @param {google.protobuf.EnumDescriptorProto.EnumReservedRange} message EnumReservedRange
19082 * @param {$protobuf.IConversionOptions} [options] Conversion options
19083 * @returns {Object.<string,*>} Plain object
19084 */
19085 EnumReservedRange.toObject = function toObject(message, options) {
19086 if (!options)
19087 options = {};
19088 var object = {};
19089 if (options.defaults) {
19090 object.start = 0;
19091 object.end = 0;
19092 }
19093 if (message.start != null && message.hasOwnProperty("start"))
19094 object.start = message.start;
19095 if (message.end != null && message.hasOwnProperty("end"))
19096 object.end = message.end;
19097 return object;
19098 };
19099
19100 /**
19101 * Converts this EnumReservedRange to JSON.
19102 * @function toJSON
19103 * @memberof google.protobuf.EnumDescriptorProto.EnumReservedRange
19104 * @instance
19105 * @returns {Object.<string,*>} JSON object
19106 */
19107 EnumReservedRange.prototype.toJSON = function toJSON() {
19108 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
19109 };
19110
19111 return EnumReservedRange;
19112 })();
19113
19114 return EnumDescriptorProto;
19115 })();
19116
19117 protobuf.EnumValueDescriptorProto = (function() {
19118
19119 /**
19120 * Properties of an EnumValueDescriptorProto.
19121 * @memberof google.protobuf
19122 * @interface IEnumValueDescriptorProto
19123 * @property {string|null} [name] EnumValueDescriptorProto name
19124 * @property {number|null} [number] EnumValueDescriptorProto number
19125 * @property {google.protobuf.IEnumValueOptions|null} [options] EnumValueDescriptorProto options
19126 */
19127
19128 /**
19129 * Constructs a new EnumValueDescriptorProto.
19130 * @memberof google.protobuf
19131 * @classdesc Represents an EnumValueDescriptorProto.
19132 * @implements IEnumValueDescriptorProto
19133 * @constructor
19134 * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set
19135 */
19136 function EnumValueDescriptorProto(properties) {
19137 if (properties)
19138 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
19139 if (properties[keys[i]] != null)
19140 this[keys[i]] = properties[keys[i]];
19141 }
19142
19143 /**
19144 * EnumValueDescriptorProto name.
19145 * @member {string} name
19146 * @memberof google.protobuf.EnumValueDescriptorProto
19147 * @instance
19148 */
19149 EnumValueDescriptorProto.prototype.name = "";
19150
19151 /**
19152 * EnumValueDescriptorProto number.
19153 * @member {number} number
19154 * @memberof google.protobuf.EnumValueDescriptorProto
19155 * @instance
19156 */
19157 EnumValueDescriptorProto.prototype.number = 0;
19158
19159 /**
19160 * EnumValueDescriptorProto options.
19161 * @member {google.protobuf.IEnumValueOptions|null|undefined} options
19162 * @memberof google.protobuf.EnumValueDescriptorProto
19163 * @instance
19164 */
19165 EnumValueDescriptorProto.prototype.options = null;
19166
19167 /**
19168 * Creates a new EnumValueDescriptorProto instance using the specified properties.
19169 * @function create
19170 * @memberof google.protobuf.EnumValueDescriptorProto
19171 * @static
19172 * @param {google.protobuf.IEnumValueDescriptorProto=} [properties] Properties to set
19173 * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto instance
19174 */
19175 EnumValueDescriptorProto.create = function create(properties) {
19176 return new EnumValueDescriptorProto(properties);
19177 };
19178
19179 /**
19180 * Encodes the specified EnumValueDescriptorProto message. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
19181 * @function encode
19182 * @memberof google.protobuf.EnumValueDescriptorProto
19183 * @static
19184 * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode
19185 * @param {$protobuf.Writer} [writer] Writer to encode to
19186 * @returns {$protobuf.Writer} Writer
19187 */
19188 EnumValueDescriptorProto.encode = function encode(message, writer) {
19189 if (!writer)
19190 writer = $Writer.create();
19191 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
19192 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
19193 if (message.number != null && Object.hasOwnProperty.call(message, "number"))
19194 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.number);
19195 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
19196 $root.google.protobuf.EnumValueOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
19197 return writer;
19198 };
19199
19200 /**
19201 * Encodes the specified EnumValueDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.EnumValueDescriptorProto.verify|verify} messages.
19202 * @function encodeDelimited
19203 * @memberof google.protobuf.EnumValueDescriptorProto
19204 * @static
19205 * @param {google.protobuf.IEnumValueDescriptorProto} message EnumValueDescriptorProto message or plain object to encode
19206 * @param {$protobuf.Writer} [writer] Writer to encode to
19207 * @returns {$protobuf.Writer} Writer
19208 */
19209 EnumValueDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) {
19210 return this.encode(message, writer).ldelim();
19211 };
19212
19213 /**
19214 * Decodes an EnumValueDescriptorProto message from the specified reader or buffer.
19215 * @function decode
19216 * @memberof google.protobuf.EnumValueDescriptorProto
19217 * @static
19218 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19219 * @param {number} [length] Message length if known beforehand
19220 * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto
19221 * @throws {Error} If the payload is not a reader or valid buffer
19222 * @throws {$protobuf.util.ProtocolError} If required fields are missing
19223 */
19224 EnumValueDescriptorProto.decode = function decode(reader, length) {
19225 if (!(reader instanceof $Reader))
19226 reader = $Reader.create(reader);
19227 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueDescriptorProto();
19228 while (reader.pos < end) {
19229 var tag = reader.uint32();
19230 switch (tag >>> 3) {
19231 case 1:
19232 message.name = reader.string();
19233 break;
19234 case 2:
19235 message.number = reader.int32();
19236 break;
19237 case 3:
19238 message.options = $root.google.protobuf.EnumValueOptions.decode(reader, reader.uint32());
19239 break;
19240 default:
19241 reader.skipType(tag & 7);
19242 break;
19243 }
19244 }
19245 return message;
19246 };
19247
19248 /**
19249 * Decodes an EnumValueDescriptorProto message from the specified reader or buffer, length delimited.
19250 * @function decodeDelimited
19251 * @memberof google.protobuf.EnumValueDescriptorProto
19252 * @static
19253 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19254 * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto
19255 * @throws {Error} If the payload is not a reader or valid buffer
19256 * @throws {$protobuf.util.ProtocolError} If required fields are missing
19257 */
19258 EnumValueDescriptorProto.decodeDelimited = function decodeDelimited(reader) {
19259 if (!(reader instanceof $Reader))
19260 reader = new $Reader(reader);
19261 return this.decode(reader, reader.uint32());
19262 };
19263
19264 /**
19265 * Verifies an EnumValueDescriptorProto message.
19266 * @function verify
19267 * @memberof google.protobuf.EnumValueDescriptorProto
19268 * @static
19269 * @param {Object.<string,*>} message Plain object to verify
19270 * @returns {string|null} `null` if valid, otherwise the reason why it is not
19271 */
19272 EnumValueDescriptorProto.verify = function verify(message) {
19273 if (typeof message !== "object" || message === null)
19274 return "object expected";
19275 if (message.name != null && message.hasOwnProperty("name"))
19276 if (!$util.isString(message.name))
19277 return "name: string expected";
19278 if (message.number != null && message.hasOwnProperty("number"))
19279 if (!$util.isInteger(message.number))
19280 return "number: integer expected";
19281 if (message.options != null && message.hasOwnProperty("options")) {
19282 var error = $root.google.protobuf.EnumValueOptions.verify(message.options);
19283 if (error)
19284 return "options." + error;
19285 }
19286 return null;
19287 };
19288
19289 /**
19290 * Creates an EnumValueDescriptorProto message from a plain object. Also converts values to their respective internal types.
19291 * @function fromObject
19292 * @memberof google.protobuf.EnumValueDescriptorProto
19293 * @static
19294 * @param {Object.<string,*>} object Plain object
19295 * @returns {google.protobuf.EnumValueDescriptorProto} EnumValueDescriptorProto
19296 */
19297 EnumValueDescriptorProto.fromObject = function fromObject(object) {
19298 if (object instanceof $root.google.protobuf.EnumValueDescriptorProto)
19299 return object;
19300 var message = new $root.google.protobuf.EnumValueDescriptorProto();
19301 if (object.name != null)
19302 message.name = String(object.name);
19303 if (object.number != null)
19304 message.number = object.number | 0;
19305 if (object.options != null) {
19306 if (typeof object.options !== "object")
19307 throw TypeError(".google.protobuf.EnumValueDescriptorProto.options: object expected");
19308 message.options = $root.google.protobuf.EnumValueOptions.fromObject(object.options);
19309 }
19310 return message;
19311 };
19312
19313 /**
19314 * Creates a plain object from an EnumValueDescriptorProto message. Also converts values to other types if specified.
19315 * @function toObject
19316 * @memberof google.protobuf.EnumValueDescriptorProto
19317 * @static
19318 * @param {google.protobuf.EnumValueDescriptorProto} message EnumValueDescriptorProto
19319 * @param {$protobuf.IConversionOptions} [options] Conversion options
19320 * @returns {Object.<string,*>} Plain object
19321 */
19322 EnumValueDescriptorProto.toObject = function toObject(message, options) {
19323 if (!options)
19324 options = {};
19325 var object = {};
19326 if (options.defaults) {
19327 object.name = "";
19328 object.number = 0;
19329 object.options = null;
19330 }
19331 if (message.name != null && message.hasOwnProperty("name"))
19332 object.name = message.name;
19333 if (message.number != null && message.hasOwnProperty("number"))
19334 object.number = message.number;
19335 if (message.options != null && message.hasOwnProperty("options"))
19336 object.options = $root.google.protobuf.EnumValueOptions.toObject(message.options, options);
19337 return object;
19338 };
19339
19340 /**
19341 * Converts this EnumValueDescriptorProto to JSON.
19342 * @function toJSON
19343 * @memberof google.protobuf.EnumValueDescriptorProto
19344 * @instance
19345 * @returns {Object.<string,*>} JSON object
19346 */
19347 EnumValueDescriptorProto.prototype.toJSON = function toJSON() {
19348 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
19349 };
19350
19351 return EnumValueDescriptorProto;
19352 })();
19353
19354 protobuf.ServiceDescriptorProto = (function() {
19355
19356 /**
19357 * Properties of a ServiceDescriptorProto.
19358 * @memberof google.protobuf
19359 * @interface IServiceDescriptorProto
19360 * @property {string|null} [name] ServiceDescriptorProto name
19361 * @property {Array.<google.protobuf.IMethodDescriptorProto>|null} [method] ServiceDescriptorProto method
19362 * @property {google.protobuf.IServiceOptions|null} [options] ServiceDescriptorProto options
19363 */
19364
19365 /**
19366 * Constructs a new ServiceDescriptorProto.
19367 * @memberof google.protobuf
19368 * @classdesc Represents a ServiceDescriptorProto.
19369 * @implements IServiceDescriptorProto
19370 * @constructor
19371 * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set
19372 */
19373 function ServiceDescriptorProto(properties) {
19374 this.method = [];
19375 if (properties)
19376 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
19377 if (properties[keys[i]] != null)
19378 this[keys[i]] = properties[keys[i]];
19379 }
19380
19381 /**
19382 * ServiceDescriptorProto name.
19383 * @member {string} name
19384 * @memberof google.protobuf.ServiceDescriptorProto
19385 * @instance
19386 */
19387 ServiceDescriptorProto.prototype.name = "";
19388
19389 /**
19390 * ServiceDescriptorProto method.
19391 * @member {Array.<google.protobuf.IMethodDescriptorProto>} method
19392 * @memberof google.protobuf.ServiceDescriptorProto
19393 * @instance
19394 */
19395 ServiceDescriptorProto.prototype.method = $util.emptyArray;
19396
19397 /**
19398 * ServiceDescriptorProto options.
19399 * @member {google.protobuf.IServiceOptions|null|undefined} options
19400 * @memberof google.protobuf.ServiceDescriptorProto
19401 * @instance
19402 */
19403 ServiceDescriptorProto.prototype.options = null;
19404
19405 /**
19406 * Creates a new ServiceDescriptorProto instance using the specified properties.
19407 * @function create
19408 * @memberof google.protobuf.ServiceDescriptorProto
19409 * @static
19410 * @param {google.protobuf.IServiceDescriptorProto=} [properties] Properties to set
19411 * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto instance
19412 */
19413 ServiceDescriptorProto.create = function create(properties) {
19414 return new ServiceDescriptorProto(properties);
19415 };
19416
19417 /**
19418 * Encodes the specified ServiceDescriptorProto message. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
19419 * @function encode
19420 * @memberof google.protobuf.ServiceDescriptorProto
19421 * @static
19422 * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode
19423 * @param {$protobuf.Writer} [writer] Writer to encode to
19424 * @returns {$protobuf.Writer} Writer
19425 */
19426 ServiceDescriptorProto.encode = function encode(message, writer) {
19427 if (!writer)
19428 writer = $Writer.create();
19429 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
19430 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
19431 if (message.method != null && message.method.length)
19432 for (var i = 0; i < message.method.length; ++i)
19433 $root.google.protobuf.MethodDescriptorProto.encode(message.method[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
19434 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
19435 $root.google.protobuf.ServiceOptions.encode(message.options, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
19436 return writer;
19437 };
19438
19439 /**
19440 * Encodes the specified ServiceDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.ServiceDescriptorProto.verify|verify} messages.
19441 * @function encodeDelimited
19442 * @memberof google.protobuf.ServiceDescriptorProto
19443 * @static
19444 * @param {google.protobuf.IServiceDescriptorProto} message ServiceDescriptorProto message or plain object to encode
19445 * @param {$protobuf.Writer} [writer] Writer to encode to
19446 * @returns {$protobuf.Writer} Writer
19447 */
19448 ServiceDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) {
19449 return this.encode(message, writer).ldelim();
19450 };
19451
19452 /**
19453 * Decodes a ServiceDescriptorProto message from the specified reader or buffer.
19454 * @function decode
19455 * @memberof google.protobuf.ServiceDescriptorProto
19456 * @static
19457 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19458 * @param {number} [length] Message length if known beforehand
19459 * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto
19460 * @throws {Error} If the payload is not a reader or valid buffer
19461 * @throws {$protobuf.util.ProtocolError} If required fields are missing
19462 */
19463 ServiceDescriptorProto.decode = function decode(reader, length) {
19464 if (!(reader instanceof $Reader))
19465 reader = $Reader.create(reader);
19466 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceDescriptorProto();
19467 while (reader.pos < end) {
19468 var tag = reader.uint32();
19469 switch (tag >>> 3) {
19470 case 1:
19471 message.name = reader.string();
19472 break;
19473 case 2:
19474 if (!(message.method && message.method.length))
19475 message.method = [];
19476 message.method.push($root.google.protobuf.MethodDescriptorProto.decode(reader, reader.uint32()));
19477 break;
19478 case 3:
19479 message.options = $root.google.protobuf.ServiceOptions.decode(reader, reader.uint32());
19480 break;
19481 default:
19482 reader.skipType(tag & 7);
19483 break;
19484 }
19485 }
19486 return message;
19487 };
19488
19489 /**
19490 * Decodes a ServiceDescriptorProto message from the specified reader or buffer, length delimited.
19491 * @function decodeDelimited
19492 * @memberof google.protobuf.ServiceDescriptorProto
19493 * @static
19494 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19495 * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto
19496 * @throws {Error} If the payload is not a reader or valid buffer
19497 * @throws {$protobuf.util.ProtocolError} If required fields are missing
19498 */
19499 ServiceDescriptorProto.decodeDelimited = function decodeDelimited(reader) {
19500 if (!(reader instanceof $Reader))
19501 reader = new $Reader(reader);
19502 return this.decode(reader, reader.uint32());
19503 };
19504
19505 /**
19506 * Verifies a ServiceDescriptorProto message.
19507 * @function verify
19508 * @memberof google.protobuf.ServiceDescriptorProto
19509 * @static
19510 * @param {Object.<string,*>} message Plain object to verify
19511 * @returns {string|null} `null` if valid, otherwise the reason why it is not
19512 */
19513 ServiceDescriptorProto.verify = function verify(message) {
19514 if (typeof message !== "object" || message === null)
19515 return "object expected";
19516 if (message.name != null && message.hasOwnProperty("name"))
19517 if (!$util.isString(message.name))
19518 return "name: string expected";
19519 if (message.method != null && message.hasOwnProperty("method")) {
19520 if (!Array.isArray(message.method))
19521 return "method: array expected";
19522 for (var i = 0; i < message.method.length; ++i) {
19523 var error = $root.google.protobuf.MethodDescriptorProto.verify(message.method[i]);
19524 if (error)
19525 return "method." + error;
19526 }
19527 }
19528 if (message.options != null && message.hasOwnProperty("options")) {
19529 var error = $root.google.protobuf.ServiceOptions.verify(message.options);
19530 if (error)
19531 return "options." + error;
19532 }
19533 return null;
19534 };
19535
19536 /**
19537 * Creates a ServiceDescriptorProto message from a plain object. Also converts values to their respective internal types.
19538 * @function fromObject
19539 * @memberof google.protobuf.ServiceDescriptorProto
19540 * @static
19541 * @param {Object.<string,*>} object Plain object
19542 * @returns {google.protobuf.ServiceDescriptorProto} ServiceDescriptorProto
19543 */
19544 ServiceDescriptorProto.fromObject = function fromObject(object) {
19545 if (object instanceof $root.google.protobuf.ServiceDescriptorProto)
19546 return object;
19547 var message = new $root.google.protobuf.ServiceDescriptorProto();
19548 if (object.name != null)
19549 message.name = String(object.name);
19550 if (object.method) {
19551 if (!Array.isArray(object.method))
19552 throw TypeError(".google.protobuf.ServiceDescriptorProto.method: array expected");
19553 message.method = [];
19554 for (var i = 0; i < object.method.length; ++i) {
19555 if (typeof object.method[i] !== "object")
19556 throw TypeError(".google.protobuf.ServiceDescriptorProto.method: object expected");
19557 message.method[i] = $root.google.protobuf.MethodDescriptorProto.fromObject(object.method[i]);
19558 }
19559 }
19560 if (object.options != null) {
19561 if (typeof object.options !== "object")
19562 throw TypeError(".google.protobuf.ServiceDescriptorProto.options: object expected");
19563 message.options = $root.google.protobuf.ServiceOptions.fromObject(object.options);
19564 }
19565 return message;
19566 };
19567
19568 /**
19569 * Creates a plain object from a ServiceDescriptorProto message. Also converts values to other types if specified.
19570 * @function toObject
19571 * @memberof google.protobuf.ServiceDescriptorProto
19572 * @static
19573 * @param {google.protobuf.ServiceDescriptorProto} message ServiceDescriptorProto
19574 * @param {$protobuf.IConversionOptions} [options] Conversion options
19575 * @returns {Object.<string,*>} Plain object
19576 */
19577 ServiceDescriptorProto.toObject = function toObject(message, options) {
19578 if (!options)
19579 options = {};
19580 var object = {};
19581 if (options.arrays || options.defaults)
19582 object.method = [];
19583 if (options.defaults) {
19584 object.name = "";
19585 object.options = null;
19586 }
19587 if (message.name != null && message.hasOwnProperty("name"))
19588 object.name = message.name;
19589 if (message.method && message.method.length) {
19590 object.method = [];
19591 for (var j = 0; j < message.method.length; ++j)
19592 object.method[j] = $root.google.protobuf.MethodDescriptorProto.toObject(message.method[j], options);
19593 }
19594 if (message.options != null && message.hasOwnProperty("options"))
19595 object.options = $root.google.protobuf.ServiceOptions.toObject(message.options, options);
19596 return object;
19597 };
19598
19599 /**
19600 * Converts this ServiceDescriptorProto to JSON.
19601 * @function toJSON
19602 * @memberof google.protobuf.ServiceDescriptorProto
19603 * @instance
19604 * @returns {Object.<string,*>} JSON object
19605 */
19606 ServiceDescriptorProto.prototype.toJSON = function toJSON() {
19607 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
19608 };
19609
19610 return ServiceDescriptorProto;
19611 })();
19612
19613 protobuf.MethodDescriptorProto = (function() {
19614
19615 /**
19616 * Properties of a MethodDescriptorProto.
19617 * @memberof google.protobuf
19618 * @interface IMethodDescriptorProto
19619 * @property {string|null} [name] MethodDescriptorProto name
19620 * @property {string|null} [inputType] MethodDescriptorProto inputType
19621 * @property {string|null} [outputType] MethodDescriptorProto outputType
19622 * @property {google.protobuf.IMethodOptions|null} [options] MethodDescriptorProto options
19623 * @property {boolean|null} [clientStreaming] MethodDescriptorProto clientStreaming
19624 * @property {boolean|null} [serverStreaming] MethodDescriptorProto serverStreaming
19625 */
19626
19627 /**
19628 * Constructs a new MethodDescriptorProto.
19629 * @memberof google.protobuf
19630 * @classdesc Represents a MethodDescriptorProto.
19631 * @implements IMethodDescriptorProto
19632 * @constructor
19633 * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set
19634 */
19635 function MethodDescriptorProto(properties) {
19636 if (properties)
19637 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
19638 if (properties[keys[i]] != null)
19639 this[keys[i]] = properties[keys[i]];
19640 }
19641
19642 /**
19643 * MethodDescriptorProto name.
19644 * @member {string} name
19645 * @memberof google.protobuf.MethodDescriptorProto
19646 * @instance
19647 */
19648 MethodDescriptorProto.prototype.name = "";
19649
19650 /**
19651 * MethodDescriptorProto inputType.
19652 * @member {string} inputType
19653 * @memberof google.protobuf.MethodDescriptorProto
19654 * @instance
19655 */
19656 MethodDescriptorProto.prototype.inputType = "";
19657
19658 /**
19659 * MethodDescriptorProto outputType.
19660 * @member {string} outputType
19661 * @memberof google.protobuf.MethodDescriptorProto
19662 * @instance
19663 */
19664 MethodDescriptorProto.prototype.outputType = "";
19665
19666 /**
19667 * MethodDescriptorProto options.
19668 * @member {google.protobuf.IMethodOptions|null|undefined} options
19669 * @memberof google.protobuf.MethodDescriptorProto
19670 * @instance
19671 */
19672 MethodDescriptorProto.prototype.options = null;
19673
19674 /**
19675 * MethodDescriptorProto clientStreaming.
19676 * @member {boolean} clientStreaming
19677 * @memberof google.protobuf.MethodDescriptorProto
19678 * @instance
19679 */
19680 MethodDescriptorProto.prototype.clientStreaming = false;
19681
19682 /**
19683 * MethodDescriptorProto serverStreaming.
19684 * @member {boolean} serverStreaming
19685 * @memberof google.protobuf.MethodDescriptorProto
19686 * @instance
19687 */
19688 MethodDescriptorProto.prototype.serverStreaming = false;
19689
19690 /**
19691 * Creates a new MethodDescriptorProto instance using the specified properties.
19692 * @function create
19693 * @memberof google.protobuf.MethodDescriptorProto
19694 * @static
19695 * @param {google.protobuf.IMethodDescriptorProto=} [properties] Properties to set
19696 * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto instance
19697 */
19698 MethodDescriptorProto.create = function create(properties) {
19699 return new MethodDescriptorProto(properties);
19700 };
19701
19702 /**
19703 * Encodes the specified MethodDescriptorProto message. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
19704 * @function encode
19705 * @memberof google.protobuf.MethodDescriptorProto
19706 * @static
19707 * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode
19708 * @param {$protobuf.Writer} [writer] Writer to encode to
19709 * @returns {$protobuf.Writer} Writer
19710 */
19711 MethodDescriptorProto.encode = function encode(message, writer) {
19712 if (!writer)
19713 writer = $Writer.create();
19714 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
19715 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
19716 if (message.inputType != null && Object.hasOwnProperty.call(message, "inputType"))
19717 writer.uint32(/* id 2, wireType 2 =*/18).string(message.inputType);
19718 if (message.outputType != null && Object.hasOwnProperty.call(message, "outputType"))
19719 writer.uint32(/* id 3, wireType 2 =*/26).string(message.outputType);
19720 if (message.options != null && Object.hasOwnProperty.call(message, "options"))
19721 $root.google.protobuf.MethodOptions.encode(message.options, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
19722 if (message.clientStreaming != null && Object.hasOwnProperty.call(message, "clientStreaming"))
19723 writer.uint32(/* id 5, wireType 0 =*/40).bool(message.clientStreaming);
19724 if (message.serverStreaming != null && Object.hasOwnProperty.call(message, "serverStreaming"))
19725 writer.uint32(/* id 6, wireType 0 =*/48).bool(message.serverStreaming);
19726 return writer;
19727 };
19728
19729 /**
19730 * Encodes the specified MethodDescriptorProto message, length delimited. Does not implicitly {@link google.protobuf.MethodDescriptorProto.verify|verify} messages.
19731 * @function encodeDelimited
19732 * @memberof google.protobuf.MethodDescriptorProto
19733 * @static
19734 * @param {google.protobuf.IMethodDescriptorProto} message MethodDescriptorProto message or plain object to encode
19735 * @param {$protobuf.Writer} [writer] Writer to encode to
19736 * @returns {$protobuf.Writer} Writer
19737 */
19738 MethodDescriptorProto.encodeDelimited = function encodeDelimited(message, writer) {
19739 return this.encode(message, writer).ldelim();
19740 };
19741
19742 /**
19743 * Decodes a MethodDescriptorProto message from the specified reader or buffer.
19744 * @function decode
19745 * @memberof google.protobuf.MethodDescriptorProto
19746 * @static
19747 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19748 * @param {number} [length] Message length if known beforehand
19749 * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto
19750 * @throws {Error} If the payload is not a reader or valid buffer
19751 * @throws {$protobuf.util.ProtocolError} If required fields are missing
19752 */
19753 MethodDescriptorProto.decode = function decode(reader, length) {
19754 if (!(reader instanceof $Reader))
19755 reader = $Reader.create(reader);
19756 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodDescriptorProto();
19757 while (reader.pos < end) {
19758 var tag = reader.uint32();
19759 switch (tag >>> 3) {
19760 case 1:
19761 message.name = reader.string();
19762 break;
19763 case 2:
19764 message.inputType = reader.string();
19765 break;
19766 case 3:
19767 message.outputType = reader.string();
19768 break;
19769 case 4:
19770 message.options = $root.google.protobuf.MethodOptions.decode(reader, reader.uint32());
19771 break;
19772 case 5:
19773 message.clientStreaming = reader.bool();
19774 break;
19775 case 6:
19776 message.serverStreaming = reader.bool();
19777 break;
19778 default:
19779 reader.skipType(tag & 7);
19780 break;
19781 }
19782 }
19783 return message;
19784 };
19785
19786 /**
19787 * Decodes a MethodDescriptorProto message from the specified reader or buffer, length delimited.
19788 * @function decodeDelimited
19789 * @memberof google.protobuf.MethodDescriptorProto
19790 * @static
19791 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
19792 * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto
19793 * @throws {Error} If the payload is not a reader or valid buffer
19794 * @throws {$protobuf.util.ProtocolError} If required fields are missing
19795 */
19796 MethodDescriptorProto.decodeDelimited = function decodeDelimited(reader) {
19797 if (!(reader instanceof $Reader))
19798 reader = new $Reader(reader);
19799 return this.decode(reader, reader.uint32());
19800 };
19801
19802 /**
19803 * Verifies a MethodDescriptorProto message.
19804 * @function verify
19805 * @memberof google.protobuf.MethodDescriptorProto
19806 * @static
19807 * @param {Object.<string,*>} message Plain object to verify
19808 * @returns {string|null} `null` if valid, otherwise the reason why it is not
19809 */
19810 MethodDescriptorProto.verify = function verify(message) {
19811 if (typeof message !== "object" || message === null)
19812 return "object expected";
19813 if (message.name != null && message.hasOwnProperty("name"))
19814 if (!$util.isString(message.name))
19815 return "name: string expected";
19816 if (message.inputType != null && message.hasOwnProperty("inputType"))
19817 if (!$util.isString(message.inputType))
19818 return "inputType: string expected";
19819 if (message.outputType != null && message.hasOwnProperty("outputType"))
19820 if (!$util.isString(message.outputType))
19821 return "outputType: string expected";
19822 if (message.options != null && message.hasOwnProperty("options")) {
19823 var error = $root.google.protobuf.MethodOptions.verify(message.options);
19824 if (error)
19825 return "options." + error;
19826 }
19827 if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming"))
19828 if (typeof message.clientStreaming !== "boolean")
19829 return "clientStreaming: boolean expected";
19830 if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming"))
19831 if (typeof message.serverStreaming !== "boolean")
19832 return "serverStreaming: boolean expected";
19833 return null;
19834 };
19835
19836 /**
19837 * Creates a MethodDescriptorProto message from a plain object. Also converts values to their respective internal types.
19838 * @function fromObject
19839 * @memberof google.protobuf.MethodDescriptorProto
19840 * @static
19841 * @param {Object.<string,*>} object Plain object
19842 * @returns {google.protobuf.MethodDescriptorProto} MethodDescriptorProto
19843 */
19844 MethodDescriptorProto.fromObject = function fromObject(object) {
19845 if (object instanceof $root.google.protobuf.MethodDescriptorProto)
19846 return object;
19847 var message = new $root.google.protobuf.MethodDescriptorProto();
19848 if (object.name != null)
19849 message.name = String(object.name);
19850 if (object.inputType != null)
19851 message.inputType = String(object.inputType);
19852 if (object.outputType != null)
19853 message.outputType = String(object.outputType);
19854 if (object.options != null) {
19855 if (typeof object.options !== "object")
19856 throw TypeError(".google.protobuf.MethodDescriptorProto.options: object expected");
19857 message.options = $root.google.protobuf.MethodOptions.fromObject(object.options);
19858 }
19859 if (object.clientStreaming != null)
19860 message.clientStreaming = Boolean(object.clientStreaming);
19861 if (object.serverStreaming != null)
19862 message.serverStreaming = Boolean(object.serverStreaming);
19863 return message;
19864 };
19865
19866 /**
19867 * Creates a plain object from a MethodDescriptorProto message. Also converts values to other types if specified.
19868 * @function toObject
19869 * @memberof google.protobuf.MethodDescriptorProto
19870 * @static
19871 * @param {google.protobuf.MethodDescriptorProto} message MethodDescriptorProto
19872 * @param {$protobuf.IConversionOptions} [options] Conversion options
19873 * @returns {Object.<string,*>} Plain object
19874 */
19875 MethodDescriptorProto.toObject = function toObject(message, options) {
19876 if (!options)
19877 options = {};
19878 var object = {};
19879 if (options.defaults) {
19880 object.name = "";
19881 object.inputType = "";
19882 object.outputType = "";
19883 object.options = null;
19884 object.clientStreaming = false;
19885 object.serverStreaming = false;
19886 }
19887 if (message.name != null && message.hasOwnProperty("name"))
19888 object.name = message.name;
19889 if (message.inputType != null && message.hasOwnProperty("inputType"))
19890 object.inputType = message.inputType;
19891 if (message.outputType != null && message.hasOwnProperty("outputType"))
19892 object.outputType = message.outputType;
19893 if (message.options != null && message.hasOwnProperty("options"))
19894 object.options = $root.google.protobuf.MethodOptions.toObject(message.options, options);
19895 if (message.clientStreaming != null && message.hasOwnProperty("clientStreaming"))
19896 object.clientStreaming = message.clientStreaming;
19897 if (message.serverStreaming != null && message.hasOwnProperty("serverStreaming"))
19898 object.serverStreaming = message.serverStreaming;
19899 return object;
19900 };
19901
19902 /**
19903 * Converts this MethodDescriptorProto to JSON.
19904 * @function toJSON
19905 * @memberof google.protobuf.MethodDescriptorProto
19906 * @instance
19907 * @returns {Object.<string,*>} JSON object
19908 */
19909 MethodDescriptorProto.prototype.toJSON = function toJSON() {
19910 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
19911 };
19912
19913 return MethodDescriptorProto;
19914 })();
19915
19916 protobuf.FileOptions = (function() {
19917
19918 /**
19919 * Properties of a FileOptions.
19920 * @memberof google.protobuf
19921 * @interface IFileOptions
19922 * @property {string|null} [javaPackage] FileOptions javaPackage
19923 * @property {string|null} [javaOuterClassname] FileOptions javaOuterClassname
19924 * @property {boolean|null} [javaMultipleFiles] FileOptions javaMultipleFiles
19925 * @property {boolean|null} [javaGenerateEqualsAndHash] FileOptions javaGenerateEqualsAndHash
19926 * @property {boolean|null} [javaStringCheckUtf8] FileOptions javaStringCheckUtf8
19927 * @property {google.protobuf.FileOptions.OptimizeMode|null} [optimizeFor] FileOptions optimizeFor
19928 * @property {string|null} [goPackage] FileOptions goPackage
19929 * @property {boolean|null} [ccGenericServices] FileOptions ccGenericServices
19930 * @property {boolean|null} [javaGenericServices] FileOptions javaGenericServices
19931 * @property {boolean|null} [pyGenericServices] FileOptions pyGenericServices
19932 * @property {boolean|null} [phpGenericServices] FileOptions phpGenericServices
19933 * @property {boolean|null} [deprecated] FileOptions deprecated
19934 * @property {boolean|null} [ccEnableArenas] FileOptions ccEnableArenas
19935 * @property {string|null} [objcClassPrefix] FileOptions objcClassPrefix
19936 * @property {string|null} [csharpNamespace] FileOptions csharpNamespace
19937 * @property {string|null} [swiftPrefix] FileOptions swiftPrefix
19938 * @property {string|null} [phpClassPrefix] FileOptions phpClassPrefix
19939 * @property {string|null} [phpNamespace] FileOptions phpNamespace
19940 * @property {string|null} [phpMetadataNamespace] FileOptions phpMetadataNamespace
19941 * @property {string|null} [rubyPackage] FileOptions rubyPackage
19942 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] FileOptions uninterpretedOption
19943 */
19944
19945 /**
19946 * Constructs a new FileOptions.
19947 * @memberof google.protobuf
19948 * @classdesc Represents a FileOptions.
19949 * @implements IFileOptions
19950 * @constructor
19951 * @param {google.protobuf.IFileOptions=} [properties] Properties to set
19952 */
19953 function FileOptions(properties) {
19954 this.uninterpretedOption = [];
19955 if (properties)
19956 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
19957 if (properties[keys[i]] != null)
19958 this[keys[i]] = properties[keys[i]];
19959 }
19960
19961 /**
19962 * FileOptions javaPackage.
19963 * @member {string} javaPackage
19964 * @memberof google.protobuf.FileOptions
19965 * @instance
19966 */
19967 FileOptions.prototype.javaPackage = "";
19968
19969 /**
19970 * FileOptions javaOuterClassname.
19971 * @member {string} javaOuterClassname
19972 * @memberof google.protobuf.FileOptions
19973 * @instance
19974 */
19975 FileOptions.prototype.javaOuterClassname = "";
19976
19977 /**
19978 * FileOptions javaMultipleFiles.
19979 * @member {boolean} javaMultipleFiles
19980 * @memberof google.protobuf.FileOptions
19981 * @instance
19982 */
19983 FileOptions.prototype.javaMultipleFiles = false;
19984
19985 /**
19986 * FileOptions javaGenerateEqualsAndHash.
19987 * @member {boolean} javaGenerateEqualsAndHash
19988 * @memberof google.protobuf.FileOptions
19989 * @instance
19990 */
19991 FileOptions.prototype.javaGenerateEqualsAndHash = false;
19992
19993 /**
19994 * FileOptions javaStringCheckUtf8.
19995 * @member {boolean} javaStringCheckUtf8
19996 * @memberof google.protobuf.FileOptions
19997 * @instance
19998 */
19999 FileOptions.prototype.javaStringCheckUtf8 = false;
20000
20001 /**
20002 * FileOptions optimizeFor.
20003 * @member {google.protobuf.FileOptions.OptimizeMode} optimizeFor
20004 * @memberof google.protobuf.FileOptions
20005 * @instance
20006 */
20007 FileOptions.prototype.optimizeFor = 1;
20008
20009 /**
20010 * FileOptions goPackage.
20011 * @member {string} goPackage
20012 * @memberof google.protobuf.FileOptions
20013 * @instance
20014 */
20015 FileOptions.prototype.goPackage = "";
20016
20017 /**
20018 * FileOptions ccGenericServices.
20019 * @member {boolean} ccGenericServices
20020 * @memberof google.protobuf.FileOptions
20021 * @instance
20022 */
20023 FileOptions.prototype.ccGenericServices = false;
20024
20025 /**
20026 * FileOptions javaGenericServices.
20027 * @member {boolean} javaGenericServices
20028 * @memberof google.protobuf.FileOptions
20029 * @instance
20030 */
20031 FileOptions.prototype.javaGenericServices = false;
20032
20033 /**
20034 * FileOptions pyGenericServices.
20035 * @member {boolean} pyGenericServices
20036 * @memberof google.protobuf.FileOptions
20037 * @instance
20038 */
20039 FileOptions.prototype.pyGenericServices = false;
20040
20041 /**
20042 * FileOptions phpGenericServices.
20043 * @member {boolean} phpGenericServices
20044 * @memberof google.protobuf.FileOptions
20045 * @instance
20046 */
20047 FileOptions.prototype.phpGenericServices = false;
20048
20049 /**
20050 * FileOptions deprecated.
20051 * @member {boolean} deprecated
20052 * @memberof google.protobuf.FileOptions
20053 * @instance
20054 */
20055 FileOptions.prototype.deprecated = false;
20056
20057 /**
20058 * FileOptions ccEnableArenas.
20059 * @member {boolean} ccEnableArenas
20060 * @memberof google.protobuf.FileOptions
20061 * @instance
20062 */
20063 FileOptions.prototype.ccEnableArenas = true;
20064
20065 /**
20066 * FileOptions objcClassPrefix.
20067 * @member {string} objcClassPrefix
20068 * @memberof google.protobuf.FileOptions
20069 * @instance
20070 */
20071 FileOptions.prototype.objcClassPrefix = "";
20072
20073 /**
20074 * FileOptions csharpNamespace.
20075 * @member {string} csharpNamespace
20076 * @memberof google.protobuf.FileOptions
20077 * @instance
20078 */
20079 FileOptions.prototype.csharpNamespace = "";
20080
20081 /**
20082 * FileOptions swiftPrefix.
20083 * @member {string} swiftPrefix
20084 * @memberof google.protobuf.FileOptions
20085 * @instance
20086 */
20087 FileOptions.prototype.swiftPrefix = "";
20088
20089 /**
20090 * FileOptions phpClassPrefix.
20091 * @member {string} phpClassPrefix
20092 * @memberof google.protobuf.FileOptions
20093 * @instance
20094 */
20095 FileOptions.prototype.phpClassPrefix = "";
20096
20097 /**
20098 * FileOptions phpNamespace.
20099 * @member {string} phpNamespace
20100 * @memberof google.protobuf.FileOptions
20101 * @instance
20102 */
20103 FileOptions.prototype.phpNamespace = "";
20104
20105 /**
20106 * FileOptions phpMetadataNamespace.
20107 * @member {string} phpMetadataNamespace
20108 * @memberof google.protobuf.FileOptions
20109 * @instance
20110 */
20111 FileOptions.prototype.phpMetadataNamespace = "";
20112
20113 /**
20114 * FileOptions rubyPackage.
20115 * @member {string} rubyPackage
20116 * @memberof google.protobuf.FileOptions
20117 * @instance
20118 */
20119 FileOptions.prototype.rubyPackage = "";
20120
20121 /**
20122 * FileOptions uninterpretedOption.
20123 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
20124 * @memberof google.protobuf.FileOptions
20125 * @instance
20126 */
20127 FileOptions.prototype.uninterpretedOption = $util.emptyArray;
20128
20129 /**
20130 * Creates a new FileOptions instance using the specified properties.
20131 * @function create
20132 * @memberof google.protobuf.FileOptions
20133 * @static
20134 * @param {google.protobuf.IFileOptions=} [properties] Properties to set
20135 * @returns {google.protobuf.FileOptions} FileOptions instance
20136 */
20137 FileOptions.create = function create(properties) {
20138 return new FileOptions(properties);
20139 };
20140
20141 /**
20142 * Encodes the specified FileOptions message. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
20143 * @function encode
20144 * @memberof google.protobuf.FileOptions
20145 * @static
20146 * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode
20147 * @param {$protobuf.Writer} [writer] Writer to encode to
20148 * @returns {$protobuf.Writer} Writer
20149 */
20150 FileOptions.encode = function encode(message, writer) {
20151 if (!writer)
20152 writer = $Writer.create();
20153 if (message.javaPackage != null && Object.hasOwnProperty.call(message, "javaPackage"))
20154 writer.uint32(/* id 1, wireType 2 =*/10).string(message.javaPackage);
20155 if (message.javaOuterClassname != null && Object.hasOwnProperty.call(message, "javaOuterClassname"))
20156 writer.uint32(/* id 8, wireType 2 =*/66).string(message.javaOuterClassname);
20157 if (message.optimizeFor != null && Object.hasOwnProperty.call(message, "optimizeFor"))
20158 writer.uint32(/* id 9, wireType 0 =*/72).int32(message.optimizeFor);
20159 if (message.javaMultipleFiles != null && Object.hasOwnProperty.call(message, "javaMultipleFiles"))
20160 writer.uint32(/* id 10, wireType 0 =*/80).bool(message.javaMultipleFiles);
20161 if (message.goPackage != null && Object.hasOwnProperty.call(message, "goPackage"))
20162 writer.uint32(/* id 11, wireType 2 =*/90).string(message.goPackage);
20163 if (message.ccGenericServices != null && Object.hasOwnProperty.call(message, "ccGenericServices"))
20164 writer.uint32(/* id 16, wireType 0 =*/128).bool(message.ccGenericServices);
20165 if (message.javaGenericServices != null && Object.hasOwnProperty.call(message, "javaGenericServices"))
20166 writer.uint32(/* id 17, wireType 0 =*/136).bool(message.javaGenericServices);
20167 if (message.pyGenericServices != null && Object.hasOwnProperty.call(message, "pyGenericServices"))
20168 writer.uint32(/* id 18, wireType 0 =*/144).bool(message.pyGenericServices);
20169 if (message.javaGenerateEqualsAndHash != null && Object.hasOwnProperty.call(message, "javaGenerateEqualsAndHash"))
20170 writer.uint32(/* id 20, wireType 0 =*/160).bool(message.javaGenerateEqualsAndHash);
20171 if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
20172 writer.uint32(/* id 23, wireType 0 =*/184).bool(message.deprecated);
20173 if (message.javaStringCheckUtf8 != null && Object.hasOwnProperty.call(message, "javaStringCheckUtf8"))
20174 writer.uint32(/* id 27, wireType 0 =*/216).bool(message.javaStringCheckUtf8);
20175 if (message.ccEnableArenas != null && Object.hasOwnProperty.call(message, "ccEnableArenas"))
20176 writer.uint32(/* id 31, wireType 0 =*/248).bool(message.ccEnableArenas);
20177 if (message.objcClassPrefix != null && Object.hasOwnProperty.call(message, "objcClassPrefix"))
20178 writer.uint32(/* id 36, wireType 2 =*/290).string(message.objcClassPrefix);
20179 if (message.csharpNamespace != null && Object.hasOwnProperty.call(message, "csharpNamespace"))
20180 writer.uint32(/* id 37, wireType 2 =*/298).string(message.csharpNamespace);
20181 if (message.swiftPrefix != null && Object.hasOwnProperty.call(message, "swiftPrefix"))
20182 writer.uint32(/* id 39, wireType 2 =*/314).string(message.swiftPrefix);
20183 if (message.phpClassPrefix != null && Object.hasOwnProperty.call(message, "phpClassPrefix"))
20184 writer.uint32(/* id 40, wireType 2 =*/322).string(message.phpClassPrefix);
20185 if (message.phpNamespace != null && Object.hasOwnProperty.call(message, "phpNamespace"))
20186 writer.uint32(/* id 41, wireType 2 =*/330).string(message.phpNamespace);
20187 if (message.phpGenericServices != null && Object.hasOwnProperty.call(message, "phpGenericServices"))
20188 writer.uint32(/* id 42, wireType 0 =*/336).bool(message.phpGenericServices);
20189 if (message.phpMetadataNamespace != null && Object.hasOwnProperty.call(message, "phpMetadataNamespace"))
20190 writer.uint32(/* id 44, wireType 2 =*/354).string(message.phpMetadataNamespace);
20191 if (message.rubyPackage != null && Object.hasOwnProperty.call(message, "rubyPackage"))
20192 writer.uint32(/* id 45, wireType 2 =*/362).string(message.rubyPackage);
20193 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
20194 for (var i = 0; i < message.uninterpretedOption.length; ++i)
20195 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
20196 return writer;
20197 };
20198
20199 /**
20200 * Encodes the specified FileOptions message, length delimited. Does not implicitly {@link google.protobuf.FileOptions.verify|verify} messages.
20201 * @function encodeDelimited
20202 * @memberof google.protobuf.FileOptions
20203 * @static
20204 * @param {google.protobuf.IFileOptions} message FileOptions message or plain object to encode
20205 * @param {$protobuf.Writer} [writer] Writer to encode to
20206 * @returns {$protobuf.Writer} Writer
20207 */
20208 FileOptions.encodeDelimited = function encodeDelimited(message, writer) {
20209 return this.encode(message, writer).ldelim();
20210 };
20211
20212 /**
20213 * Decodes a FileOptions message from the specified reader or buffer.
20214 * @function decode
20215 * @memberof google.protobuf.FileOptions
20216 * @static
20217 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
20218 * @param {number} [length] Message length if known beforehand
20219 * @returns {google.protobuf.FileOptions} FileOptions
20220 * @throws {Error} If the payload is not a reader or valid buffer
20221 * @throws {$protobuf.util.ProtocolError} If required fields are missing
20222 */
20223 FileOptions.decode = function decode(reader, length) {
20224 if (!(reader instanceof $Reader))
20225 reader = $Reader.create(reader);
20226 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FileOptions();
20227 while (reader.pos < end) {
20228 var tag = reader.uint32();
20229 switch (tag >>> 3) {
20230 case 1:
20231 message.javaPackage = reader.string();
20232 break;
20233 case 8:
20234 message.javaOuterClassname = reader.string();
20235 break;
20236 case 10:
20237 message.javaMultipleFiles = reader.bool();
20238 break;
20239 case 20:
20240 message.javaGenerateEqualsAndHash = reader.bool();
20241 break;
20242 case 27:
20243 message.javaStringCheckUtf8 = reader.bool();
20244 break;
20245 case 9:
20246 message.optimizeFor = reader.int32();
20247 break;
20248 case 11:
20249 message.goPackage = reader.string();
20250 break;
20251 case 16:
20252 message.ccGenericServices = reader.bool();
20253 break;
20254 case 17:
20255 message.javaGenericServices = reader.bool();
20256 break;
20257 case 18:
20258 message.pyGenericServices = reader.bool();
20259 break;
20260 case 42:
20261 message.phpGenericServices = reader.bool();
20262 break;
20263 case 23:
20264 message.deprecated = reader.bool();
20265 break;
20266 case 31:
20267 message.ccEnableArenas = reader.bool();
20268 break;
20269 case 36:
20270 message.objcClassPrefix = reader.string();
20271 break;
20272 case 37:
20273 message.csharpNamespace = reader.string();
20274 break;
20275 case 39:
20276 message.swiftPrefix = reader.string();
20277 break;
20278 case 40:
20279 message.phpClassPrefix = reader.string();
20280 break;
20281 case 41:
20282 message.phpNamespace = reader.string();
20283 break;
20284 case 44:
20285 message.phpMetadataNamespace = reader.string();
20286 break;
20287 case 45:
20288 message.rubyPackage = reader.string();
20289 break;
20290 case 999:
20291 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
20292 message.uninterpretedOption = [];
20293 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
20294 break;
20295 default:
20296 reader.skipType(tag & 7);
20297 break;
20298 }
20299 }
20300 return message;
20301 };
20302
20303 /**
20304 * Decodes a FileOptions message from the specified reader or buffer, length delimited.
20305 * @function decodeDelimited
20306 * @memberof google.protobuf.FileOptions
20307 * @static
20308 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
20309 * @returns {google.protobuf.FileOptions} FileOptions
20310 * @throws {Error} If the payload is not a reader or valid buffer
20311 * @throws {$protobuf.util.ProtocolError} If required fields are missing
20312 */
20313 FileOptions.decodeDelimited = function decodeDelimited(reader) {
20314 if (!(reader instanceof $Reader))
20315 reader = new $Reader(reader);
20316 return this.decode(reader, reader.uint32());
20317 };
20318
20319 /**
20320 * Verifies a FileOptions message.
20321 * @function verify
20322 * @memberof google.protobuf.FileOptions
20323 * @static
20324 * @param {Object.<string,*>} message Plain object to verify
20325 * @returns {string|null} `null` if valid, otherwise the reason why it is not
20326 */
20327 FileOptions.verify = function verify(message) {
20328 if (typeof message !== "object" || message === null)
20329 return "object expected";
20330 if (message.javaPackage != null && message.hasOwnProperty("javaPackage"))
20331 if (!$util.isString(message.javaPackage))
20332 return "javaPackage: string expected";
20333 if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname"))
20334 if (!$util.isString(message.javaOuterClassname))
20335 return "javaOuterClassname: string expected";
20336 if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles"))
20337 if (typeof message.javaMultipleFiles !== "boolean")
20338 return "javaMultipleFiles: boolean expected";
20339 if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash"))
20340 if (typeof message.javaGenerateEqualsAndHash !== "boolean")
20341 return "javaGenerateEqualsAndHash: boolean expected";
20342 if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8"))
20343 if (typeof message.javaStringCheckUtf8 !== "boolean")
20344 return "javaStringCheckUtf8: boolean expected";
20345 if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor"))
20346 switch (message.optimizeFor) {
20347 default:
20348 return "optimizeFor: enum value expected";
20349 case 1:
20350 case 2:
20351 case 3:
20352 break;
20353 }
20354 if (message.goPackage != null && message.hasOwnProperty("goPackage"))
20355 if (!$util.isString(message.goPackage))
20356 return "goPackage: string expected";
20357 if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices"))
20358 if (typeof message.ccGenericServices !== "boolean")
20359 return "ccGenericServices: boolean expected";
20360 if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices"))
20361 if (typeof message.javaGenericServices !== "boolean")
20362 return "javaGenericServices: boolean expected";
20363 if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices"))
20364 if (typeof message.pyGenericServices !== "boolean")
20365 return "pyGenericServices: boolean expected";
20366 if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices"))
20367 if (typeof message.phpGenericServices !== "boolean")
20368 return "phpGenericServices: boolean expected";
20369 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
20370 if (typeof message.deprecated !== "boolean")
20371 return "deprecated: boolean expected";
20372 if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas"))
20373 if (typeof message.ccEnableArenas !== "boolean")
20374 return "ccEnableArenas: boolean expected";
20375 if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix"))
20376 if (!$util.isString(message.objcClassPrefix))
20377 return "objcClassPrefix: string expected";
20378 if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace"))
20379 if (!$util.isString(message.csharpNamespace))
20380 return "csharpNamespace: string expected";
20381 if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix"))
20382 if (!$util.isString(message.swiftPrefix))
20383 return "swiftPrefix: string expected";
20384 if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix"))
20385 if (!$util.isString(message.phpClassPrefix))
20386 return "phpClassPrefix: string expected";
20387 if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace"))
20388 if (!$util.isString(message.phpNamespace))
20389 return "phpNamespace: string expected";
20390 if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace"))
20391 if (!$util.isString(message.phpMetadataNamespace))
20392 return "phpMetadataNamespace: string expected";
20393 if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage"))
20394 if (!$util.isString(message.rubyPackage))
20395 return "rubyPackage: string expected";
20396 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
20397 if (!Array.isArray(message.uninterpretedOption))
20398 return "uninterpretedOption: array expected";
20399 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
20400 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
20401 if (error)
20402 return "uninterpretedOption." + error;
20403 }
20404 }
20405 return null;
20406 };
20407
20408 /**
20409 * Creates a FileOptions message from a plain object. Also converts values to their respective internal types.
20410 * @function fromObject
20411 * @memberof google.protobuf.FileOptions
20412 * @static
20413 * @param {Object.<string,*>} object Plain object
20414 * @returns {google.protobuf.FileOptions} FileOptions
20415 */
20416 FileOptions.fromObject = function fromObject(object) {
20417 if (object instanceof $root.google.protobuf.FileOptions)
20418 return object;
20419 var message = new $root.google.protobuf.FileOptions();
20420 if (object.javaPackage != null)
20421 message.javaPackage = String(object.javaPackage);
20422 if (object.javaOuterClassname != null)
20423 message.javaOuterClassname = String(object.javaOuterClassname);
20424 if (object.javaMultipleFiles != null)
20425 message.javaMultipleFiles = Boolean(object.javaMultipleFiles);
20426 if (object.javaGenerateEqualsAndHash != null)
20427 message.javaGenerateEqualsAndHash = Boolean(object.javaGenerateEqualsAndHash);
20428 if (object.javaStringCheckUtf8 != null)
20429 message.javaStringCheckUtf8 = Boolean(object.javaStringCheckUtf8);
20430 switch (object.optimizeFor) {
20431 case "SPEED":
20432 case 1:
20433 message.optimizeFor = 1;
20434 break;
20435 case "CODE_SIZE":
20436 case 2:
20437 message.optimizeFor = 2;
20438 break;
20439 case "LITE_RUNTIME":
20440 case 3:
20441 message.optimizeFor = 3;
20442 break;
20443 }
20444 if (object.goPackage != null)
20445 message.goPackage = String(object.goPackage);
20446 if (object.ccGenericServices != null)
20447 message.ccGenericServices = Boolean(object.ccGenericServices);
20448 if (object.javaGenericServices != null)
20449 message.javaGenericServices = Boolean(object.javaGenericServices);
20450 if (object.pyGenericServices != null)
20451 message.pyGenericServices = Boolean(object.pyGenericServices);
20452 if (object.phpGenericServices != null)
20453 message.phpGenericServices = Boolean(object.phpGenericServices);
20454 if (object.deprecated != null)
20455 message.deprecated = Boolean(object.deprecated);
20456 if (object.ccEnableArenas != null)
20457 message.ccEnableArenas = Boolean(object.ccEnableArenas);
20458 if (object.objcClassPrefix != null)
20459 message.objcClassPrefix = String(object.objcClassPrefix);
20460 if (object.csharpNamespace != null)
20461 message.csharpNamespace = String(object.csharpNamespace);
20462 if (object.swiftPrefix != null)
20463 message.swiftPrefix = String(object.swiftPrefix);
20464 if (object.phpClassPrefix != null)
20465 message.phpClassPrefix = String(object.phpClassPrefix);
20466 if (object.phpNamespace != null)
20467 message.phpNamespace = String(object.phpNamespace);
20468 if (object.phpMetadataNamespace != null)
20469 message.phpMetadataNamespace = String(object.phpMetadataNamespace);
20470 if (object.rubyPackage != null)
20471 message.rubyPackage = String(object.rubyPackage);
20472 if (object.uninterpretedOption) {
20473 if (!Array.isArray(object.uninterpretedOption))
20474 throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: array expected");
20475 message.uninterpretedOption = [];
20476 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
20477 if (typeof object.uninterpretedOption[i] !== "object")
20478 throw TypeError(".google.protobuf.FileOptions.uninterpretedOption: object expected");
20479 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
20480 }
20481 }
20482 return message;
20483 };
20484
20485 /**
20486 * Creates a plain object from a FileOptions message. Also converts values to other types if specified.
20487 * @function toObject
20488 * @memberof google.protobuf.FileOptions
20489 * @static
20490 * @param {google.protobuf.FileOptions} message FileOptions
20491 * @param {$protobuf.IConversionOptions} [options] Conversion options
20492 * @returns {Object.<string,*>} Plain object
20493 */
20494 FileOptions.toObject = function toObject(message, options) {
20495 if (!options)
20496 options = {};
20497 var object = {};
20498 if (options.arrays || options.defaults)
20499 object.uninterpretedOption = [];
20500 if (options.defaults) {
20501 object.javaPackage = "";
20502 object.javaOuterClassname = "";
20503 object.optimizeFor = options.enums === String ? "SPEED" : 1;
20504 object.javaMultipleFiles = false;
20505 object.goPackage = "";
20506 object.ccGenericServices = false;
20507 object.javaGenericServices = false;
20508 object.pyGenericServices = false;
20509 object.javaGenerateEqualsAndHash = false;
20510 object.deprecated = false;
20511 object.javaStringCheckUtf8 = false;
20512 object.ccEnableArenas = true;
20513 object.objcClassPrefix = "";
20514 object.csharpNamespace = "";
20515 object.swiftPrefix = "";
20516 object.phpClassPrefix = "";
20517 object.phpNamespace = "";
20518 object.phpGenericServices = false;
20519 object.phpMetadataNamespace = "";
20520 object.rubyPackage = "";
20521 }
20522 if (message.javaPackage != null && message.hasOwnProperty("javaPackage"))
20523 object.javaPackage = message.javaPackage;
20524 if (message.javaOuterClassname != null && message.hasOwnProperty("javaOuterClassname"))
20525 object.javaOuterClassname = message.javaOuterClassname;
20526 if (message.optimizeFor != null && message.hasOwnProperty("optimizeFor"))
20527 object.optimizeFor = options.enums === String ? $root.google.protobuf.FileOptions.OptimizeMode[message.optimizeFor] : message.optimizeFor;
20528 if (message.javaMultipleFiles != null && message.hasOwnProperty("javaMultipleFiles"))
20529 object.javaMultipleFiles = message.javaMultipleFiles;
20530 if (message.goPackage != null && message.hasOwnProperty("goPackage"))
20531 object.goPackage = message.goPackage;
20532 if (message.ccGenericServices != null && message.hasOwnProperty("ccGenericServices"))
20533 object.ccGenericServices = message.ccGenericServices;
20534 if (message.javaGenericServices != null && message.hasOwnProperty("javaGenericServices"))
20535 object.javaGenericServices = message.javaGenericServices;
20536 if (message.pyGenericServices != null && message.hasOwnProperty("pyGenericServices"))
20537 object.pyGenericServices = message.pyGenericServices;
20538 if (message.javaGenerateEqualsAndHash != null && message.hasOwnProperty("javaGenerateEqualsAndHash"))
20539 object.javaGenerateEqualsAndHash = message.javaGenerateEqualsAndHash;
20540 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
20541 object.deprecated = message.deprecated;
20542 if (message.javaStringCheckUtf8 != null && message.hasOwnProperty("javaStringCheckUtf8"))
20543 object.javaStringCheckUtf8 = message.javaStringCheckUtf8;
20544 if (message.ccEnableArenas != null && message.hasOwnProperty("ccEnableArenas"))
20545 object.ccEnableArenas = message.ccEnableArenas;
20546 if (message.objcClassPrefix != null && message.hasOwnProperty("objcClassPrefix"))
20547 object.objcClassPrefix = message.objcClassPrefix;
20548 if (message.csharpNamespace != null && message.hasOwnProperty("csharpNamespace"))
20549 object.csharpNamespace = message.csharpNamespace;
20550 if (message.swiftPrefix != null && message.hasOwnProperty("swiftPrefix"))
20551 object.swiftPrefix = message.swiftPrefix;
20552 if (message.phpClassPrefix != null && message.hasOwnProperty("phpClassPrefix"))
20553 object.phpClassPrefix = message.phpClassPrefix;
20554 if (message.phpNamespace != null && message.hasOwnProperty("phpNamespace"))
20555 object.phpNamespace = message.phpNamespace;
20556 if (message.phpGenericServices != null && message.hasOwnProperty("phpGenericServices"))
20557 object.phpGenericServices = message.phpGenericServices;
20558 if (message.phpMetadataNamespace != null && message.hasOwnProperty("phpMetadataNamespace"))
20559 object.phpMetadataNamespace = message.phpMetadataNamespace;
20560 if (message.rubyPackage != null && message.hasOwnProperty("rubyPackage"))
20561 object.rubyPackage = message.rubyPackage;
20562 if (message.uninterpretedOption && message.uninterpretedOption.length) {
20563 object.uninterpretedOption = [];
20564 for (var j = 0; j < message.uninterpretedOption.length; ++j)
20565 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
20566 }
20567 return object;
20568 };
20569
20570 /**
20571 * Converts this FileOptions to JSON.
20572 * @function toJSON
20573 * @memberof google.protobuf.FileOptions
20574 * @instance
20575 * @returns {Object.<string,*>} JSON object
20576 */
20577 FileOptions.prototype.toJSON = function toJSON() {
20578 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
20579 };
20580
20581 /**
20582 * OptimizeMode enum.
20583 * @name google.protobuf.FileOptions.OptimizeMode
20584 * @enum {number}
20585 * @property {number} SPEED=1 SPEED value
20586 * @property {number} CODE_SIZE=2 CODE_SIZE value
20587 * @property {number} LITE_RUNTIME=3 LITE_RUNTIME value
20588 */
20589 FileOptions.OptimizeMode = (function() {
20590 var valuesById = {}, values = Object.create(valuesById);
20591 values[valuesById[1] = "SPEED"] = 1;
20592 values[valuesById[2] = "CODE_SIZE"] = 2;
20593 values[valuesById[3] = "LITE_RUNTIME"] = 3;
20594 return values;
20595 })();
20596
20597 return FileOptions;
20598 })();
20599
20600 protobuf.MessageOptions = (function() {
20601
20602 /**
20603 * Properties of a MessageOptions.
20604 * @memberof google.protobuf
20605 * @interface IMessageOptions
20606 * @property {boolean|null} [messageSetWireFormat] MessageOptions messageSetWireFormat
20607 * @property {boolean|null} [noStandardDescriptorAccessor] MessageOptions noStandardDescriptorAccessor
20608 * @property {boolean|null} [deprecated] MessageOptions deprecated
20609 * @property {boolean|null} [mapEntry] MessageOptions mapEntry
20610 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] MessageOptions uninterpretedOption
20611 */
20612
20613 /**
20614 * Constructs a new MessageOptions.
20615 * @memberof google.protobuf
20616 * @classdesc Represents a MessageOptions.
20617 * @implements IMessageOptions
20618 * @constructor
20619 * @param {google.protobuf.IMessageOptions=} [properties] Properties to set
20620 */
20621 function MessageOptions(properties) {
20622 this.uninterpretedOption = [];
20623 if (properties)
20624 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
20625 if (properties[keys[i]] != null)
20626 this[keys[i]] = properties[keys[i]];
20627 }
20628
20629 /**
20630 * MessageOptions messageSetWireFormat.
20631 * @member {boolean} messageSetWireFormat
20632 * @memberof google.protobuf.MessageOptions
20633 * @instance
20634 */
20635 MessageOptions.prototype.messageSetWireFormat = false;
20636
20637 /**
20638 * MessageOptions noStandardDescriptorAccessor.
20639 * @member {boolean} noStandardDescriptorAccessor
20640 * @memberof google.protobuf.MessageOptions
20641 * @instance
20642 */
20643 MessageOptions.prototype.noStandardDescriptorAccessor = false;
20644
20645 /**
20646 * MessageOptions deprecated.
20647 * @member {boolean} deprecated
20648 * @memberof google.protobuf.MessageOptions
20649 * @instance
20650 */
20651 MessageOptions.prototype.deprecated = false;
20652
20653 /**
20654 * MessageOptions mapEntry.
20655 * @member {boolean} mapEntry
20656 * @memberof google.protobuf.MessageOptions
20657 * @instance
20658 */
20659 MessageOptions.prototype.mapEntry = false;
20660
20661 /**
20662 * MessageOptions uninterpretedOption.
20663 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
20664 * @memberof google.protobuf.MessageOptions
20665 * @instance
20666 */
20667 MessageOptions.prototype.uninterpretedOption = $util.emptyArray;
20668
20669 /**
20670 * Creates a new MessageOptions instance using the specified properties.
20671 * @function create
20672 * @memberof google.protobuf.MessageOptions
20673 * @static
20674 * @param {google.protobuf.IMessageOptions=} [properties] Properties to set
20675 * @returns {google.protobuf.MessageOptions} MessageOptions instance
20676 */
20677 MessageOptions.create = function create(properties) {
20678 return new MessageOptions(properties);
20679 };
20680
20681 /**
20682 * Encodes the specified MessageOptions message. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
20683 * @function encode
20684 * @memberof google.protobuf.MessageOptions
20685 * @static
20686 * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode
20687 * @param {$protobuf.Writer} [writer] Writer to encode to
20688 * @returns {$protobuf.Writer} Writer
20689 */
20690 MessageOptions.encode = function encode(message, writer) {
20691 if (!writer)
20692 writer = $Writer.create();
20693 if (message.messageSetWireFormat != null && Object.hasOwnProperty.call(message, "messageSetWireFormat"))
20694 writer.uint32(/* id 1, wireType 0 =*/8).bool(message.messageSetWireFormat);
20695 if (message.noStandardDescriptorAccessor != null && Object.hasOwnProperty.call(message, "noStandardDescriptorAccessor"))
20696 writer.uint32(/* id 2, wireType 0 =*/16).bool(message.noStandardDescriptorAccessor);
20697 if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
20698 writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated);
20699 if (message.mapEntry != null && Object.hasOwnProperty.call(message, "mapEntry"))
20700 writer.uint32(/* id 7, wireType 0 =*/56).bool(message.mapEntry);
20701 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
20702 for (var i = 0; i < message.uninterpretedOption.length; ++i)
20703 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
20704 return writer;
20705 };
20706
20707 /**
20708 * Encodes the specified MessageOptions message, length delimited. Does not implicitly {@link google.protobuf.MessageOptions.verify|verify} messages.
20709 * @function encodeDelimited
20710 * @memberof google.protobuf.MessageOptions
20711 * @static
20712 * @param {google.protobuf.IMessageOptions} message MessageOptions message or plain object to encode
20713 * @param {$protobuf.Writer} [writer] Writer to encode to
20714 * @returns {$protobuf.Writer} Writer
20715 */
20716 MessageOptions.encodeDelimited = function encodeDelimited(message, writer) {
20717 return this.encode(message, writer).ldelim();
20718 };
20719
20720 /**
20721 * Decodes a MessageOptions message from the specified reader or buffer.
20722 * @function decode
20723 * @memberof google.protobuf.MessageOptions
20724 * @static
20725 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
20726 * @param {number} [length] Message length if known beforehand
20727 * @returns {google.protobuf.MessageOptions} MessageOptions
20728 * @throws {Error} If the payload is not a reader or valid buffer
20729 * @throws {$protobuf.util.ProtocolError} If required fields are missing
20730 */
20731 MessageOptions.decode = function decode(reader, length) {
20732 if (!(reader instanceof $Reader))
20733 reader = $Reader.create(reader);
20734 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MessageOptions();
20735 while (reader.pos < end) {
20736 var tag = reader.uint32();
20737 switch (tag >>> 3) {
20738 case 1:
20739 message.messageSetWireFormat = reader.bool();
20740 break;
20741 case 2:
20742 message.noStandardDescriptorAccessor = reader.bool();
20743 break;
20744 case 3:
20745 message.deprecated = reader.bool();
20746 break;
20747 case 7:
20748 message.mapEntry = reader.bool();
20749 break;
20750 case 999:
20751 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
20752 message.uninterpretedOption = [];
20753 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
20754 break;
20755 default:
20756 reader.skipType(tag & 7);
20757 break;
20758 }
20759 }
20760 return message;
20761 };
20762
20763 /**
20764 * Decodes a MessageOptions message from the specified reader or buffer, length delimited.
20765 * @function decodeDelimited
20766 * @memberof google.protobuf.MessageOptions
20767 * @static
20768 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
20769 * @returns {google.protobuf.MessageOptions} MessageOptions
20770 * @throws {Error} If the payload is not a reader or valid buffer
20771 * @throws {$protobuf.util.ProtocolError} If required fields are missing
20772 */
20773 MessageOptions.decodeDelimited = function decodeDelimited(reader) {
20774 if (!(reader instanceof $Reader))
20775 reader = new $Reader(reader);
20776 return this.decode(reader, reader.uint32());
20777 };
20778
20779 /**
20780 * Verifies a MessageOptions message.
20781 * @function verify
20782 * @memberof google.protobuf.MessageOptions
20783 * @static
20784 * @param {Object.<string,*>} message Plain object to verify
20785 * @returns {string|null} `null` if valid, otherwise the reason why it is not
20786 */
20787 MessageOptions.verify = function verify(message) {
20788 if (typeof message !== "object" || message === null)
20789 return "object expected";
20790 if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat"))
20791 if (typeof message.messageSetWireFormat !== "boolean")
20792 return "messageSetWireFormat: boolean expected";
20793 if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor"))
20794 if (typeof message.noStandardDescriptorAccessor !== "boolean")
20795 return "noStandardDescriptorAccessor: boolean expected";
20796 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
20797 if (typeof message.deprecated !== "boolean")
20798 return "deprecated: boolean expected";
20799 if (message.mapEntry != null && message.hasOwnProperty("mapEntry"))
20800 if (typeof message.mapEntry !== "boolean")
20801 return "mapEntry: boolean expected";
20802 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
20803 if (!Array.isArray(message.uninterpretedOption))
20804 return "uninterpretedOption: array expected";
20805 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
20806 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
20807 if (error)
20808 return "uninterpretedOption." + error;
20809 }
20810 }
20811 return null;
20812 };
20813
20814 /**
20815 * Creates a MessageOptions message from a plain object. Also converts values to their respective internal types.
20816 * @function fromObject
20817 * @memberof google.protobuf.MessageOptions
20818 * @static
20819 * @param {Object.<string,*>} object Plain object
20820 * @returns {google.protobuf.MessageOptions} MessageOptions
20821 */
20822 MessageOptions.fromObject = function fromObject(object) {
20823 if (object instanceof $root.google.protobuf.MessageOptions)
20824 return object;
20825 var message = new $root.google.protobuf.MessageOptions();
20826 if (object.messageSetWireFormat != null)
20827 message.messageSetWireFormat = Boolean(object.messageSetWireFormat);
20828 if (object.noStandardDescriptorAccessor != null)
20829 message.noStandardDescriptorAccessor = Boolean(object.noStandardDescriptorAccessor);
20830 if (object.deprecated != null)
20831 message.deprecated = Boolean(object.deprecated);
20832 if (object.mapEntry != null)
20833 message.mapEntry = Boolean(object.mapEntry);
20834 if (object.uninterpretedOption) {
20835 if (!Array.isArray(object.uninterpretedOption))
20836 throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: array expected");
20837 message.uninterpretedOption = [];
20838 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
20839 if (typeof object.uninterpretedOption[i] !== "object")
20840 throw TypeError(".google.protobuf.MessageOptions.uninterpretedOption: object expected");
20841 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
20842 }
20843 }
20844 return message;
20845 };
20846
20847 /**
20848 * Creates a plain object from a MessageOptions message. Also converts values to other types if specified.
20849 * @function toObject
20850 * @memberof google.protobuf.MessageOptions
20851 * @static
20852 * @param {google.protobuf.MessageOptions} message MessageOptions
20853 * @param {$protobuf.IConversionOptions} [options] Conversion options
20854 * @returns {Object.<string,*>} Plain object
20855 */
20856 MessageOptions.toObject = function toObject(message, options) {
20857 if (!options)
20858 options = {};
20859 var object = {};
20860 if (options.arrays || options.defaults)
20861 object.uninterpretedOption = [];
20862 if (options.defaults) {
20863 object.messageSetWireFormat = false;
20864 object.noStandardDescriptorAccessor = false;
20865 object.deprecated = false;
20866 object.mapEntry = false;
20867 }
20868 if (message.messageSetWireFormat != null && message.hasOwnProperty("messageSetWireFormat"))
20869 object.messageSetWireFormat = message.messageSetWireFormat;
20870 if (message.noStandardDescriptorAccessor != null && message.hasOwnProperty("noStandardDescriptorAccessor"))
20871 object.noStandardDescriptorAccessor = message.noStandardDescriptorAccessor;
20872 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
20873 object.deprecated = message.deprecated;
20874 if (message.mapEntry != null && message.hasOwnProperty("mapEntry"))
20875 object.mapEntry = message.mapEntry;
20876 if (message.uninterpretedOption && message.uninterpretedOption.length) {
20877 object.uninterpretedOption = [];
20878 for (var j = 0; j < message.uninterpretedOption.length; ++j)
20879 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
20880 }
20881 return object;
20882 };
20883
20884 /**
20885 * Converts this MessageOptions to JSON.
20886 * @function toJSON
20887 * @memberof google.protobuf.MessageOptions
20888 * @instance
20889 * @returns {Object.<string,*>} JSON object
20890 */
20891 MessageOptions.prototype.toJSON = function toJSON() {
20892 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
20893 };
20894
20895 return MessageOptions;
20896 })();
20897
20898 protobuf.FieldOptions = (function() {
20899
20900 /**
20901 * Properties of a FieldOptions.
20902 * @memberof google.protobuf
20903 * @interface IFieldOptions
20904 * @property {google.protobuf.FieldOptions.CType|null} [ctype] FieldOptions ctype
20905 * @property {boolean|null} [packed] FieldOptions packed
20906 * @property {google.protobuf.FieldOptions.JSType|null} [jstype] FieldOptions jstype
20907 * @property {boolean|null} [lazy] FieldOptions lazy
20908 * @property {boolean|null} [deprecated] FieldOptions deprecated
20909 * @property {boolean|null} [weak] FieldOptions weak
20910 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] FieldOptions uninterpretedOption
20911 * @property {Array.<google.api.FieldBehavior>|null} [".google.api.fieldBehavior"] FieldOptions .google.api.fieldBehavior
20912 */
20913
20914 /**
20915 * Constructs a new FieldOptions.
20916 * @memberof google.protobuf
20917 * @classdesc Represents a FieldOptions.
20918 * @implements IFieldOptions
20919 * @constructor
20920 * @param {google.protobuf.IFieldOptions=} [properties] Properties to set
20921 */
20922 function FieldOptions(properties) {
20923 this.uninterpretedOption = [];
20924 this[".google.api.fieldBehavior"] = [];
20925 if (properties)
20926 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
20927 if (properties[keys[i]] != null)
20928 this[keys[i]] = properties[keys[i]];
20929 }
20930
20931 /**
20932 * FieldOptions ctype.
20933 * @member {google.protobuf.FieldOptions.CType} ctype
20934 * @memberof google.protobuf.FieldOptions
20935 * @instance
20936 */
20937 FieldOptions.prototype.ctype = 0;
20938
20939 /**
20940 * FieldOptions packed.
20941 * @member {boolean} packed
20942 * @memberof google.protobuf.FieldOptions
20943 * @instance
20944 */
20945 FieldOptions.prototype.packed = false;
20946
20947 /**
20948 * FieldOptions jstype.
20949 * @member {google.protobuf.FieldOptions.JSType} jstype
20950 * @memberof google.protobuf.FieldOptions
20951 * @instance
20952 */
20953 FieldOptions.prototype.jstype = 0;
20954
20955 /**
20956 * FieldOptions lazy.
20957 * @member {boolean} lazy
20958 * @memberof google.protobuf.FieldOptions
20959 * @instance
20960 */
20961 FieldOptions.prototype.lazy = false;
20962
20963 /**
20964 * FieldOptions deprecated.
20965 * @member {boolean} deprecated
20966 * @memberof google.protobuf.FieldOptions
20967 * @instance
20968 */
20969 FieldOptions.prototype.deprecated = false;
20970
20971 /**
20972 * FieldOptions weak.
20973 * @member {boolean} weak
20974 * @memberof google.protobuf.FieldOptions
20975 * @instance
20976 */
20977 FieldOptions.prototype.weak = false;
20978
20979 /**
20980 * FieldOptions uninterpretedOption.
20981 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
20982 * @memberof google.protobuf.FieldOptions
20983 * @instance
20984 */
20985 FieldOptions.prototype.uninterpretedOption = $util.emptyArray;
20986
20987 /**
20988 * FieldOptions .google.api.fieldBehavior.
20989 * @member {Array.<google.api.FieldBehavior>} .google.api.fieldBehavior
20990 * @memberof google.protobuf.FieldOptions
20991 * @instance
20992 */
20993 FieldOptions.prototype[".google.api.fieldBehavior"] = $util.emptyArray;
20994
20995 /**
20996 * Creates a new FieldOptions instance using the specified properties.
20997 * @function create
20998 * @memberof google.protobuf.FieldOptions
20999 * @static
21000 * @param {google.protobuf.IFieldOptions=} [properties] Properties to set
21001 * @returns {google.protobuf.FieldOptions} FieldOptions instance
21002 */
21003 FieldOptions.create = function create(properties) {
21004 return new FieldOptions(properties);
21005 };
21006
21007 /**
21008 * Encodes the specified FieldOptions message. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages.
21009 * @function encode
21010 * @memberof google.protobuf.FieldOptions
21011 * @static
21012 * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode
21013 * @param {$protobuf.Writer} [writer] Writer to encode to
21014 * @returns {$protobuf.Writer} Writer
21015 */
21016 FieldOptions.encode = function encode(message, writer) {
21017 if (!writer)
21018 writer = $Writer.create();
21019 if (message.ctype != null && Object.hasOwnProperty.call(message, "ctype"))
21020 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.ctype);
21021 if (message.packed != null && Object.hasOwnProperty.call(message, "packed"))
21022 writer.uint32(/* id 2, wireType 0 =*/16).bool(message.packed);
21023 if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
21024 writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated);
21025 if (message.lazy != null && Object.hasOwnProperty.call(message, "lazy"))
21026 writer.uint32(/* id 5, wireType 0 =*/40).bool(message.lazy);
21027 if (message.jstype != null && Object.hasOwnProperty.call(message, "jstype"))
21028 writer.uint32(/* id 6, wireType 0 =*/48).int32(message.jstype);
21029 if (message.weak != null && Object.hasOwnProperty.call(message, "weak"))
21030 writer.uint32(/* id 10, wireType 0 =*/80).bool(message.weak);
21031 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
21032 for (var i = 0; i < message.uninterpretedOption.length; ++i)
21033 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
21034 if (message[".google.api.fieldBehavior"] != null && message[".google.api.fieldBehavior"].length) {
21035 writer.uint32(/* id 1052, wireType 2 =*/8418).fork();
21036 for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i)
21037 writer.int32(message[".google.api.fieldBehavior"][i]);
21038 writer.ldelim();
21039 }
21040 return writer;
21041 };
21042
21043 /**
21044 * Encodes the specified FieldOptions message, length delimited. Does not implicitly {@link google.protobuf.FieldOptions.verify|verify} messages.
21045 * @function encodeDelimited
21046 * @memberof google.protobuf.FieldOptions
21047 * @static
21048 * @param {google.protobuf.IFieldOptions} message FieldOptions message or plain object to encode
21049 * @param {$protobuf.Writer} [writer] Writer to encode to
21050 * @returns {$protobuf.Writer} Writer
21051 */
21052 FieldOptions.encodeDelimited = function encodeDelimited(message, writer) {
21053 return this.encode(message, writer).ldelim();
21054 };
21055
21056 /**
21057 * Decodes a FieldOptions message from the specified reader or buffer.
21058 * @function decode
21059 * @memberof google.protobuf.FieldOptions
21060 * @static
21061 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
21062 * @param {number} [length] Message length if known beforehand
21063 * @returns {google.protobuf.FieldOptions} FieldOptions
21064 * @throws {Error} If the payload is not a reader or valid buffer
21065 * @throws {$protobuf.util.ProtocolError} If required fields are missing
21066 */
21067 FieldOptions.decode = function decode(reader, length) {
21068 if (!(reader instanceof $Reader))
21069 reader = $Reader.create(reader);
21070 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FieldOptions();
21071 while (reader.pos < end) {
21072 var tag = reader.uint32();
21073 switch (tag >>> 3) {
21074 case 1:
21075 message.ctype = reader.int32();
21076 break;
21077 case 2:
21078 message.packed = reader.bool();
21079 break;
21080 case 6:
21081 message.jstype = reader.int32();
21082 break;
21083 case 5:
21084 message.lazy = reader.bool();
21085 break;
21086 case 3:
21087 message.deprecated = reader.bool();
21088 break;
21089 case 10:
21090 message.weak = reader.bool();
21091 break;
21092 case 999:
21093 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
21094 message.uninterpretedOption = [];
21095 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
21096 break;
21097 case 1052:
21098 if (!(message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length))
21099 message[".google.api.fieldBehavior"] = [];
21100 if ((tag & 7) === 2) {
21101 var end2 = reader.uint32() + reader.pos;
21102 while (reader.pos < end2)
21103 message[".google.api.fieldBehavior"].push(reader.int32());
21104 } else
21105 message[".google.api.fieldBehavior"].push(reader.int32());
21106 break;
21107 default:
21108 reader.skipType(tag & 7);
21109 break;
21110 }
21111 }
21112 return message;
21113 };
21114
21115 /**
21116 * Decodes a FieldOptions message from the specified reader or buffer, length delimited.
21117 * @function decodeDelimited
21118 * @memberof google.protobuf.FieldOptions
21119 * @static
21120 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
21121 * @returns {google.protobuf.FieldOptions} FieldOptions
21122 * @throws {Error} If the payload is not a reader or valid buffer
21123 * @throws {$protobuf.util.ProtocolError} If required fields are missing
21124 */
21125 FieldOptions.decodeDelimited = function decodeDelimited(reader) {
21126 if (!(reader instanceof $Reader))
21127 reader = new $Reader(reader);
21128 return this.decode(reader, reader.uint32());
21129 };
21130
21131 /**
21132 * Verifies a FieldOptions message.
21133 * @function verify
21134 * @memberof google.protobuf.FieldOptions
21135 * @static
21136 * @param {Object.<string,*>} message Plain object to verify
21137 * @returns {string|null} `null` if valid, otherwise the reason why it is not
21138 */
21139 FieldOptions.verify = function verify(message) {
21140 if (typeof message !== "object" || message === null)
21141 return "object expected";
21142 if (message.ctype != null && message.hasOwnProperty("ctype"))
21143 switch (message.ctype) {
21144 default:
21145 return "ctype: enum value expected";
21146 case 0:
21147 case 1:
21148 case 2:
21149 break;
21150 }
21151 if (message.packed != null && message.hasOwnProperty("packed"))
21152 if (typeof message.packed !== "boolean")
21153 return "packed: boolean expected";
21154 if (message.jstype != null && message.hasOwnProperty("jstype"))
21155 switch (message.jstype) {
21156 default:
21157 return "jstype: enum value expected";
21158 case 0:
21159 case 1:
21160 case 2:
21161 break;
21162 }
21163 if (message.lazy != null && message.hasOwnProperty("lazy"))
21164 if (typeof message.lazy !== "boolean")
21165 return "lazy: boolean expected";
21166 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
21167 if (typeof message.deprecated !== "boolean")
21168 return "deprecated: boolean expected";
21169 if (message.weak != null && message.hasOwnProperty("weak"))
21170 if (typeof message.weak !== "boolean")
21171 return "weak: boolean expected";
21172 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
21173 if (!Array.isArray(message.uninterpretedOption))
21174 return "uninterpretedOption: array expected";
21175 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
21176 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
21177 if (error)
21178 return "uninterpretedOption." + error;
21179 }
21180 }
21181 if (message[".google.api.fieldBehavior"] != null && message.hasOwnProperty(".google.api.fieldBehavior")) {
21182 if (!Array.isArray(message[".google.api.fieldBehavior"]))
21183 return ".google.api.fieldBehavior: array expected";
21184 for (var i = 0; i < message[".google.api.fieldBehavior"].length; ++i)
21185 switch (message[".google.api.fieldBehavior"][i]) {
21186 default:
21187 return ".google.api.fieldBehavior: enum value[] expected";
21188 case 0:
21189 case 1:
21190 case 2:
21191 case 3:
21192 case 4:
21193 case 5:
21194 case 6:
21195 break;
21196 }
21197 }
21198 return null;
21199 };
21200
21201 /**
21202 * Creates a FieldOptions message from a plain object. Also converts values to their respective internal types.
21203 * @function fromObject
21204 * @memberof google.protobuf.FieldOptions
21205 * @static
21206 * @param {Object.<string,*>} object Plain object
21207 * @returns {google.protobuf.FieldOptions} FieldOptions
21208 */
21209 FieldOptions.fromObject = function fromObject(object) {
21210 if (object instanceof $root.google.protobuf.FieldOptions)
21211 return object;
21212 var message = new $root.google.protobuf.FieldOptions();
21213 switch (object.ctype) {
21214 case "STRING":
21215 case 0:
21216 message.ctype = 0;
21217 break;
21218 case "CORD":
21219 case 1:
21220 message.ctype = 1;
21221 break;
21222 case "STRING_PIECE":
21223 case 2:
21224 message.ctype = 2;
21225 break;
21226 }
21227 if (object.packed != null)
21228 message.packed = Boolean(object.packed);
21229 switch (object.jstype) {
21230 case "JS_NORMAL":
21231 case 0:
21232 message.jstype = 0;
21233 break;
21234 case "JS_STRING":
21235 case 1:
21236 message.jstype = 1;
21237 break;
21238 case "JS_NUMBER":
21239 case 2:
21240 message.jstype = 2;
21241 break;
21242 }
21243 if (object.lazy != null)
21244 message.lazy = Boolean(object.lazy);
21245 if (object.deprecated != null)
21246 message.deprecated = Boolean(object.deprecated);
21247 if (object.weak != null)
21248 message.weak = Boolean(object.weak);
21249 if (object.uninterpretedOption) {
21250 if (!Array.isArray(object.uninterpretedOption))
21251 throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: array expected");
21252 message.uninterpretedOption = [];
21253 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
21254 if (typeof object.uninterpretedOption[i] !== "object")
21255 throw TypeError(".google.protobuf.FieldOptions.uninterpretedOption: object expected");
21256 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
21257 }
21258 }
21259 if (object[".google.api.fieldBehavior"]) {
21260 if (!Array.isArray(object[".google.api.fieldBehavior"]))
21261 throw TypeError(".google.protobuf.FieldOptions..google.api.fieldBehavior: array expected");
21262 message[".google.api.fieldBehavior"] = [];
21263 for (var i = 0; i < object[".google.api.fieldBehavior"].length; ++i)
21264 switch (object[".google.api.fieldBehavior"][i]) {
21265 default:
21266 case "FIELD_BEHAVIOR_UNSPECIFIED":
21267 case 0:
21268 message[".google.api.fieldBehavior"][i] = 0;
21269 break;
21270 case "OPTIONAL":
21271 case 1:
21272 message[".google.api.fieldBehavior"][i] = 1;
21273 break;
21274 case "REQUIRED":
21275 case 2:
21276 message[".google.api.fieldBehavior"][i] = 2;
21277 break;
21278 case "OUTPUT_ONLY":
21279 case 3:
21280 message[".google.api.fieldBehavior"][i] = 3;
21281 break;
21282 case "INPUT_ONLY":
21283 case 4:
21284 message[".google.api.fieldBehavior"][i] = 4;
21285 break;
21286 case "IMMUTABLE":
21287 case 5:
21288 message[".google.api.fieldBehavior"][i] = 5;
21289 break;
21290 case "UNORDERED_LIST":
21291 case 6:
21292 message[".google.api.fieldBehavior"][i] = 6;
21293 break;
21294 }
21295 }
21296 return message;
21297 };
21298
21299 /**
21300 * Creates a plain object from a FieldOptions message. Also converts values to other types if specified.
21301 * @function toObject
21302 * @memberof google.protobuf.FieldOptions
21303 * @static
21304 * @param {google.protobuf.FieldOptions} message FieldOptions
21305 * @param {$protobuf.IConversionOptions} [options] Conversion options
21306 * @returns {Object.<string,*>} Plain object
21307 */
21308 FieldOptions.toObject = function toObject(message, options) {
21309 if (!options)
21310 options = {};
21311 var object = {};
21312 if (options.arrays || options.defaults) {
21313 object.uninterpretedOption = [];
21314 object[".google.api.fieldBehavior"] = [];
21315 }
21316 if (options.defaults) {
21317 object.ctype = options.enums === String ? "STRING" : 0;
21318 object.packed = false;
21319 object.deprecated = false;
21320 object.lazy = false;
21321 object.jstype = options.enums === String ? "JS_NORMAL" : 0;
21322 object.weak = false;
21323 }
21324 if (message.ctype != null && message.hasOwnProperty("ctype"))
21325 object.ctype = options.enums === String ? $root.google.protobuf.FieldOptions.CType[message.ctype] : message.ctype;
21326 if (message.packed != null && message.hasOwnProperty("packed"))
21327 object.packed = message.packed;
21328 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
21329 object.deprecated = message.deprecated;
21330 if (message.lazy != null && message.hasOwnProperty("lazy"))
21331 object.lazy = message.lazy;
21332 if (message.jstype != null && message.hasOwnProperty("jstype"))
21333 object.jstype = options.enums === String ? $root.google.protobuf.FieldOptions.JSType[message.jstype] : message.jstype;
21334 if (message.weak != null && message.hasOwnProperty("weak"))
21335 object.weak = message.weak;
21336 if (message.uninterpretedOption && message.uninterpretedOption.length) {
21337 object.uninterpretedOption = [];
21338 for (var j = 0; j < message.uninterpretedOption.length; ++j)
21339 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
21340 }
21341 if (message[".google.api.fieldBehavior"] && message[".google.api.fieldBehavior"].length) {
21342 object[".google.api.fieldBehavior"] = [];
21343 for (var j = 0; j < message[".google.api.fieldBehavior"].length; ++j)
21344 object[".google.api.fieldBehavior"][j] = options.enums === String ? $root.google.api.FieldBehavior[message[".google.api.fieldBehavior"][j]] : message[".google.api.fieldBehavior"][j];
21345 }
21346 return object;
21347 };
21348
21349 /**
21350 * Converts this FieldOptions to JSON.
21351 * @function toJSON
21352 * @memberof google.protobuf.FieldOptions
21353 * @instance
21354 * @returns {Object.<string,*>} JSON object
21355 */
21356 FieldOptions.prototype.toJSON = function toJSON() {
21357 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
21358 };
21359
21360 /**
21361 * CType enum.
21362 * @name google.protobuf.FieldOptions.CType
21363 * @enum {number}
21364 * @property {number} STRING=0 STRING value
21365 * @property {number} CORD=1 CORD value
21366 * @property {number} STRING_PIECE=2 STRING_PIECE value
21367 */
21368 FieldOptions.CType = (function() {
21369 var valuesById = {}, values = Object.create(valuesById);
21370 values[valuesById[0] = "STRING"] = 0;
21371 values[valuesById[1] = "CORD"] = 1;
21372 values[valuesById[2] = "STRING_PIECE"] = 2;
21373 return values;
21374 })();
21375
21376 /**
21377 * JSType enum.
21378 * @name google.protobuf.FieldOptions.JSType
21379 * @enum {number}
21380 * @property {number} JS_NORMAL=0 JS_NORMAL value
21381 * @property {number} JS_STRING=1 JS_STRING value
21382 * @property {number} JS_NUMBER=2 JS_NUMBER value
21383 */
21384 FieldOptions.JSType = (function() {
21385 var valuesById = {}, values = Object.create(valuesById);
21386 values[valuesById[0] = "JS_NORMAL"] = 0;
21387 values[valuesById[1] = "JS_STRING"] = 1;
21388 values[valuesById[2] = "JS_NUMBER"] = 2;
21389 return values;
21390 })();
21391
21392 return FieldOptions;
21393 })();
21394
21395 protobuf.OneofOptions = (function() {
21396
21397 /**
21398 * Properties of an OneofOptions.
21399 * @memberof google.protobuf
21400 * @interface IOneofOptions
21401 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] OneofOptions uninterpretedOption
21402 */
21403
21404 /**
21405 * Constructs a new OneofOptions.
21406 * @memberof google.protobuf
21407 * @classdesc Represents an OneofOptions.
21408 * @implements IOneofOptions
21409 * @constructor
21410 * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
21411 */
21412 function OneofOptions(properties) {
21413 this.uninterpretedOption = [];
21414 if (properties)
21415 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
21416 if (properties[keys[i]] != null)
21417 this[keys[i]] = properties[keys[i]];
21418 }
21419
21420 /**
21421 * OneofOptions uninterpretedOption.
21422 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
21423 * @memberof google.protobuf.OneofOptions
21424 * @instance
21425 */
21426 OneofOptions.prototype.uninterpretedOption = $util.emptyArray;
21427
21428 /**
21429 * Creates a new OneofOptions instance using the specified properties.
21430 * @function create
21431 * @memberof google.protobuf.OneofOptions
21432 * @static
21433 * @param {google.protobuf.IOneofOptions=} [properties] Properties to set
21434 * @returns {google.protobuf.OneofOptions} OneofOptions instance
21435 */
21436 OneofOptions.create = function create(properties) {
21437 return new OneofOptions(properties);
21438 };
21439
21440 /**
21441 * Encodes the specified OneofOptions message. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
21442 * @function encode
21443 * @memberof google.protobuf.OneofOptions
21444 * @static
21445 * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
21446 * @param {$protobuf.Writer} [writer] Writer to encode to
21447 * @returns {$protobuf.Writer} Writer
21448 */
21449 OneofOptions.encode = function encode(message, writer) {
21450 if (!writer)
21451 writer = $Writer.create();
21452 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
21453 for (var i = 0; i < message.uninterpretedOption.length; ++i)
21454 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
21455 return writer;
21456 };
21457
21458 /**
21459 * Encodes the specified OneofOptions message, length delimited. Does not implicitly {@link google.protobuf.OneofOptions.verify|verify} messages.
21460 * @function encodeDelimited
21461 * @memberof google.protobuf.OneofOptions
21462 * @static
21463 * @param {google.protobuf.IOneofOptions} message OneofOptions message or plain object to encode
21464 * @param {$protobuf.Writer} [writer] Writer to encode to
21465 * @returns {$protobuf.Writer} Writer
21466 */
21467 OneofOptions.encodeDelimited = function encodeDelimited(message, writer) {
21468 return this.encode(message, writer).ldelim();
21469 };
21470
21471 /**
21472 * Decodes an OneofOptions message from the specified reader or buffer.
21473 * @function decode
21474 * @memberof google.protobuf.OneofOptions
21475 * @static
21476 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
21477 * @param {number} [length] Message length if known beforehand
21478 * @returns {google.protobuf.OneofOptions} OneofOptions
21479 * @throws {Error} If the payload is not a reader or valid buffer
21480 * @throws {$protobuf.util.ProtocolError} If required fields are missing
21481 */
21482 OneofOptions.decode = function decode(reader, length) {
21483 if (!(reader instanceof $Reader))
21484 reader = $Reader.create(reader);
21485 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.OneofOptions();
21486 while (reader.pos < end) {
21487 var tag = reader.uint32();
21488 switch (tag >>> 3) {
21489 case 999:
21490 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
21491 message.uninterpretedOption = [];
21492 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
21493 break;
21494 default:
21495 reader.skipType(tag & 7);
21496 break;
21497 }
21498 }
21499 return message;
21500 };
21501
21502 /**
21503 * Decodes an OneofOptions message from the specified reader or buffer, length delimited.
21504 * @function decodeDelimited
21505 * @memberof google.protobuf.OneofOptions
21506 * @static
21507 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
21508 * @returns {google.protobuf.OneofOptions} OneofOptions
21509 * @throws {Error} If the payload is not a reader or valid buffer
21510 * @throws {$protobuf.util.ProtocolError} If required fields are missing
21511 */
21512 OneofOptions.decodeDelimited = function decodeDelimited(reader) {
21513 if (!(reader instanceof $Reader))
21514 reader = new $Reader(reader);
21515 return this.decode(reader, reader.uint32());
21516 };
21517
21518 /**
21519 * Verifies an OneofOptions message.
21520 * @function verify
21521 * @memberof google.protobuf.OneofOptions
21522 * @static
21523 * @param {Object.<string,*>} message Plain object to verify
21524 * @returns {string|null} `null` if valid, otherwise the reason why it is not
21525 */
21526 OneofOptions.verify = function verify(message) {
21527 if (typeof message !== "object" || message === null)
21528 return "object expected";
21529 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
21530 if (!Array.isArray(message.uninterpretedOption))
21531 return "uninterpretedOption: array expected";
21532 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
21533 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
21534 if (error)
21535 return "uninterpretedOption." + error;
21536 }
21537 }
21538 return null;
21539 };
21540
21541 /**
21542 * Creates an OneofOptions message from a plain object. Also converts values to their respective internal types.
21543 * @function fromObject
21544 * @memberof google.protobuf.OneofOptions
21545 * @static
21546 * @param {Object.<string,*>} object Plain object
21547 * @returns {google.protobuf.OneofOptions} OneofOptions
21548 */
21549 OneofOptions.fromObject = function fromObject(object) {
21550 if (object instanceof $root.google.protobuf.OneofOptions)
21551 return object;
21552 var message = new $root.google.protobuf.OneofOptions();
21553 if (object.uninterpretedOption) {
21554 if (!Array.isArray(object.uninterpretedOption))
21555 throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: array expected");
21556 message.uninterpretedOption = [];
21557 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
21558 if (typeof object.uninterpretedOption[i] !== "object")
21559 throw TypeError(".google.protobuf.OneofOptions.uninterpretedOption: object expected");
21560 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
21561 }
21562 }
21563 return message;
21564 };
21565
21566 /**
21567 * Creates a plain object from an OneofOptions message. Also converts values to other types if specified.
21568 * @function toObject
21569 * @memberof google.protobuf.OneofOptions
21570 * @static
21571 * @param {google.protobuf.OneofOptions} message OneofOptions
21572 * @param {$protobuf.IConversionOptions} [options] Conversion options
21573 * @returns {Object.<string,*>} Plain object
21574 */
21575 OneofOptions.toObject = function toObject(message, options) {
21576 if (!options)
21577 options = {};
21578 var object = {};
21579 if (options.arrays || options.defaults)
21580 object.uninterpretedOption = [];
21581 if (message.uninterpretedOption && message.uninterpretedOption.length) {
21582 object.uninterpretedOption = [];
21583 for (var j = 0; j < message.uninterpretedOption.length; ++j)
21584 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
21585 }
21586 return object;
21587 };
21588
21589 /**
21590 * Converts this OneofOptions to JSON.
21591 * @function toJSON
21592 * @memberof google.protobuf.OneofOptions
21593 * @instance
21594 * @returns {Object.<string,*>} JSON object
21595 */
21596 OneofOptions.prototype.toJSON = function toJSON() {
21597 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
21598 };
21599
21600 return OneofOptions;
21601 })();
21602
21603 protobuf.EnumOptions = (function() {
21604
21605 /**
21606 * Properties of an EnumOptions.
21607 * @memberof google.protobuf
21608 * @interface IEnumOptions
21609 * @property {boolean|null} [allowAlias] EnumOptions allowAlias
21610 * @property {boolean|null} [deprecated] EnumOptions deprecated
21611 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] EnumOptions uninterpretedOption
21612 */
21613
21614 /**
21615 * Constructs a new EnumOptions.
21616 * @memberof google.protobuf
21617 * @classdesc Represents an EnumOptions.
21618 * @implements IEnumOptions
21619 * @constructor
21620 * @param {google.protobuf.IEnumOptions=} [properties] Properties to set
21621 */
21622 function EnumOptions(properties) {
21623 this.uninterpretedOption = [];
21624 if (properties)
21625 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
21626 if (properties[keys[i]] != null)
21627 this[keys[i]] = properties[keys[i]];
21628 }
21629
21630 /**
21631 * EnumOptions allowAlias.
21632 * @member {boolean} allowAlias
21633 * @memberof google.protobuf.EnumOptions
21634 * @instance
21635 */
21636 EnumOptions.prototype.allowAlias = false;
21637
21638 /**
21639 * EnumOptions deprecated.
21640 * @member {boolean} deprecated
21641 * @memberof google.protobuf.EnumOptions
21642 * @instance
21643 */
21644 EnumOptions.prototype.deprecated = false;
21645
21646 /**
21647 * EnumOptions uninterpretedOption.
21648 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
21649 * @memberof google.protobuf.EnumOptions
21650 * @instance
21651 */
21652 EnumOptions.prototype.uninterpretedOption = $util.emptyArray;
21653
21654 /**
21655 * Creates a new EnumOptions instance using the specified properties.
21656 * @function create
21657 * @memberof google.protobuf.EnumOptions
21658 * @static
21659 * @param {google.protobuf.IEnumOptions=} [properties] Properties to set
21660 * @returns {google.protobuf.EnumOptions} EnumOptions instance
21661 */
21662 EnumOptions.create = function create(properties) {
21663 return new EnumOptions(properties);
21664 };
21665
21666 /**
21667 * Encodes the specified EnumOptions message. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages.
21668 * @function encode
21669 * @memberof google.protobuf.EnumOptions
21670 * @static
21671 * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode
21672 * @param {$protobuf.Writer} [writer] Writer to encode to
21673 * @returns {$protobuf.Writer} Writer
21674 */
21675 EnumOptions.encode = function encode(message, writer) {
21676 if (!writer)
21677 writer = $Writer.create();
21678 if (message.allowAlias != null && Object.hasOwnProperty.call(message, "allowAlias"))
21679 writer.uint32(/* id 2, wireType 0 =*/16).bool(message.allowAlias);
21680 if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
21681 writer.uint32(/* id 3, wireType 0 =*/24).bool(message.deprecated);
21682 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
21683 for (var i = 0; i < message.uninterpretedOption.length; ++i)
21684 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
21685 return writer;
21686 };
21687
21688 /**
21689 * Encodes the specified EnumOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumOptions.verify|verify} messages.
21690 * @function encodeDelimited
21691 * @memberof google.protobuf.EnumOptions
21692 * @static
21693 * @param {google.protobuf.IEnumOptions} message EnumOptions message or plain object to encode
21694 * @param {$protobuf.Writer} [writer] Writer to encode to
21695 * @returns {$protobuf.Writer} Writer
21696 */
21697 EnumOptions.encodeDelimited = function encodeDelimited(message, writer) {
21698 return this.encode(message, writer).ldelim();
21699 };
21700
21701 /**
21702 * Decodes an EnumOptions message from the specified reader or buffer.
21703 * @function decode
21704 * @memberof google.protobuf.EnumOptions
21705 * @static
21706 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
21707 * @param {number} [length] Message length if known beforehand
21708 * @returns {google.protobuf.EnumOptions} EnumOptions
21709 * @throws {Error} If the payload is not a reader or valid buffer
21710 * @throws {$protobuf.util.ProtocolError} If required fields are missing
21711 */
21712 EnumOptions.decode = function decode(reader, length) {
21713 if (!(reader instanceof $Reader))
21714 reader = $Reader.create(reader);
21715 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumOptions();
21716 while (reader.pos < end) {
21717 var tag = reader.uint32();
21718 switch (tag >>> 3) {
21719 case 2:
21720 message.allowAlias = reader.bool();
21721 break;
21722 case 3:
21723 message.deprecated = reader.bool();
21724 break;
21725 case 999:
21726 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
21727 message.uninterpretedOption = [];
21728 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
21729 break;
21730 default:
21731 reader.skipType(tag & 7);
21732 break;
21733 }
21734 }
21735 return message;
21736 };
21737
21738 /**
21739 * Decodes an EnumOptions message from the specified reader or buffer, length delimited.
21740 * @function decodeDelimited
21741 * @memberof google.protobuf.EnumOptions
21742 * @static
21743 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
21744 * @returns {google.protobuf.EnumOptions} EnumOptions
21745 * @throws {Error} If the payload is not a reader or valid buffer
21746 * @throws {$protobuf.util.ProtocolError} If required fields are missing
21747 */
21748 EnumOptions.decodeDelimited = function decodeDelimited(reader) {
21749 if (!(reader instanceof $Reader))
21750 reader = new $Reader(reader);
21751 return this.decode(reader, reader.uint32());
21752 };
21753
21754 /**
21755 * Verifies an EnumOptions message.
21756 * @function verify
21757 * @memberof google.protobuf.EnumOptions
21758 * @static
21759 * @param {Object.<string,*>} message Plain object to verify
21760 * @returns {string|null} `null` if valid, otherwise the reason why it is not
21761 */
21762 EnumOptions.verify = function verify(message) {
21763 if (typeof message !== "object" || message === null)
21764 return "object expected";
21765 if (message.allowAlias != null && message.hasOwnProperty("allowAlias"))
21766 if (typeof message.allowAlias !== "boolean")
21767 return "allowAlias: boolean expected";
21768 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
21769 if (typeof message.deprecated !== "boolean")
21770 return "deprecated: boolean expected";
21771 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
21772 if (!Array.isArray(message.uninterpretedOption))
21773 return "uninterpretedOption: array expected";
21774 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
21775 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
21776 if (error)
21777 return "uninterpretedOption." + error;
21778 }
21779 }
21780 return null;
21781 };
21782
21783 /**
21784 * Creates an EnumOptions message from a plain object. Also converts values to their respective internal types.
21785 * @function fromObject
21786 * @memberof google.protobuf.EnumOptions
21787 * @static
21788 * @param {Object.<string,*>} object Plain object
21789 * @returns {google.protobuf.EnumOptions} EnumOptions
21790 */
21791 EnumOptions.fromObject = function fromObject(object) {
21792 if (object instanceof $root.google.protobuf.EnumOptions)
21793 return object;
21794 var message = new $root.google.protobuf.EnumOptions();
21795 if (object.allowAlias != null)
21796 message.allowAlias = Boolean(object.allowAlias);
21797 if (object.deprecated != null)
21798 message.deprecated = Boolean(object.deprecated);
21799 if (object.uninterpretedOption) {
21800 if (!Array.isArray(object.uninterpretedOption))
21801 throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: array expected");
21802 message.uninterpretedOption = [];
21803 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
21804 if (typeof object.uninterpretedOption[i] !== "object")
21805 throw TypeError(".google.protobuf.EnumOptions.uninterpretedOption: object expected");
21806 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
21807 }
21808 }
21809 return message;
21810 };
21811
21812 /**
21813 * Creates a plain object from an EnumOptions message. Also converts values to other types if specified.
21814 * @function toObject
21815 * @memberof google.protobuf.EnumOptions
21816 * @static
21817 * @param {google.protobuf.EnumOptions} message EnumOptions
21818 * @param {$protobuf.IConversionOptions} [options] Conversion options
21819 * @returns {Object.<string,*>} Plain object
21820 */
21821 EnumOptions.toObject = function toObject(message, options) {
21822 if (!options)
21823 options = {};
21824 var object = {};
21825 if (options.arrays || options.defaults)
21826 object.uninterpretedOption = [];
21827 if (options.defaults) {
21828 object.allowAlias = false;
21829 object.deprecated = false;
21830 }
21831 if (message.allowAlias != null && message.hasOwnProperty("allowAlias"))
21832 object.allowAlias = message.allowAlias;
21833 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
21834 object.deprecated = message.deprecated;
21835 if (message.uninterpretedOption && message.uninterpretedOption.length) {
21836 object.uninterpretedOption = [];
21837 for (var j = 0; j < message.uninterpretedOption.length; ++j)
21838 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
21839 }
21840 return object;
21841 };
21842
21843 /**
21844 * Converts this EnumOptions to JSON.
21845 * @function toJSON
21846 * @memberof google.protobuf.EnumOptions
21847 * @instance
21848 * @returns {Object.<string,*>} JSON object
21849 */
21850 EnumOptions.prototype.toJSON = function toJSON() {
21851 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
21852 };
21853
21854 return EnumOptions;
21855 })();
21856
21857 protobuf.EnumValueOptions = (function() {
21858
21859 /**
21860 * Properties of an EnumValueOptions.
21861 * @memberof google.protobuf
21862 * @interface IEnumValueOptions
21863 * @property {boolean|null} [deprecated] EnumValueOptions deprecated
21864 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] EnumValueOptions uninterpretedOption
21865 */
21866
21867 /**
21868 * Constructs a new EnumValueOptions.
21869 * @memberof google.protobuf
21870 * @classdesc Represents an EnumValueOptions.
21871 * @implements IEnumValueOptions
21872 * @constructor
21873 * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set
21874 */
21875 function EnumValueOptions(properties) {
21876 this.uninterpretedOption = [];
21877 if (properties)
21878 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
21879 if (properties[keys[i]] != null)
21880 this[keys[i]] = properties[keys[i]];
21881 }
21882
21883 /**
21884 * EnumValueOptions deprecated.
21885 * @member {boolean} deprecated
21886 * @memberof google.protobuf.EnumValueOptions
21887 * @instance
21888 */
21889 EnumValueOptions.prototype.deprecated = false;
21890
21891 /**
21892 * EnumValueOptions uninterpretedOption.
21893 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
21894 * @memberof google.protobuf.EnumValueOptions
21895 * @instance
21896 */
21897 EnumValueOptions.prototype.uninterpretedOption = $util.emptyArray;
21898
21899 /**
21900 * Creates a new EnumValueOptions instance using the specified properties.
21901 * @function create
21902 * @memberof google.protobuf.EnumValueOptions
21903 * @static
21904 * @param {google.protobuf.IEnumValueOptions=} [properties] Properties to set
21905 * @returns {google.protobuf.EnumValueOptions} EnumValueOptions instance
21906 */
21907 EnumValueOptions.create = function create(properties) {
21908 return new EnumValueOptions(properties);
21909 };
21910
21911 /**
21912 * Encodes the specified EnumValueOptions message. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages.
21913 * @function encode
21914 * @memberof google.protobuf.EnumValueOptions
21915 * @static
21916 * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode
21917 * @param {$protobuf.Writer} [writer] Writer to encode to
21918 * @returns {$protobuf.Writer} Writer
21919 */
21920 EnumValueOptions.encode = function encode(message, writer) {
21921 if (!writer)
21922 writer = $Writer.create();
21923 if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
21924 writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deprecated);
21925 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
21926 for (var i = 0; i < message.uninterpretedOption.length; ++i)
21927 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
21928 return writer;
21929 };
21930
21931 /**
21932 * Encodes the specified EnumValueOptions message, length delimited. Does not implicitly {@link google.protobuf.EnumValueOptions.verify|verify} messages.
21933 * @function encodeDelimited
21934 * @memberof google.protobuf.EnumValueOptions
21935 * @static
21936 * @param {google.protobuf.IEnumValueOptions} message EnumValueOptions message or plain object to encode
21937 * @param {$protobuf.Writer} [writer] Writer to encode to
21938 * @returns {$protobuf.Writer} Writer
21939 */
21940 EnumValueOptions.encodeDelimited = function encodeDelimited(message, writer) {
21941 return this.encode(message, writer).ldelim();
21942 };
21943
21944 /**
21945 * Decodes an EnumValueOptions message from the specified reader or buffer.
21946 * @function decode
21947 * @memberof google.protobuf.EnumValueOptions
21948 * @static
21949 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
21950 * @param {number} [length] Message length if known beforehand
21951 * @returns {google.protobuf.EnumValueOptions} EnumValueOptions
21952 * @throws {Error} If the payload is not a reader or valid buffer
21953 * @throws {$protobuf.util.ProtocolError} If required fields are missing
21954 */
21955 EnumValueOptions.decode = function decode(reader, length) {
21956 if (!(reader instanceof $Reader))
21957 reader = $Reader.create(reader);
21958 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.EnumValueOptions();
21959 while (reader.pos < end) {
21960 var tag = reader.uint32();
21961 switch (tag >>> 3) {
21962 case 1:
21963 message.deprecated = reader.bool();
21964 break;
21965 case 999:
21966 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
21967 message.uninterpretedOption = [];
21968 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
21969 break;
21970 default:
21971 reader.skipType(tag & 7);
21972 break;
21973 }
21974 }
21975 return message;
21976 };
21977
21978 /**
21979 * Decodes an EnumValueOptions message from the specified reader or buffer, length delimited.
21980 * @function decodeDelimited
21981 * @memberof google.protobuf.EnumValueOptions
21982 * @static
21983 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
21984 * @returns {google.protobuf.EnumValueOptions} EnumValueOptions
21985 * @throws {Error} If the payload is not a reader or valid buffer
21986 * @throws {$protobuf.util.ProtocolError} If required fields are missing
21987 */
21988 EnumValueOptions.decodeDelimited = function decodeDelimited(reader) {
21989 if (!(reader instanceof $Reader))
21990 reader = new $Reader(reader);
21991 return this.decode(reader, reader.uint32());
21992 };
21993
21994 /**
21995 * Verifies an EnumValueOptions message.
21996 * @function verify
21997 * @memberof google.protobuf.EnumValueOptions
21998 * @static
21999 * @param {Object.<string,*>} message Plain object to verify
22000 * @returns {string|null} `null` if valid, otherwise the reason why it is not
22001 */
22002 EnumValueOptions.verify = function verify(message) {
22003 if (typeof message !== "object" || message === null)
22004 return "object expected";
22005 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
22006 if (typeof message.deprecated !== "boolean")
22007 return "deprecated: boolean expected";
22008 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
22009 if (!Array.isArray(message.uninterpretedOption))
22010 return "uninterpretedOption: array expected";
22011 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
22012 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
22013 if (error)
22014 return "uninterpretedOption." + error;
22015 }
22016 }
22017 return null;
22018 };
22019
22020 /**
22021 * Creates an EnumValueOptions message from a plain object. Also converts values to their respective internal types.
22022 * @function fromObject
22023 * @memberof google.protobuf.EnumValueOptions
22024 * @static
22025 * @param {Object.<string,*>} object Plain object
22026 * @returns {google.protobuf.EnumValueOptions} EnumValueOptions
22027 */
22028 EnumValueOptions.fromObject = function fromObject(object) {
22029 if (object instanceof $root.google.protobuf.EnumValueOptions)
22030 return object;
22031 var message = new $root.google.protobuf.EnumValueOptions();
22032 if (object.deprecated != null)
22033 message.deprecated = Boolean(object.deprecated);
22034 if (object.uninterpretedOption) {
22035 if (!Array.isArray(object.uninterpretedOption))
22036 throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: array expected");
22037 message.uninterpretedOption = [];
22038 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
22039 if (typeof object.uninterpretedOption[i] !== "object")
22040 throw TypeError(".google.protobuf.EnumValueOptions.uninterpretedOption: object expected");
22041 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
22042 }
22043 }
22044 return message;
22045 };
22046
22047 /**
22048 * Creates a plain object from an EnumValueOptions message. Also converts values to other types if specified.
22049 * @function toObject
22050 * @memberof google.protobuf.EnumValueOptions
22051 * @static
22052 * @param {google.protobuf.EnumValueOptions} message EnumValueOptions
22053 * @param {$protobuf.IConversionOptions} [options] Conversion options
22054 * @returns {Object.<string,*>} Plain object
22055 */
22056 EnumValueOptions.toObject = function toObject(message, options) {
22057 if (!options)
22058 options = {};
22059 var object = {};
22060 if (options.arrays || options.defaults)
22061 object.uninterpretedOption = [];
22062 if (options.defaults)
22063 object.deprecated = false;
22064 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
22065 object.deprecated = message.deprecated;
22066 if (message.uninterpretedOption && message.uninterpretedOption.length) {
22067 object.uninterpretedOption = [];
22068 for (var j = 0; j < message.uninterpretedOption.length; ++j)
22069 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
22070 }
22071 return object;
22072 };
22073
22074 /**
22075 * Converts this EnumValueOptions to JSON.
22076 * @function toJSON
22077 * @memberof google.protobuf.EnumValueOptions
22078 * @instance
22079 * @returns {Object.<string,*>} JSON object
22080 */
22081 EnumValueOptions.prototype.toJSON = function toJSON() {
22082 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22083 };
22084
22085 return EnumValueOptions;
22086 })();
22087
22088 protobuf.ServiceOptions = (function() {
22089
22090 /**
22091 * Properties of a ServiceOptions.
22092 * @memberof google.protobuf
22093 * @interface IServiceOptions
22094 * @property {boolean|null} [deprecated] ServiceOptions deprecated
22095 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] ServiceOptions uninterpretedOption
22096 * @property {string|null} [".google.api.defaultHost"] ServiceOptions .google.api.defaultHost
22097 * @property {string|null} [".google.api.oauthScopes"] ServiceOptions .google.api.oauthScopes
22098 */
22099
22100 /**
22101 * Constructs a new ServiceOptions.
22102 * @memberof google.protobuf
22103 * @classdesc Represents a ServiceOptions.
22104 * @implements IServiceOptions
22105 * @constructor
22106 * @param {google.protobuf.IServiceOptions=} [properties] Properties to set
22107 */
22108 function ServiceOptions(properties) {
22109 this.uninterpretedOption = [];
22110 if (properties)
22111 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
22112 if (properties[keys[i]] != null)
22113 this[keys[i]] = properties[keys[i]];
22114 }
22115
22116 /**
22117 * ServiceOptions deprecated.
22118 * @member {boolean} deprecated
22119 * @memberof google.protobuf.ServiceOptions
22120 * @instance
22121 */
22122 ServiceOptions.prototype.deprecated = false;
22123
22124 /**
22125 * ServiceOptions uninterpretedOption.
22126 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
22127 * @memberof google.protobuf.ServiceOptions
22128 * @instance
22129 */
22130 ServiceOptions.prototype.uninterpretedOption = $util.emptyArray;
22131
22132 /**
22133 * ServiceOptions .google.api.defaultHost.
22134 * @member {string} .google.api.defaultHost
22135 * @memberof google.protobuf.ServiceOptions
22136 * @instance
22137 */
22138 ServiceOptions.prototype[".google.api.defaultHost"] = "";
22139
22140 /**
22141 * ServiceOptions .google.api.oauthScopes.
22142 * @member {string} .google.api.oauthScopes
22143 * @memberof google.protobuf.ServiceOptions
22144 * @instance
22145 */
22146 ServiceOptions.prototype[".google.api.oauthScopes"] = "";
22147
22148 /**
22149 * Creates a new ServiceOptions instance using the specified properties.
22150 * @function create
22151 * @memberof google.protobuf.ServiceOptions
22152 * @static
22153 * @param {google.protobuf.IServiceOptions=} [properties] Properties to set
22154 * @returns {google.protobuf.ServiceOptions} ServiceOptions instance
22155 */
22156 ServiceOptions.create = function create(properties) {
22157 return new ServiceOptions(properties);
22158 };
22159
22160 /**
22161 * Encodes the specified ServiceOptions message. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages.
22162 * @function encode
22163 * @memberof google.protobuf.ServiceOptions
22164 * @static
22165 * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode
22166 * @param {$protobuf.Writer} [writer] Writer to encode to
22167 * @returns {$protobuf.Writer} Writer
22168 */
22169 ServiceOptions.encode = function encode(message, writer) {
22170 if (!writer)
22171 writer = $Writer.create();
22172 if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
22173 writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated);
22174 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
22175 for (var i = 0; i < message.uninterpretedOption.length; ++i)
22176 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
22177 if (message[".google.api.defaultHost"] != null && Object.hasOwnProperty.call(message, ".google.api.defaultHost"))
22178 writer.uint32(/* id 1049, wireType 2 =*/8394).string(message[".google.api.defaultHost"]);
22179 if (message[".google.api.oauthScopes"] != null && Object.hasOwnProperty.call(message, ".google.api.oauthScopes"))
22180 writer.uint32(/* id 1050, wireType 2 =*/8402).string(message[".google.api.oauthScopes"]);
22181 return writer;
22182 };
22183
22184 /**
22185 * Encodes the specified ServiceOptions message, length delimited. Does not implicitly {@link google.protobuf.ServiceOptions.verify|verify} messages.
22186 * @function encodeDelimited
22187 * @memberof google.protobuf.ServiceOptions
22188 * @static
22189 * @param {google.protobuf.IServiceOptions} message ServiceOptions message or plain object to encode
22190 * @param {$protobuf.Writer} [writer] Writer to encode to
22191 * @returns {$protobuf.Writer} Writer
22192 */
22193 ServiceOptions.encodeDelimited = function encodeDelimited(message, writer) {
22194 return this.encode(message, writer).ldelim();
22195 };
22196
22197 /**
22198 * Decodes a ServiceOptions message from the specified reader or buffer.
22199 * @function decode
22200 * @memberof google.protobuf.ServiceOptions
22201 * @static
22202 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
22203 * @param {number} [length] Message length if known beforehand
22204 * @returns {google.protobuf.ServiceOptions} ServiceOptions
22205 * @throws {Error} If the payload is not a reader or valid buffer
22206 * @throws {$protobuf.util.ProtocolError} If required fields are missing
22207 */
22208 ServiceOptions.decode = function decode(reader, length) {
22209 if (!(reader instanceof $Reader))
22210 reader = $Reader.create(reader);
22211 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ServiceOptions();
22212 while (reader.pos < end) {
22213 var tag = reader.uint32();
22214 switch (tag >>> 3) {
22215 case 33:
22216 message.deprecated = reader.bool();
22217 break;
22218 case 999:
22219 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
22220 message.uninterpretedOption = [];
22221 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
22222 break;
22223 case 1049:
22224 message[".google.api.defaultHost"] = reader.string();
22225 break;
22226 case 1050:
22227 message[".google.api.oauthScopes"] = reader.string();
22228 break;
22229 default:
22230 reader.skipType(tag & 7);
22231 break;
22232 }
22233 }
22234 return message;
22235 };
22236
22237 /**
22238 * Decodes a ServiceOptions message from the specified reader or buffer, length delimited.
22239 * @function decodeDelimited
22240 * @memberof google.protobuf.ServiceOptions
22241 * @static
22242 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
22243 * @returns {google.protobuf.ServiceOptions} ServiceOptions
22244 * @throws {Error} If the payload is not a reader or valid buffer
22245 * @throws {$protobuf.util.ProtocolError} If required fields are missing
22246 */
22247 ServiceOptions.decodeDelimited = function decodeDelimited(reader) {
22248 if (!(reader instanceof $Reader))
22249 reader = new $Reader(reader);
22250 return this.decode(reader, reader.uint32());
22251 };
22252
22253 /**
22254 * Verifies a ServiceOptions message.
22255 * @function verify
22256 * @memberof google.protobuf.ServiceOptions
22257 * @static
22258 * @param {Object.<string,*>} message Plain object to verify
22259 * @returns {string|null} `null` if valid, otherwise the reason why it is not
22260 */
22261 ServiceOptions.verify = function verify(message) {
22262 if (typeof message !== "object" || message === null)
22263 return "object expected";
22264 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
22265 if (typeof message.deprecated !== "boolean")
22266 return "deprecated: boolean expected";
22267 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
22268 if (!Array.isArray(message.uninterpretedOption))
22269 return "uninterpretedOption: array expected";
22270 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
22271 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
22272 if (error)
22273 return "uninterpretedOption." + error;
22274 }
22275 }
22276 if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost"))
22277 if (!$util.isString(message[".google.api.defaultHost"]))
22278 return ".google.api.defaultHost: string expected";
22279 if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes"))
22280 if (!$util.isString(message[".google.api.oauthScopes"]))
22281 return ".google.api.oauthScopes: string expected";
22282 return null;
22283 };
22284
22285 /**
22286 * Creates a ServiceOptions message from a plain object. Also converts values to their respective internal types.
22287 * @function fromObject
22288 * @memberof google.protobuf.ServiceOptions
22289 * @static
22290 * @param {Object.<string,*>} object Plain object
22291 * @returns {google.protobuf.ServiceOptions} ServiceOptions
22292 */
22293 ServiceOptions.fromObject = function fromObject(object) {
22294 if (object instanceof $root.google.protobuf.ServiceOptions)
22295 return object;
22296 var message = new $root.google.protobuf.ServiceOptions();
22297 if (object.deprecated != null)
22298 message.deprecated = Boolean(object.deprecated);
22299 if (object.uninterpretedOption) {
22300 if (!Array.isArray(object.uninterpretedOption))
22301 throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: array expected");
22302 message.uninterpretedOption = [];
22303 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
22304 if (typeof object.uninterpretedOption[i] !== "object")
22305 throw TypeError(".google.protobuf.ServiceOptions.uninterpretedOption: object expected");
22306 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
22307 }
22308 }
22309 if (object[".google.api.defaultHost"] != null)
22310 message[".google.api.defaultHost"] = String(object[".google.api.defaultHost"]);
22311 if (object[".google.api.oauthScopes"] != null)
22312 message[".google.api.oauthScopes"] = String(object[".google.api.oauthScopes"]);
22313 return message;
22314 };
22315
22316 /**
22317 * Creates a plain object from a ServiceOptions message. Also converts values to other types if specified.
22318 * @function toObject
22319 * @memberof google.protobuf.ServiceOptions
22320 * @static
22321 * @param {google.protobuf.ServiceOptions} message ServiceOptions
22322 * @param {$protobuf.IConversionOptions} [options] Conversion options
22323 * @returns {Object.<string,*>} Plain object
22324 */
22325 ServiceOptions.toObject = function toObject(message, options) {
22326 if (!options)
22327 options = {};
22328 var object = {};
22329 if (options.arrays || options.defaults)
22330 object.uninterpretedOption = [];
22331 if (options.defaults) {
22332 object.deprecated = false;
22333 object[".google.api.defaultHost"] = "";
22334 object[".google.api.oauthScopes"] = "";
22335 }
22336 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
22337 object.deprecated = message.deprecated;
22338 if (message.uninterpretedOption && message.uninterpretedOption.length) {
22339 object.uninterpretedOption = [];
22340 for (var j = 0; j < message.uninterpretedOption.length; ++j)
22341 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
22342 }
22343 if (message[".google.api.defaultHost"] != null && message.hasOwnProperty(".google.api.defaultHost"))
22344 object[".google.api.defaultHost"] = message[".google.api.defaultHost"];
22345 if (message[".google.api.oauthScopes"] != null && message.hasOwnProperty(".google.api.oauthScopes"))
22346 object[".google.api.oauthScopes"] = message[".google.api.oauthScopes"];
22347 return object;
22348 };
22349
22350 /**
22351 * Converts this ServiceOptions to JSON.
22352 * @function toJSON
22353 * @memberof google.protobuf.ServiceOptions
22354 * @instance
22355 * @returns {Object.<string,*>} JSON object
22356 */
22357 ServiceOptions.prototype.toJSON = function toJSON() {
22358 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22359 };
22360
22361 return ServiceOptions;
22362 })();
22363
22364 protobuf.MethodOptions = (function() {
22365
22366 /**
22367 * Properties of a MethodOptions.
22368 * @memberof google.protobuf
22369 * @interface IMethodOptions
22370 * @property {boolean|null} [deprecated] MethodOptions deprecated
22371 * @property {google.protobuf.MethodOptions.IdempotencyLevel|null} [idempotencyLevel] MethodOptions idempotencyLevel
22372 * @property {Array.<google.protobuf.IUninterpretedOption>|null} [uninterpretedOption] MethodOptions uninterpretedOption
22373 * @property {google.api.IHttpRule|null} [".google.api.http"] MethodOptions .google.api.http
22374 * @property {Array.<string>|null} [".google.api.methodSignature"] MethodOptions .google.api.methodSignature
22375 * @property {google.longrunning.IOperationInfo|null} [".google.longrunning.operationInfo"] MethodOptions .google.longrunning.operationInfo
22376 */
22377
22378 /**
22379 * Constructs a new MethodOptions.
22380 * @memberof google.protobuf
22381 * @classdesc Represents a MethodOptions.
22382 * @implements IMethodOptions
22383 * @constructor
22384 * @param {google.protobuf.IMethodOptions=} [properties] Properties to set
22385 */
22386 function MethodOptions(properties) {
22387 this.uninterpretedOption = [];
22388 this[".google.api.methodSignature"] = [];
22389 if (properties)
22390 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
22391 if (properties[keys[i]] != null)
22392 this[keys[i]] = properties[keys[i]];
22393 }
22394
22395 /**
22396 * MethodOptions deprecated.
22397 * @member {boolean} deprecated
22398 * @memberof google.protobuf.MethodOptions
22399 * @instance
22400 */
22401 MethodOptions.prototype.deprecated = false;
22402
22403 /**
22404 * MethodOptions idempotencyLevel.
22405 * @member {google.protobuf.MethodOptions.IdempotencyLevel} idempotencyLevel
22406 * @memberof google.protobuf.MethodOptions
22407 * @instance
22408 */
22409 MethodOptions.prototype.idempotencyLevel = 0;
22410
22411 /**
22412 * MethodOptions uninterpretedOption.
22413 * @member {Array.<google.protobuf.IUninterpretedOption>} uninterpretedOption
22414 * @memberof google.protobuf.MethodOptions
22415 * @instance
22416 */
22417 MethodOptions.prototype.uninterpretedOption = $util.emptyArray;
22418
22419 /**
22420 * MethodOptions .google.api.http.
22421 * @member {google.api.IHttpRule|null|undefined} .google.api.http
22422 * @memberof google.protobuf.MethodOptions
22423 * @instance
22424 */
22425 MethodOptions.prototype[".google.api.http"] = null;
22426
22427 /**
22428 * MethodOptions .google.api.methodSignature.
22429 * @member {Array.<string>} .google.api.methodSignature
22430 * @memberof google.protobuf.MethodOptions
22431 * @instance
22432 */
22433 MethodOptions.prototype[".google.api.methodSignature"] = $util.emptyArray;
22434
22435 /**
22436 * MethodOptions .google.longrunning.operationInfo.
22437 * @member {google.longrunning.IOperationInfo|null|undefined} .google.longrunning.operationInfo
22438 * @memberof google.protobuf.MethodOptions
22439 * @instance
22440 */
22441 MethodOptions.prototype[".google.longrunning.operationInfo"] = null;
22442
22443 /**
22444 * Creates a new MethodOptions instance using the specified properties.
22445 * @function create
22446 * @memberof google.protobuf.MethodOptions
22447 * @static
22448 * @param {google.protobuf.IMethodOptions=} [properties] Properties to set
22449 * @returns {google.protobuf.MethodOptions} MethodOptions instance
22450 */
22451 MethodOptions.create = function create(properties) {
22452 return new MethodOptions(properties);
22453 };
22454
22455 /**
22456 * Encodes the specified MethodOptions message. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages.
22457 * @function encode
22458 * @memberof google.protobuf.MethodOptions
22459 * @static
22460 * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode
22461 * @param {$protobuf.Writer} [writer] Writer to encode to
22462 * @returns {$protobuf.Writer} Writer
22463 */
22464 MethodOptions.encode = function encode(message, writer) {
22465 if (!writer)
22466 writer = $Writer.create();
22467 if (message.deprecated != null && Object.hasOwnProperty.call(message, "deprecated"))
22468 writer.uint32(/* id 33, wireType 0 =*/264).bool(message.deprecated);
22469 if (message.idempotencyLevel != null && Object.hasOwnProperty.call(message, "idempotencyLevel"))
22470 writer.uint32(/* id 34, wireType 0 =*/272).int32(message.idempotencyLevel);
22471 if (message.uninterpretedOption != null && message.uninterpretedOption.length)
22472 for (var i = 0; i < message.uninterpretedOption.length; ++i)
22473 $root.google.protobuf.UninterpretedOption.encode(message.uninterpretedOption[i], writer.uint32(/* id 999, wireType 2 =*/7994).fork()).ldelim();
22474 if (message[".google.longrunning.operationInfo"] != null && Object.hasOwnProperty.call(message, ".google.longrunning.operationInfo"))
22475 $root.google.longrunning.OperationInfo.encode(message[".google.longrunning.operationInfo"], writer.uint32(/* id 1049, wireType 2 =*/8394).fork()).ldelim();
22476 if (message[".google.api.methodSignature"] != null && message[".google.api.methodSignature"].length)
22477 for (var i = 0; i < message[".google.api.methodSignature"].length; ++i)
22478 writer.uint32(/* id 1051, wireType 2 =*/8410).string(message[".google.api.methodSignature"][i]);
22479 if (message[".google.api.http"] != null && Object.hasOwnProperty.call(message, ".google.api.http"))
22480 $root.google.api.HttpRule.encode(message[".google.api.http"], writer.uint32(/* id 72295728, wireType 2 =*/578365826).fork()).ldelim();
22481 return writer;
22482 };
22483
22484 /**
22485 * Encodes the specified MethodOptions message, length delimited. Does not implicitly {@link google.protobuf.MethodOptions.verify|verify} messages.
22486 * @function encodeDelimited
22487 * @memberof google.protobuf.MethodOptions
22488 * @static
22489 * @param {google.protobuf.IMethodOptions} message MethodOptions message or plain object to encode
22490 * @param {$protobuf.Writer} [writer] Writer to encode to
22491 * @returns {$protobuf.Writer} Writer
22492 */
22493 MethodOptions.encodeDelimited = function encodeDelimited(message, writer) {
22494 return this.encode(message, writer).ldelim();
22495 };
22496
22497 /**
22498 * Decodes a MethodOptions message from the specified reader or buffer.
22499 * @function decode
22500 * @memberof google.protobuf.MethodOptions
22501 * @static
22502 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
22503 * @param {number} [length] Message length if known beforehand
22504 * @returns {google.protobuf.MethodOptions} MethodOptions
22505 * @throws {Error} If the payload is not a reader or valid buffer
22506 * @throws {$protobuf.util.ProtocolError} If required fields are missing
22507 */
22508 MethodOptions.decode = function decode(reader, length) {
22509 if (!(reader instanceof $Reader))
22510 reader = $Reader.create(reader);
22511 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.MethodOptions();
22512 while (reader.pos < end) {
22513 var tag = reader.uint32();
22514 switch (tag >>> 3) {
22515 case 33:
22516 message.deprecated = reader.bool();
22517 break;
22518 case 34:
22519 message.idempotencyLevel = reader.int32();
22520 break;
22521 case 999:
22522 if (!(message.uninterpretedOption && message.uninterpretedOption.length))
22523 message.uninterpretedOption = [];
22524 message.uninterpretedOption.push($root.google.protobuf.UninterpretedOption.decode(reader, reader.uint32()));
22525 break;
22526 case 72295728:
22527 message[".google.api.http"] = $root.google.api.HttpRule.decode(reader, reader.uint32());
22528 break;
22529 case 1051:
22530 if (!(message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length))
22531 message[".google.api.methodSignature"] = [];
22532 message[".google.api.methodSignature"].push(reader.string());
22533 break;
22534 case 1049:
22535 message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.decode(reader, reader.uint32());
22536 break;
22537 default:
22538 reader.skipType(tag & 7);
22539 break;
22540 }
22541 }
22542 return message;
22543 };
22544
22545 /**
22546 * Decodes a MethodOptions message from the specified reader or buffer, length delimited.
22547 * @function decodeDelimited
22548 * @memberof google.protobuf.MethodOptions
22549 * @static
22550 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
22551 * @returns {google.protobuf.MethodOptions} MethodOptions
22552 * @throws {Error} If the payload is not a reader or valid buffer
22553 * @throws {$protobuf.util.ProtocolError} If required fields are missing
22554 */
22555 MethodOptions.decodeDelimited = function decodeDelimited(reader) {
22556 if (!(reader instanceof $Reader))
22557 reader = new $Reader(reader);
22558 return this.decode(reader, reader.uint32());
22559 };
22560
22561 /**
22562 * Verifies a MethodOptions message.
22563 * @function verify
22564 * @memberof google.protobuf.MethodOptions
22565 * @static
22566 * @param {Object.<string,*>} message Plain object to verify
22567 * @returns {string|null} `null` if valid, otherwise the reason why it is not
22568 */
22569 MethodOptions.verify = function verify(message) {
22570 if (typeof message !== "object" || message === null)
22571 return "object expected";
22572 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
22573 if (typeof message.deprecated !== "boolean")
22574 return "deprecated: boolean expected";
22575 if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel"))
22576 switch (message.idempotencyLevel) {
22577 default:
22578 return "idempotencyLevel: enum value expected";
22579 case 0:
22580 case 1:
22581 case 2:
22582 break;
22583 }
22584 if (message.uninterpretedOption != null && message.hasOwnProperty("uninterpretedOption")) {
22585 if (!Array.isArray(message.uninterpretedOption))
22586 return "uninterpretedOption: array expected";
22587 for (var i = 0; i < message.uninterpretedOption.length; ++i) {
22588 var error = $root.google.protobuf.UninterpretedOption.verify(message.uninterpretedOption[i]);
22589 if (error)
22590 return "uninterpretedOption." + error;
22591 }
22592 }
22593 if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http")) {
22594 var error = $root.google.api.HttpRule.verify(message[".google.api.http"]);
22595 if (error)
22596 return ".google.api.http." + error;
22597 }
22598 if (message[".google.api.methodSignature"] != null && message.hasOwnProperty(".google.api.methodSignature")) {
22599 if (!Array.isArray(message[".google.api.methodSignature"]))
22600 return ".google.api.methodSignature: array expected";
22601 for (var i = 0; i < message[".google.api.methodSignature"].length; ++i)
22602 if (!$util.isString(message[".google.api.methodSignature"][i]))
22603 return ".google.api.methodSignature: string[] expected";
22604 }
22605 if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo")) {
22606 var error = $root.google.longrunning.OperationInfo.verify(message[".google.longrunning.operationInfo"]);
22607 if (error)
22608 return ".google.longrunning.operationInfo." + error;
22609 }
22610 return null;
22611 };
22612
22613 /**
22614 * Creates a MethodOptions message from a plain object. Also converts values to their respective internal types.
22615 * @function fromObject
22616 * @memberof google.protobuf.MethodOptions
22617 * @static
22618 * @param {Object.<string,*>} object Plain object
22619 * @returns {google.protobuf.MethodOptions} MethodOptions
22620 */
22621 MethodOptions.fromObject = function fromObject(object) {
22622 if (object instanceof $root.google.protobuf.MethodOptions)
22623 return object;
22624 var message = new $root.google.protobuf.MethodOptions();
22625 if (object.deprecated != null)
22626 message.deprecated = Boolean(object.deprecated);
22627 switch (object.idempotencyLevel) {
22628 case "IDEMPOTENCY_UNKNOWN":
22629 case 0:
22630 message.idempotencyLevel = 0;
22631 break;
22632 case "NO_SIDE_EFFECTS":
22633 case 1:
22634 message.idempotencyLevel = 1;
22635 break;
22636 case "IDEMPOTENT":
22637 case 2:
22638 message.idempotencyLevel = 2;
22639 break;
22640 }
22641 if (object.uninterpretedOption) {
22642 if (!Array.isArray(object.uninterpretedOption))
22643 throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: array expected");
22644 message.uninterpretedOption = [];
22645 for (var i = 0; i < object.uninterpretedOption.length; ++i) {
22646 if (typeof object.uninterpretedOption[i] !== "object")
22647 throw TypeError(".google.protobuf.MethodOptions.uninterpretedOption: object expected");
22648 message.uninterpretedOption[i] = $root.google.protobuf.UninterpretedOption.fromObject(object.uninterpretedOption[i]);
22649 }
22650 }
22651 if (object[".google.api.http"] != null) {
22652 if (typeof object[".google.api.http"] !== "object")
22653 throw TypeError(".google.protobuf.MethodOptions..google.api.http: object expected");
22654 message[".google.api.http"] = $root.google.api.HttpRule.fromObject(object[".google.api.http"]);
22655 }
22656 if (object[".google.api.methodSignature"]) {
22657 if (!Array.isArray(object[".google.api.methodSignature"]))
22658 throw TypeError(".google.protobuf.MethodOptions..google.api.methodSignature: array expected");
22659 message[".google.api.methodSignature"] = [];
22660 for (var i = 0; i < object[".google.api.methodSignature"].length; ++i)
22661 message[".google.api.methodSignature"][i] = String(object[".google.api.methodSignature"][i]);
22662 }
22663 if (object[".google.longrunning.operationInfo"] != null) {
22664 if (typeof object[".google.longrunning.operationInfo"] !== "object")
22665 throw TypeError(".google.protobuf.MethodOptions..google.longrunning.operationInfo: object expected");
22666 message[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.fromObject(object[".google.longrunning.operationInfo"]);
22667 }
22668 return message;
22669 };
22670
22671 /**
22672 * Creates a plain object from a MethodOptions message. Also converts values to other types if specified.
22673 * @function toObject
22674 * @memberof google.protobuf.MethodOptions
22675 * @static
22676 * @param {google.protobuf.MethodOptions} message MethodOptions
22677 * @param {$protobuf.IConversionOptions} [options] Conversion options
22678 * @returns {Object.<string,*>} Plain object
22679 */
22680 MethodOptions.toObject = function toObject(message, options) {
22681 if (!options)
22682 options = {};
22683 var object = {};
22684 if (options.arrays || options.defaults) {
22685 object.uninterpretedOption = [];
22686 object[".google.api.methodSignature"] = [];
22687 }
22688 if (options.defaults) {
22689 object.deprecated = false;
22690 object.idempotencyLevel = options.enums === String ? "IDEMPOTENCY_UNKNOWN" : 0;
22691 object[".google.longrunning.operationInfo"] = null;
22692 object[".google.api.http"] = null;
22693 }
22694 if (message.deprecated != null && message.hasOwnProperty("deprecated"))
22695 object.deprecated = message.deprecated;
22696 if (message.idempotencyLevel != null && message.hasOwnProperty("idempotencyLevel"))
22697 object.idempotencyLevel = options.enums === String ? $root.google.protobuf.MethodOptions.IdempotencyLevel[message.idempotencyLevel] : message.idempotencyLevel;
22698 if (message.uninterpretedOption && message.uninterpretedOption.length) {
22699 object.uninterpretedOption = [];
22700 for (var j = 0; j < message.uninterpretedOption.length; ++j)
22701 object.uninterpretedOption[j] = $root.google.protobuf.UninterpretedOption.toObject(message.uninterpretedOption[j], options);
22702 }
22703 if (message[".google.longrunning.operationInfo"] != null && message.hasOwnProperty(".google.longrunning.operationInfo"))
22704 object[".google.longrunning.operationInfo"] = $root.google.longrunning.OperationInfo.toObject(message[".google.longrunning.operationInfo"], options);
22705 if (message[".google.api.methodSignature"] && message[".google.api.methodSignature"].length) {
22706 object[".google.api.methodSignature"] = [];
22707 for (var j = 0; j < message[".google.api.methodSignature"].length; ++j)
22708 object[".google.api.methodSignature"][j] = message[".google.api.methodSignature"][j];
22709 }
22710 if (message[".google.api.http"] != null && message.hasOwnProperty(".google.api.http"))
22711 object[".google.api.http"] = $root.google.api.HttpRule.toObject(message[".google.api.http"], options);
22712 return object;
22713 };
22714
22715 /**
22716 * Converts this MethodOptions to JSON.
22717 * @function toJSON
22718 * @memberof google.protobuf.MethodOptions
22719 * @instance
22720 * @returns {Object.<string,*>} JSON object
22721 */
22722 MethodOptions.prototype.toJSON = function toJSON() {
22723 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
22724 };
22725
22726 /**
22727 * IdempotencyLevel enum.
22728 * @name google.protobuf.MethodOptions.IdempotencyLevel
22729 * @enum {number}
22730 * @property {number} IDEMPOTENCY_UNKNOWN=0 IDEMPOTENCY_UNKNOWN value
22731 * @property {number} NO_SIDE_EFFECTS=1 NO_SIDE_EFFECTS value
22732 * @property {number} IDEMPOTENT=2 IDEMPOTENT value
22733 */
22734 MethodOptions.IdempotencyLevel = (function() {
22735 var valuesById = {}, values = Object.create(valuesById);
22736 values[valuesById[0] = "IDEMPOTENCY_UNKNOWN"] = 0;
22737 values[valuesById[1] = "NO_SIDE_EFFECTS"] = 1;
22738 values[valuesById[2] = "IDEMPOTENT"] = 2;
22739 return values;
22740 })();
22741
22742 return MethodOptions;
22743 })();
22744
22745 protobuf.UninterpretedOption = (function() {
22746
22747 /**
22748 * Properties of an UninterpretedOption.
22749 * @memberof google.protobuf
22750 * @interface IUninterpretedOption
22751 * @property {Array.<google.protobuf.UninterpretedOption.INamePart>|null} [name] UninterpretedOption name
22752 * @property {string|null} [identifierValue] UninterpretedOption identifierValue
22753 * @property {number|Long|null} [positiveIntValue] UninterpretedOption positiveIntValue
22754 * @property {number|Long|null} [negativeIntValue] UninterpretedOption negativeIntValue
22755 * @property {number|null} [doubleValue] UninterpretedOption doubleValue
22756 * @property {Uint8Array|null} [stringValue] UninterpretedOption stringValue
22757 * @property {string|null} [aggregateValue] UninterpretedOption aggregateValue
22758 */
22759
22760 /**
22761 * Constructs a new UninterpretedOption.
22762 * @memberof google.protobuf
22763 * @classdesc Represents an UninterpretedOption.
22764 * @implements IUninterpretedOption
22765 * @constructor
22766 * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set
22767 */
22768 function UninterpretedOption(properties) {
22769 this.name = [];
22770 if (properties)
22771 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
22772 if (properties[keys[i]] != null)
22773 this[keys[i]] = properties[keys[i]];
22774 }
22775
22776 /**
22777 * UninterpretedOption name.
22778 * @member {Array.<google.protobuf.UninterpretedOption.INamePart>} name
22779 * @memberof google.protobuf.UninterpretedOption
22780 * @instance
22781 */
22782 UninterpretedOption.prototype.name = $util.emptyArray;
22783
22784 /**
22785 * UninterpretedOption identifierValue.
22786 * @member {string} identifierValue
22787 * @memberof google.protobuf.UninterpretedOption
22788 * @instance
22789 */
22790 UninterpretedOption.prototype.identifierValue = "";
22791
22792 /**
22793 * UninterpretedOption positiveIntValue.
22794 * @member {number|Long} positiveIntValue
22795 * @memberof google.protobuf.UninterpretedOption
22796 * @instance
22797 */
22798 UninterpretedOption.prototype.positiveIntValue = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
22799
22800 /**
22801 * UninterpretedOption negativeIntValue.
22802 * @member {number|Long} negativeIntValue
22803 * @memberof google.protobuf.UninterpretedOption
22804 * @instance
22805 */
22806 UninterpretedOption.prototype.negativeIntValue = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
22807
22808 /**
22809 * UninterpretedOption doubleValue.
22810 * @member {number} doubleValue
22811 * @memberof google.protobuf.UninterpretedOption
22812 * @instance
22813 */
22814 UninterpretedOption.prototype.doubleValue = 0;
22815
22816 /**
22817 * UninterpretedOption stringValue.
22818 * @member {Uint8Array} stringValue
22819 * @memberof google.protobuf.UninterpretedOption
22820 * @instance
22821 */
22822 UninterpretedOption.prototype.stringValue = $util.newBuffer([]);
22823
22824 /**
22825 * UninterpretedOption aggregateValue.
22826 * @member {string} aggregateValue
22827 * @memberof google.protobuf.UninterpretedOption
22828 * @instance
22829 */
22830 UninterpretedOption.prototype.aggregateValue = "";
22831
22832 /**
22833 * Creates a new UninterpretedOption instance using the specified properties.
22834 * @function create
22835 * @memberof google.protobuf.UninterpretedOption
22836 * @static
22837 * @param {google.protobuf.IUninterpretedOption=} [properties] Properties to set
22838 * @returns {google.protobuf.UninterpretedOption} UninterpretedOption instance
22839 */
22840 UninterpretedOption.create = function create(properties) {
22841 return new UninterpretedOption(properties);
22842 };
22843
22844 /**
22845 * Encodes the specified UninterpretedOption message. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages.
22846 * @function encode
22847 * @memberof google.protobuf.UninterpretedOption
22848 * @static
22849 * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode
22850 * @param {$protobuf.Writer} [writer] Writer to encode to
22851 * @returns {$protobuf.Writer} Writer
22852 */
22853 UninterpretedOption.encode = function encode(message, writer) {
22854 if (!writer)
22855 writer = $Writer.create();
22856 if (message.name != null && message.name.length)
22857 for (var i = 0; i < message.name.length; ++i)
22858 $root.google.protobuf.UninterpretedOption.NamePart.encode(message.name[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
22859 if (message.identifierValue != null && Object.hasOwnProperty.call(message, "identifierValue"))
22860 writer.uint32(/* id 3, wireType 2 =*/26).string(message.identifierValue);
22861 if (message.positiveIntValue != null && Object.hasOwnProperty.call(message, "positiveIntValue"))
22862 writer.uint32(/* id 4, wireType 0 =*/32).uint64(message.positiveIntValue);
22863 if (message.negativeIntValue != null && Object.hasOwnProperty.call(message, "negativeIntValue"))
22864 writer.uint32(/* id 5, wireType 0 =*/40).int64(message.negativeIntValue);
22865 if (message.doubleValue != null && Object.hasOwnProperty.call(message, "doubleValue"))
22866 writer.uint32(/* id 6, wireType 1 =*/49).double(message.doubleValue);
22867 if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue"))
22868 writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.stringValue);
22869 if (message.aggregateValue != null && Object.hasOwnProperty.call(message, "aggregateValue"))
22870 writer.uint32(/* id 8, wireType 2 =*/66).string(message.aggregateValue);
22871 return writer;
22872 };
22873
22874 /**
22875 * Encodes the specified UninterpretedOption message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.verify|verify} messages.
22876 * @function encodeDelimited
22877 * @memberof google.protobuf.UninterpretedOption
22878 * @static
22879 * @param {google.protobuf.IUninterpretedOption} message UninterpretedOption message or plain object to encode
22880 * @param {$protobuf.Writer} [writer] Writer to encode to
22881 * @returns {$protobuf.Writer} Writer
22882 */
22883 UninterpretedOption.encodeDelimited = function encodeDelimited(message, writer) {
22884 return this.encode(message, writer).ldelim();
22885 };
22886
22887 /**
22888 * Decodes an UninterpretedOption message from the specified reader or buffer.
22889 * @function decode
22890 * @memberof google.protobuf.UninterpretedOption
22891 * @static
22892 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
22893 * @param {number} [length] Message length if known beforehand
22894 * @returns {google.protobuf.UninterpretedOption} UninterpretedOption
22895 * @throws {Error} If the payload is not a reader or valid buffer
22896 * @throws {$protobuf.util.ProtocolError} If required fields are missing
22897 */
22898 UninterpretedOption.decode = function decode(reader, length) {
22899 if (!(reader instanceof $Reader))
22900 reader = $Reader.create(reader);
22901 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption();
22902 while (reader.pos < end) {
22903 var tag = reader.uint32();
22904 switch (tag >>> 3) {
22905 case 2:
22906 if (!(message.name && message.name.length))
22907 message.name = [];
22908 message.name.push($root.google.protobuf.UninterpretedOption.NamePart.decode(reader, reader.uint32()));
22909 break;
22910 case 3:
22911 message.identifierValue = reader.string();
22912 break;
22913 case 4:
22914 message.positiveIntValue = reader.uint64();
22915 break;
22916 case 5:
22917 message.negativeIntValue = reader.int64();
22918 break;
22919 case 6:
22920 message.doubleValue = reader.double();
22921 break;
22922 case 7:
22923 message.stringValue = reader.bytes();
22924 break;
22925 case 8:
22926 message.aggregateValue = reader.string();
22927 break;
22928 default:
22929 reader.skipType(tag & 7);
22930 break;
22931 }
22932 }
22933 return message;
22934 };
22935
22936 /**
22937 * Decodes an UninterpretedOption message from the specified reader or buffer, length delimited.
22938 * @function decodeDelimited
22939 * @memberof google.protobuf.UninterpretedOption
22940 * @static
22941 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
22942 * @returns {google.protobuf.UninterpretedOption} UninterpretedOption
22943 * @throws {Error} If the payload is not a reader or valid buffer
22944 * @throws {$protobuf.util.ProtocolError} If required fields are missing
22945 */
22946 UninterpretedOption.decodeDelimited = function decodeDelimited(reader) {
22947 if (!(reader instanceof $Reader))
22948 reader = new $Reader(reader);
22949 return this.decode(reader, reader.uint32());
22950 };
22951
22952 /**
22953 * Verifies an UninterpretedOption message.
22954 * @function verify
22955 * @memberof google.protobuf.UninterpretedOption
22956 * @static
22957 * @param {Object.<string,*>} message Plain object to verify
22958 * @returns {string|null} `null` if valid, otherwise the reason why it is not
22959 */
22960 UninterpretedOption.verify = function verify(message) {
22961 if (typeof message !== "object" || message === null)
22962 return "object expected";
22963 if (message.name != null && message.hasOwnProperty("name")) {
22964 if (!Array.isArray(message.name))
22965 return "name: array expected";
22966 for (var i = 0; i < message.name.length; ++i) {
22967 var error = $root.google.protobuf.UninterpretedOption.NamePart.verify(message.name[i]);
22968 if (error)
22969 return "name." + error;
22970 }
22971 }
22972 if (message.identifierValue != null && message.hasOwnProperty("identifierValue"))
22973 if (!$util.isString(message.identifierValue))
22974 return "identifierValue: string expected";
22975 if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue"))
22976 if (!$util.isInteger(message.positiveIntValue) && !(message.positiveIntValue && $util.isInteger(message.positiveIntValue.low) && $util.isInteger(message.positiveIntValue.high)))
22977 return "positiveIntValue: integer|Long expected";
22978 if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue"))
22979 if (!$util.isInteger(message.negativeIntValue) && !(message.negativeIntValue && $util.isInteger(message.negativeIntValue.low) && $util.isInteger(message.negativeIntValue.high)))
22980 return "negativeIntValue: integer|Long expected";
22981 if (message.doubleValue != null && message.hasOwnProperty("doubleValue"))
22982 if (typeof message.doubleValue !== "number")
22983 return "doubleValue: number expected";
22984 if (message.stringValue != null && message.hasOwnProperty("stringValue"))
22985 if (!(message.stringValue && typeof message.stringValue.length === "number" || $util.isString(message.stringValue)))
22986 return "stringValue: buffer expected";
22987 if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue"))
22988 if (!$util.isString(message.aggregateValue))
22989 return "aggregateValue: string expected";
22990 return null;
22991 };
22992
22993 /**
22994 * Creates an UninterpretedOption message from a plain object. Also converts values to their respective internal types.
22995 * @function fromObject
22996 * @memberof google.protobuf.UninterpretedOption
22997 * @static
22998 * @param {Object.<string,*>} object Plain object
22999 * @returns {google.protobuf.UninterpretedOption} UninterpretedOption
23000 */
23001 UninterpretedOption.fromObject = function fromObject(object) {
23002 if (object instanceof $root.google.protobuf.UninterpretedOption)
23003 return object;
23004 var message = new $root.google.protobuf.UninterpretedOption();
23005 if (object.name) {
23006 if (!Array.isArray(object.name))
23007 throw TypeError(".google.protobuf.UninterpretedOption.name: array expected");
23008 message.name = [];
23009 for (var i = 0; i < object.name.length; ++i) {
23010 if (typeof object.name[i] !== "object")
23011 throw TypeError(".google.protobuf.UninterpretedOption.name: object expected");
23012 message.name[i] = $root.google.protobuf.UninterpretedOption.NamePart.fromObject(object.name[i]);
23013 }
23014 }
23015 if (object.identifierValue != null)
23016 message.identifierValue = String(object.identifierValue);
23017 if (object.positiveIntValue != null)
23018 if ($util.Long)
23019 (message.positiveIntValue = $util.Long.fromValue(object.positiveIntValue)).unsigned = true;
23020 else if (typeof object.positiveIntValue === "string")
23021 message.positiveIntValue = parseInt(object.positiveIntValue, 10);
23022 else if (typeof object.positiveIntValue === "number")
23023 message.positiveIntValue = object.positiveIntValue;
23024 else if (typeof object.positiveIntValue === "object")
23025 message.positiveIntValue = new $util.LongBits(object.positiveIntValue.low >>> 0, object.positiveIntValue.high >>> 0).toNumber(true);
23026 if (object.negativeIntValue != null)
23027 if ($util.Long)
23028 (message.negativeIntValue = $util.Long.fromValue(object.negativeIntValue)).unsigned = false;
23029 else if (typeof object.negativeIntValue === "string")
23030 message.negativeIntValue = parseInt(object.negativeIntValue, 10);
23031 else if (typeof object.negativeIntValue === "number")
23032 message.negativeIntValue = object.negativeIntValue;
23033 else if (typeof object.negativeIntValue === "object")
23034 message.negativeIntValue = new $util.LongBits(object.negativeIntValue.low >>> 0, object.negativeIntValue.high >>> 0).toNumber();
23035 if (object.doubleValue != null)
23036 message.doubleValue = Number(object.doubleValue);
23037 if (object.stringValue != null)
23038 if (typeof object.stringValue === "string")
23039 $util.base64.decode(object.stringValue, message.stringValue = $util.newBuffer($util.base64.length(object.stringValue)), 0);
23040 else if (object.stringValue.length)
23041 message.stringValue = object.stringValue;
23042 if (object.aggregateValue != null)
23043 message.aggregateValue = String(object.aggregateValue);
23044 return message;
23045 };
23046
23047 /**
23048 * Creates a plain object from an UninterpretedOption message. Also converts values to other types if specified.
23049 * @function toObject
23050 * @memberof google.protobuf.UninterpretedOption
23051 * @static
23052 * @param {google.protobuf.UninterpretedOption} message UninterpretedOption
23053 * @param {$protobuf.IConversionOptions} [options] Conversion options
23054 * @returns {Object.<string,*>} Plain object
23055 */
23056 UninterpretedOption.toObject = function toObject(message, options) {
23057 if (!options)
23058 options = {};
23059 var object = {};
23060 if (options.arrays || options.defaults)
23061 object.name = [];
23062 if (options.defaults) {
23063 object.identifierValue = "";
23064 if ($util.Long) {
23065 var long = new $util.Long(0, 0, true);
23066 object.positiveIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
23067 } else
23068 object.positiveIntValue = options.longs === String ? "0" : 0;
23069 if ($util.Long) {
23070 var long = new $util.Long(0, 0, false);
23071 object.negativeIntValue = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
23072 } else
23073 object.negativeIntValue = options.longs === String ? "0" : 0;
23074 object.doubleValue = 0;
23075 if (options.bytes === String)
23076 object.stringValue = "";
23077 else {
23078 object.stringValue = [];
23079 if (options.bytes !== Array)
23080 object.stringValue = $util.newBuffer(object.stringValue);
23081 }
23082 object.aggregateValue = "";
23083 }
23084 if (message.name && message.name.length) {
23085 object.name = [];
23086 for (var j = 0; j < message.name.length; ++j)
23087 object.name[j] = $root.google.protobuf.UninterpretedOption.NamePart.toObject(message.name[j], options);
23088 }
23089 if (message.identifierValue != null && message.hasOwnProperty("identifierValue"))
23090 object.identifierValue = message.identifierValue;
23091 if (message.positiveIntValue != null && message.hasOwnProperty("positiveIntValue"))
23092 if (typeof message.positiveIntValue === "number")
23093 object.positiveIntValue = options.longs === String ? String(message.positiveIntValue) : message.positiveIntValue;
23094 else
23095 object.positiveIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.positiveIntValue) : options.longs === Number ? new $util.LongBits(message.positiveIntValue.low >>> 0, message.positiveIntValue.high >>> 0).toNumber(true) : message.positiveIntValue;
23096 if (message.negativeIntValue != null && message.hasOwnProperty("negativeIntValue"))
23097 if (typeof message.negativeIntValue === "number")
23098 object.negativeIntValue = options.longs === String ? String(message.negativeIntValue) : message.negativeIntValue;
23099 else
23100 object.negativeIntValue = options.longs === String ? $util.Long.prototype.toString.call(message.negativeIntValue) : options.longs === Number ? new $util.LongBits(message.negativeIntValue.low >>> 0, message.negativeIntValue.high >>> 0).toNumber() : message.negativeIntValue;
23101 if (message.doubleValue != null && message.hasOwnProperty("doubleValue"))
23102 object.doubleValue = options.json && !isFinite(message.doubleValue) ? String(message.doubleValue) : message.doubleValue;
23103 if (message.stringValue != null && message.hasOwnProperty("stringValue"))
23104 object.stringValue = options.bytes === String ? $util.base64.encode(message.stringValue, 0, message.stringValue.length) : options.bytes === Array ? Array.prototype.slice.call(message.stringValue) : message.stringValue;
23105 if (message.aggregateValue != null && message.hasOwnProperty("aggregateValue"))
23106 object.aggregateValue = message.aggregateValue;
23107 return object;
23108 };
23109
23110 /**
23111 * Converts this UninterpretedOption to JSON.
23112 * @function toJSON
23113 * @memberof google.protobuf.UninterpretedOption
23114 * @instance
23115 * @returns {Object.<string,*>} JSON object
23116 */
23117 UninterpretedOption.prototype.toJSON = function toJSON() {
23118 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
23119 };
23120
23121 UninterpretedOption.NamePart = (function() {
23122
23123 /**
23124 * Properties of a NamePart.
23125 * @memberof google.protobuf.UninterpretedOption
23126 * @interface INamePart
23127 * @property {string} namePart NamePart namePart
23128 * @property {boolean} isExtension NamePart isExtension
23129 */
23130
23131 /**
23132 * Constructs a new NamePart.
23133 * @memberof google.protobuf.UninterpretedOption
23134 * @classdesc Represents a NamePart.
23135 * @implements INamePart
23136 * @constructor
23137 * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
23138 */
23139 function NamePart(properties) {
23140 if (properties)
23141 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
23142 if (properties[keys[i]] != null)
23143 this[keys[i]] = properties[keys[i]];
23144 }
23145
23146 /**
23147 * NamePart namePart.
23148 * @member {string} namePart
23149 * @memberof google.protobuf.UninterpretedOption.NamePart
23150 * @instance
23151 */
23152 NamePart.prototype.namePart = "";
23153
23154 /**
23155 * NamePart isExtension.
23156 * @member {boolean} isExtension
23157 * @memberof google.protobuf.UninterpretedOption.NamePart
23158 * @instance
23159 */
23160 NamePart.prototype.isExtension = false;
23161
23162 /**
23163 * Creates a new NamePart instance using the specified properties.
23164 * @function create
23165 * @memberof google.protobuf.UninterpretedOption.NamePart
23166 * @static
23167 * @param {google.protobuf.UninterpretedOption.INamePart=} [properties] Properties to set
23168 * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart instance
23169 */
23170 NamePart.create = function create(properties) {
23171 return new NamePart(properties);
23172 };
23173
23174 /**
23175 * Encodes the specified NamePart message. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
23176 * @function encode
23177 * @memberof google.protobuf.UninterpretedOption.NamePart
23178 * @static
23179 * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
23180 * @param {$protobuf.Writer} [writer] Writer to encode to
23181 * @returns {$protobuf.Writer} Writer
23182 */
23183 NamePart.encode = function encode(message, writer) {
23184 if (!writer)
23185 writer = $Writer.create();
23186 writer.uint32(/* id 1, wireType 2 =*/10).string(message.namePart);
23187 writer.uint32(/* id 2, wireType 0 =*/16).bool(message.isExtension);
23188 return writer;
23189 };
23190
23191 /**
23192 * Encodes the specified NamePart message, length delimited. Does not implicitly {@link google.protobuf.UninterpretedOption.NamePart.verify|verify} messages.
23193 * @function encodeDelimited
23194 * @memberof google.protobuf.UninterpretedOption.NamePart
23195 * @static
23196 * @param {google.protobuf.UninterpretedOption.INamePart} message NamePart message or plain object to encode
23197 * @param {$protobuf.Writer} [writer] Writer to encode to
23198 * @returns {$protobuf.Writer} Writer
23199 */
23200 NamePart.encodeDelimited = function encodeDelimited(message, writer) {
23201 return this.encode(message, writer).ldelim();
23202 };
23203
23204 /**
23205 * Decodes a NamePart message from the specified reader or buffer.
23206 * @function decode
23207 * @memberof google.protobuf.UninterpretedOption.NamePart
23208 * @static
23209 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
23210 * @param {number} [length] Message length if known beforehand
23211 * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
23212 * @throws {Error} If the payload is not a reader or valid buffer
23213 * @throws {$protobuf.util.ProtocolError} If required fields are missing
23214 */
23215 NamePart.decode = function decode(reader, length) {
23216 if (!(reader instanceof $Reader))
23217 reader = $Reader.create(reader);
23218 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UninterpretedOption.NamePart();
23219 while (reader.pos < end) {
23220 var tag = reader.uint32();
23221 switch (tag >>> 3) {
23222 case 1:
23223 message.namePart = reader.string();
23224 break;
23225 case 2:
23226 message.isExtension = reader.bool();
23227 break;
23228 default:
23229 reader.skipType(tag & 7);
23230 break;
23231 }
23232 }
23233 if (!message.hasOwnProperty("namePart"))
23234 throw $util.ProtocolError("missing required 'namePart'", { instance: message });
23235 if (!message.hasOwnProperty("isExtension"))
23236 throw $util.ProtocolError("missing required 'isExtension'", { instance: message });
23237 return message;
23238 };
23239
23240 /**
23241 * Decodes a NamePart message from the specified reader or buffer, length delimited.
23242 * @function decodeDelimited
23243 * @memberof google.protobuf.UninterpretedOption.NamePart
23244 * @static
23245 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
23246 * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
23247 * @throws {Error} If the payload is not a reader or valid buffer
23248 * @throws {$protobuf.util.ProtocolError} If required fields are missing
23249 */
23250 NamePart.decodeDelimited = function decodeDelimited(reader) {
23251 if (!(reader instanceof $Reader))
23252 reader = new $Reader(reader);
23253 return this.decode(reader, reader.uint32());
23254 };
23255
23256 /**
23257 * Verifies a NamePart message.
23258 * @function verify
23259 * @memberof google.protobuf.UninterpretedOption.NamePart
23260 * @static
23261 * @param {Object.<string,*>} message Plain object to verify
23262 * @returns {string|null} `null` if valid, otherwise the reason why it is not
23263 */
23264 NamePart.verify = function verify(message) {
23265 if (typeof message !== "object" || message === null)
23266 return "object expected";
23267 if (!$util.isString(message.namePart))
23268 return "namePart: string expected";
23269 if (typeof message.isExtension !== "boolean")
23270 return "isExtension: boolean expected";
23271 return null;
23272 };
23273
23274 /**
23275 * Creates a NamePart message from a plain object. Also converts values to their respective internal types.
23276 * @function fromObject
23277 * @memberof google.protobuf.UninterpretedOption.NamePart
23278 * @static
23279 * @param {Object.<string,*>} object Plain object
23280 * @returns {google.protobuf.UninterpretedOption.NamePart} NamePart
23281 */
23282 NamePart.fromObject = function fromObject(object) {
23283 if (object instanceof $root.google.protobuf.UninterpretedOption.NamePart)
23284 return object;
23285 var message = new $root.google.protobuf.UninterpretedOption.NamePart();
23286 if (object.namePart != null)
23287 message.namePart = String(object.namePart);
23288 if (object.isExtension != null)
23289 message.isExtension = Boolean(object.isExtension);
23290 return message;
23291 };
23292
23293 /**
23294 * Creates a plain object from a NamePart message. Also converts values to other types if specified.
23295 * @function toObject
23296 * @memberof google.protobuf.UninterpretedOption.NamePart
23297 * @static
23298 * @param {google.protobuf.UninterpretedOption.NamePart} message NamePart
23299 * @param {$protobuf.IConversionOptions} [options] Conversion options
23300 * @returns {Object.<string,*>} Plain object
23301 */
23302 NamePart.toObject = function toObject(message, options) {
23303 if (!options)
23304 options = {};
23305 var object = {};
23306 if (options.defaults) {
23307 object.namePart = "";
23308 object.isExtension = false;
23309 }
23310 if (message.namePart != null && message.hasOwnProperty("namePart"))
23311 object.namePart = message.namePart;
23312 if (message.isExtension != null && message.hasOwnProperty("isExtension"))
23313 object.isExtension = message.isExtension;
23314 return object;
23315 };
23316
23317 /**
23318 * Converts this NamePart to JSON.
23319 * @function toJSON
23320 * @memberof google.protobuf.UninterpretedOption.NamePart
23321 * @instance
23322 * @returns {Object.<string,*>} JSON object
23323 */
23324 NamePart.prototype.toJSON = function toJSON() {
23325 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
23326 };
23327
23328 return NamePart;
23329 })();
23330
23331 return UninterpretedOption;
23332 })();
23333
23334 protobuf.SourceCodeInfo = (function() {
23335
23336 /**
23337 * Properties of a SourceCodeInfo.
23338 * @memberof google.protobuf
23339 * @interface ISourceCodeInfo
23340 * @property {Array.<google.protobuf.SourceCodeInfo.ILocation>|null} [location] SourceCodeInfo location
23341 */
23342
23343 /**
23344 * Constructs a new SourceCodeInfo.
23345 * @memberof google.protobuf
23346 * @classdesc Represents a SourceCodeInfo.
23347 * @implements ISourceCodeInfo
23348 * @constructor
23349 * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set
23350 */
23351 function SourceCodeInfo(properties) {
23352 this.location = [];
23353 if (properties)
23354 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
23355 if (properties[keys[i]] != null)
23356 this[keys[i]] = properties[keys[i]];
23357 }
23358
23359 /**
23360 * SourceCodeInfo location.
23361 * @member {Array.<google.protobuf.SourceCodeInfo.ILocation>} location
23362 * @memberof google.protobuf.SourceCodeInfo
23363 * @instance
23364 */
23365 SourceCodeInfo.prototype.location = $util.emptyArray;
23366
23367 /**
23368 * Creates a new SourceCodeInfo instance using the specified properties.
23369 * @function create
23370 * @memberof google.protobuf.SourceCodeInfo
23371 * @static
23372 * @param {google.protobuf.ISourceCodeInfo=} [properties] Properties to set
23373 * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo instance
23374 */
23375 SourceCodeInfo.create = function create(properties) {
23376 return new SourceCodeInfo(properties);
23377 };
23378
23379 /**
23380 * Encodes the specified SourceCodeInfo message. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages.
23381 * @function encode
23382 * @memberof google.protobuf.SourceCodeInfo
23383 * @static
23384 * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode
23385 * @param {$protobuf.Writer} [writer] Writer to encode to
23386 * @returns {$protobuf.Writer} Writer
23387 */
23388 SourceCodeInfo.encode = function encode(message, writer) {
23389 if (!writer)
23390 writer = $Writer.create();
23391 if (message.location != null && message.location.length)
23392 for (var i = 0; i < message.location.length; ++i)
23393 $root.google.protobuf.SourceCodeInfo.Location.encode(message.location[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
23394 return writer;
23395 };
23396
23397 /**
23398 * Encodes the specified SourceCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.verify|verify} messages.
23399 * @function encodeDelimited
23400 * @memberof google.protobuf.SourceCodeInfo
23401 * @static
23402 * @param {google.protobuf.ISourceCodeInfo} message SourceCodeInfo message or plain object to encode
23403 * @param {$protobuf.Writer} [writer] Writer to encode to
23404 * @returns {$protobuf.Writer} Writer
23405 */
23406 SourceCodeInfo.encodeDelimited = function encodeDelimited(message, writer) {
23407 return this.encode(message, writer).ldelim();
23408 };
23409
23410 /**
23411 * Decodes a SourceCodeInfo message from the specified reader or buffer.
23412 * @function decode
23413 * @memberof google.protobuf.SourceCodeInfo
23414 * @static
23415 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
23416 * @param {number} [length] Message length if known beforehand
23417 * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo
23418 * @throws {Error} If the payload is not a reader or valid buffer
23419 * @throws {$protobuf.util.ProtocolError} If required fields are missing
23420 */
23421 SourceCodeInfo.decode = function decode(reader, length) {
23422 if (!(reader instanceof $Reader))
23423 reader = $Reader.create(reader);
23424 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo();
23425 while (reader.pos < end) {
23426 var tag = reader.uint32();
23427 switch (tag >>> 3) {
23428 case 1:
23429 if (!(message.location && message.location.length))
23430 message.location = [];
23431 message.location.push($root.google.protobuf.SourceCodeInfo.Location.decode(reader, reader.uint32()));
23432 break;
23433 default:
23434 reader.skipType(tag & 7);
23435 break;
23436 }
23437 }
23438 return message;
23439 };
23440
23441 /**
23442 * Decodes a SourceCodeInfo message from the specified reader or buffer, length delimited.
23443 * @function decodeDelimited
23444 * @memberof google.protobuf.SourceCodeInfo
23445 * @static
23446 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
23447 * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo
23448 * @throws {Error} If the payload is not a reader or valid buffer
23449 * @throws {$protobuf.util.ProtocolError} If required fields are missing
23450 */
23451 SourceCodeInfo.decodeDelimited = function decodeDelimited(reader) {
23452 if (!(reader instanceof $Reader))
23453 reader = new $Reader(reader);
23454 return this.decode(reader, reader.uint32());
23455 };
23456
23457 /**
23458 * Verifies a SourceCodeInfo message.
23459 * @function verify
23460 * @memberof google.protobuf.SourceCodeInfo
23461 * @static
23462 * @param {Object.<string,*>} message Plain object to verify
23463 * @returns {string|null} `null` if valid, otherwise the reason why it is not
23464 */
23465 SourceCodeInfo.verify = function verify(message) {
23466 if (typeof message !== "object" || message === null)
23467 return "object expected";
23468 if (message.location != null && message.hasOwnProperty("location")) {
23469 if (!Array.isArray(message.location))
23470 return "location: array expected";
23471 for (var i = 0; i < message.location.length; ++i) {
23472 var error = $root.google.protobuf.SourceCodeInfo.Location.verify(message.location[i]);
23473 if (error)
23474 return "location." + error;
23475 }
23476 }
23477 return null;
23478 };
23479
23480 /**
23481 * Creates a SourceCodeInfo message from a plain object. Also converts values to their respective internal types.
23482 * @function fromObject
23483 * @memberof google.protobuf.SourceCodeInfo
23484 * @static
23485 * @param {Object.<string,*>} object Plain object
23486 * @returns {google.protobuf.SourceCodeInfo} SourceCodeInfo
23487 */
23488 SourceCodeInfo.fromObject = function fromObject(object) {
23489 if (object instanceof $root.google.protobuf.SourceCodeInfo)
23490 return object;
23491 var message = new $root.google.protobuf.SourceCodeInfo();
23492 if (object.location) {
23493 if (!Array.isArray(object.location))
23494 throw TypeError(".google.protobuf.SourceCodeInfo.location: array expected");
23495 message.location = [];
23496 for (var i = 0; i < object.location.length; ++i) {
23497 if (typeof object.location[i] !== "object")
23498 throw TypeError(".google.protobuf.SourceCodeInfo.location: object expected");
23499 message.location[i] = $root.google.protobuf.SourceCodeInfo.Location.fromObject(object.location[i]);
23500 }
23501 }
23502 return message;
23503 };
23504
23505 /**
23506 * Creates a plain object from a SourceCodeInfo message. Also converts values to other types if specified.
23507 * @function toObject
23508 * @memberof google.protobuf.SourceCodeInfo
23509 * @static
23510 * @param {google.protobuf.SourceCodeInfo} message SourceCodeInfo
23511 * @param {$protobuf.IConversionOptions} [options] Conversion options
23512 * @returns {Object.<string,*>} Plain object
23513 */
23514 SourceCodeInfo.toObject = function toObject(message, options) {
23515 if (!options)
23516 options = {};
23517 var object = {};
23518 if (options.arrays || options.defaults)
23519 object.location = [];
23520 if (message.location && message.location.length) {
23521 object.location = [];
23522 for (var j = 0; j < message.location.length; ++j)
23523 object.location[j] = $root.google.protobuf.SourceCodeInfo.Location.toObject(message.location[j], options);
23524 }
23525 return object;
23526 };
23527
23528 /**
23529 * Converts this SourceCodeInfo to JSON.
23530 * @function toJSON
23531 * @memberof google.protobuf.SourceCodeInfo
23532 * @instance
23533 * @returns {Object.<string,*>} JSON object
23534 */
23535 SourceCodeInfo.prototype.toJSON = function toJSON() {
23536 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
23537 };
23538
23539 SourceCodeInfo.Location = (function() {
23540
23541 /**
23542 * Properties of a Location.
23543 * @memberof google.protobuf.SourceCodeInfo
23544 * @interface ILocation
23545 * @property {Array.<number>|null} [path] Location path
23546 * @property {Array.<number>|null} [span] Location span
23547 * @property {string|null} [leadingComments] Location leadingComments
23548 * @property {string|null} [trailingComments] Location trailingComments
23549 * @property {Array.<string>|null} [leadingDetachedComments] Location leadingDetachedComments
23550 */
23551
23552 /**
23553 * Constructs a new Location.
23554 * @memberof google.protobuf.SourceCodeInfo
23555 * @classdesc Represents a Location.
23556 * @implements ILocation
23557 * @constructor
23558 * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set
23559 */
23560 function Location(properties) {
23561 this.path = [];
23562 this.span = [];
23563 this.leadingDetachedComments = [];
23564 if (properties)
23565 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
23566 if (properties[keys[i]] != null)
23567 this[keys[i]] = properties[keys[i]];
23568 }
23569
23570 /**
23571 * Location path.
23572 * @member {Array.<number>} path
23573 * @memberof google.protobuf.SourceCodeInfo.Location
23574 * @instance
23575 */
23576 Location.prototype.path = $util.emptyArray;
23577
23578 /**
23579 * Location span.
23580 * @member {Array.<number>} span
23581 * @memberof google.protobuf.SourceCodeInfo.Location
23582 * @instance
23583 */
23584 Location.prototype.span = $util.emptyArray;
23585
23586 /**
23587 * Location leadingComments.
23588 * @member {string} leadingComments
23589 * @memberof google.protobuf.SourceCodeInfo.Location
23590 * @instance
23591 */
23592 Location.prototype.leadingComments = "";
23593
23594 /**
23595 * Location trailingComments.
23596 * @member {string} trailingComments
23597 * @memberof google.protobuf.SourceCodeInfo.Location
23598 * @instance
23599 */
23600 Location.prototype.trailingComments = "";
23601
23602 /**
23603 * Location leadingDetachedComments.
23604 * @member {Array.<string>} leadingDetachedComments
23605 * @memberof google.protobuf.SourceCodeInfo.Location
23606 * @instance
23607 */
23608 Location.prototype.leadingDetachedComments = $util.emptyArray;
23609
23610 /**
23611 * Creates a new Location instance using the specified properties.
23612 * @function create
23613 * @memberof google.protobuf.SourceCodeInfo.Location
23614 * @static
23615 * @param {google.protobuf.SourceCodeInfo.ILocation=} [properties] Properties to set
23616 * @returns {google.protobuf.SourceCodeInfo.Location} Location instance
23617 */
23618 Location.create = function create(properties) {
23619 return new Location(properties);
23620 };
23621
23622 /**
23623 * Encodes the specified Location message. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages.
23624 * @function encode
23625 * @memberof google.protobuf.SourceCodeInfo.Location
23626 * @static
23627 * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode
23628 * @param {$protobuf.Writer} [writer] Writer to encode to
23629 * @returns {$protobuf.Writer} Writer
23630 */
23631 Location.encode = function encode(message, writer) {
23632 if (!writer)
23633 writer = $Writer.create();
23634 if (message.path != null && message.path.length) {
23635 writer.uint32(/* id 1, wireType 2 =*/10).fork();
23636 for (var i = 0; i < message.path.length; ++i)
23637 writer.int32(message.path[i]);
23638 writer.ldelim();
23639 }
23640 if (message.span != null && message.span.length) {
23641 writer.uint32(/* id 2, wireType 2 =*/18).fork();
23642 for (var i = 0; i < message.span.length; ++i)
23643 writer.int32(message.span[i]);
23644 writer.ldelim();
23645 }
23646 if (message.leadingComments != null && Object.hasOwnProperty.call(message, "leadingComments"))
23647 writer.uint32(/* id 3, wireType 2 =*/26).string(message.leadingComments);
23648 if (message.trailingComments != null && Object.hasOwnProperty.call(message, "trailingComments"))
23649 writer.uint32(/* id 4, wireType 2 =*/34).string(message.trailingComments);
23650 if (message.leadingDetachedComments != null && message.leadingDetachedComments.length)
23651 for (var i = 0; i < message.leadingDetachedComments.length; ++i)
23652 writer.uint32(/* id 6, wireType 2 =*/50).string(message.leadingDetachedComments[i]);
23653 return writer;
23654 };
23655
23656 /**
23657 * Encodes the specified Location message, length delimited. Does not implicitly {@link google.protobuf.SourceCodeInfo.Location.verify|verify} messages.
23658 * @function encodeDelimited
23659 * @memberof google.protobuf.SourceCodeInfo.Location
23660 * @static
23661 * @param {google.protobuf.SourceCodeInfo.ILocation} message Location message or plain object to encode
23662 * @param {$protobuf.Writer} [writer] Writer to encode to
23663 * @returns {$protobuf.Writer} Writer
23664 */
23665 Location.encodeDelimited = function encodeDelimited(message, writer) {
23666 return this.encode(message, writer).ldelim();
23667 };
23668
23669 /**
23670 * Decodes a Location message from the specified reader or buffer.
23671 * @function decode
23672 * @memberof google.protobuf.SourceCodeInfo.Location
23673 * @static
23674 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
23675 * @param {number} [length] Message length if known beforehand
23676 * @returns {google.protobuf.SourceCodeInfo.Location} Location
23677 * @throws {Error} If the payload is not a reader or valid buffer
23678 * @throws {$protobuf.util.ProtocolError} If required fields are missing
23679 */
23680 Location.decode = function decode(reader, length) {
23681 if (!(reader instanceof $Reader))
23682 reader = $Reader.create(reader);
23683 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.SourceCodeInfo.Location();
23684 while (reader.pos < end) {
23685 var tag = reader.uint32();
23686 switch (tag >>> 3) {
23687 case 1:
23688 if (!(message.path && message.path.length))
23689 message.path = [];
23690 if ((tag & 7) === 2) {
23691 var end2 = reader.uint32() + reader.pos;
23692 while (reader.pos < end2)
23693 message.path.push(reader.int32());
23694 } else
23695 message.path.push(reader.int32());
23696 break;
23697 case 2:
23698 if (!(message.span && message.span.length))
23699 message.span = [];
23700 if ((tag & 7) === 2) {
23701 var end2 = reader.uint32() + reader.pos;
23702 while (reader.pos < end2)
23703 message.span.push(reader.int32());
23704 } else
23705 message.span.push(reader.int32());
23706 break;
23707 case 3:
23708 message.leadingComments = reader.string();
23709 break;
23710 case 4:
23711 message.trailingComments = reader.string();
23712 break;
23713 case 6:
23714 if (!(message.leadingDetachedComments && message.leadingDetachedComments.length))
23715 message.leadingDetachedComments = [];
23716 message.leadingDetachedComments.push(reader.string());
23717 break;
23718 default:
23719 reader.skipType(tag & 7);
23720 break;
23721 }
23722 }
23723 return message;
23724 };
23725
23726 /**
23727 * Decodes a Location message from the specified reader or buffer, length delimited.
23728 * @function decodeDelimited
23729 * @memberof google.protobuf.SourceCodeInfo.Location
23730 * @static
23731 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
23732 * @returns {google.protobuf.SourceCodeInfo.Location} Location
23733 * @throws {Error} If the payload is not a reader or valid buffer
23734 * @throws {$protobuf.util.ProtocolError} If required fields are missing
23735 */
23736 Location.decodeDelimited = function decodeDelimited(reader) {
23737 if (!(reader instanceof $Reader))
23738 reader = new $Reader(reader);
23739 return this.decode(reader, reader.uint32());
23740 };
23741
23742 /**
23743 * Verifies a Location message.
23744 * @function verify
23745 * @memberof google.protobuf.SourceCodeInfo.Location
23746 * @static
23747 * @param {Object.<string,*>} message Plain object to verify
23748 * @returns {string|null} `null` if valid, otherwise the reason why it is not
23749 */
23750 Location.verify = function verify(message) {
23751 if (typeof message !== "object" || message === null)
23752 return "object expected";
23753 if (message.path != null && message.hasOwnProperty("path")) {
23754 if (!Array.isArray(message.path))
23755 return "path: array expected";
23756 for (var i = 0; i < message.path.length; ++i)
23757 if (!$util.isInteger(message.path[i]))
23758 return "path: integer[] expected";
23759 }
23760 if (message.span != null && message.hasOwnProperty("span")) {
23761 if (!Array.isArray(message.span))
23762 return "span: array expected";
23763 for (var i = 0; i < message.span.length; ++i)
23764 if (!$util.isInteger(message.span[i]))
23765 return "span: integer[] expected";
23766 }
23767 if (message.leadingComments != null && message.hasOwnProperty("leadingComments"))
23768 if (!$util.isString(message.leadingComments))
23769 return "leadingComments: string expected";
23770 if (message.trailingComments != null && message.hasOwnProperty("trailingComments"))
23771 if (!$util.isString(message.trailingComments))
23772 return "trailingComments: string expected";
23773 if (message.leadingDetachedComments != null && message.hasOwnProperty("leadingDetachedComments")) {
23774 if (!Array.isArray(message.leadingDetachedComments))
23775 return "leadingDetachedComments: array expected";
23776 for (var i = 0; i < message.leadingDetachedComments.length; ++i)
23777 if (!$util.isString(message.leadingDetachedComments[i]))
23778 return "leadingDetachedComments: string[] expected";
23779 }
23780 return null;
23781 };
23782
23783 /**
23784 * Creates a Location message from a plain object. Also converts values to their respective internal types.
23785 * @function fromObject
23786 * @memberof google.protobuf.SourceCodeInfo.Location
23787 * @static
23788 * @param {Object.<string,*>} object Plain object
23789 * @returns {google.protobuf.SourceCodeInfo.Location} Location
23790 */
23791 Location.fromObject = function fromObject(object) {
23792 if (object instanceof $root.google.protobuf.SourceCodeInfo.Location)
23793 return object;
23794 var message = new $root.google.protobuf.SourceCodeInfo.Location();
23795 if (object.path) {
23796 if (!Array.isArray(object.path))
23797 throw TypeError(".google.protobuf.SourceCodeInfo.Location.path: array expected");
23798 message.path = [];
23799 for (var i = 0; i < object.path.length; ++i)
23800 message.path[i] = object.path[i] | 0;
23801 }
23802 if (object.span) {
23803 if (!Array.isArray(object.span))
23804 throw TypeError(".google.protobuf.SourceCodeInfo.Location.span: array expected");
23805 message.span = [];
23806 for (var i = 0; i < object.span.length; ++i)
23807 message.span[i] = object.span[i] | 0;
23808 }
23809 if (object.leadingComments != null)
23810 message.leadingComments = String(object.leadingComments);
23811 if (object.trailingComments != null)
23812 message.trailingComments = String(object.trailingComments);
23813 if (object.leadingDetachedComments) {
23814 if (!Array.isArray(object.leadingDetachedComments))
23815 throw TypeError(".google.protobuf.SourceCodeInfo.Location.leadingDetachedComments: array expected");
23816 message.leadingDetachedComments = [];
23817 for (var i = 0; i < object.leadingDetachedComments.length; ++i)
23818 message.leadingDetachedComments[i] = String(object.leadingDetachedComments[i]);
23819 }
23820 return message;
23821 };
23822
23823 /**
23824 * Creates a plain object from a Location message. Also converts values to other types if specified.
23825 * @function toObject
23826 * @memberof google.protobuf.SourceCodeInfo.Location
23827 * @static
23828 * @param {google.protobuf.SourceCodeInfo.Location} message Location
23829 * @param {$protobuf.IConversionOptions} [options] Conversion options
23830 * @returns {Object.<string,*>} Plain object
23831 */
23832 Location.toObject = function toObject(message, options) {
23833 if (!options)
23834 options = {};
23835 var object = {};
23836 if (options.arrays || options.defaults) {
23837 object.path = [];
23838 object.span = [];
23839 object.leadingDetachedComments = [];
23840 }
23841 if (options.defaults) {
23842 object.leadingComments = "";
23843 object.trailingComments = "";
23844 }
23845 if (message.path && message.path.length) {
23846 object.path = [];
23847 for (var j = 0; j < message.path.length; ++j)
23848 object.path[j] = message.path[j];
23849 }
23850 if (message.span && message.span.length) {
23851 object.span = [];
23852 for (var j = 0; j < message.span.length; ++j)
23853 object.span[j] = message.span[j];
23854 }
23855 if (message.leadingComments != null && message.hasOwnProperty("leadingComments"))
23856 object.leadingComments = message.leadingComments;
23857 if (message.trailingComments != null && message.hasOwnProperty("trailingComments"))
23858 object.trailingComments = message.trailingComments;
23859 if (message.leadingDetachedComments && message.leadingDetachedComments.length) {
23860 object.leadingDetachedComments = [];
23861 for (var j = 0; j < message.leadingDetachedComments.length; ++j)
23862 object.leadingDetachedComments[j] = message.leadingDetachedComments[j];
23863 }
23864 return object;
23865 };
23866
23867 /**
23868 * Converts this Location to JSON.
23869 * @function toJSON
23870 * @memberof google.protobuf.SourceCodeInfo.Location
23871 * @instance
23872 * @returns {Object.<string,*>} JSON object
23873 */
23874 Location.prototype.toJSON = function toJSON() {
23875 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
23876 };
23877
23878 return Location;
23879 })();
23880
23881 return SourceCodeInfo;
23882 })();
23883
23884 protobuf.GeneratedCodeInfo = (function() {
23885
23886 /**
23887 * Properties of a GeneratedCodeInfo.
23888 * @memberof google.protobuf
23889 * @interface IGeneratedCodeInfo
23890 * @property {Array.<google.protobuf.GeneratedCodeInfo.IAnnotation>|null} [annotation] GeneratedCodeInfo annotation
23891 */
23892
23893 /**
23894 * Constructs a new GeneratedCodeInfo.
23895 * @memberof google.protobuf
23896 * @classdesc Represents a GeneratedCodeInfo.
23897 * @implements IGeneratedCodeInfo
23898 * @constructor
23899 * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set
23900 */
23901 function GeneratedCodeInfo(properties) {
23902 this.annotation = [];
23903 if (properties)
23904 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
23905 if (properties[keys[i]] != null)
23906 this[keys[i]] = properties[keys[i]];
23907 }
23908
23909 /**
23910 * GeneratedCodeInfo annotation.
23911 * @member {Array.<google.protobuf.GeneratedCodeInfo.IAnnotation>} annotation
23912 * @memberof google.protobuf.GeneratedCodeInfo
23913 * @instance
23914 */
23915 GeneratedCodeInfo.prototype.annotation = $util.emptyArray;
23916
23917 /**
23918 * Creates a new GeneratedCodeInfo instance using the specified properties.
23919 * @function create
23920 * @memberof google.protobuf.GeneratedCodeInfo
23921 * @static
23922 * @param {google.protobuf.IGeneratedCodeInfo=} [properties] Properties to set
23923 * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo instance
23924 */
23925 GeneratedCodeInfo.create = function create(properties) {
23926 return new GeneratedCodeInfo(properties);
23927 };
23928
23929 /**
23930 * Encodes the specified GeneratedCodeInfo message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages.
23931 * @function encode
23932 * @memberof google.protobuf.GeneratedCodeInfo
23933 * @static
23934 * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode
23935 * @param {$protobuf.Writer} [writer] Writer to encode to
23936 * @returns {$protobuf.Writer} Writer
23937 */
23938 GeneratedCodeInfo.encode = function encode(message, writer) {
23939 if (!writer)
23940 writer = $Writer.create();
23941 if (message.annotation != null && message.annotation.length)
23942 for (var i = 0; i < message.annotation.length; ++i)
23943 $root.google.protobuf.GeneratedCodeInfo.Annotation.encode(message.annotation[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
23944 return writer;
23945 };
23946
23947 /**
23948 * Encodes the specified GeneratedCodeInfo message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.verify|verify} messages.
23949 * @function encodeDelimited
23950 * @memberof google.protobuf.GeneratedCodeInfo
23951 * @static
23952 * @param {google.protobuf.IGeneratedCodeInfo} message GeneratedCodeInfo message or plain object to encode
23953 * @param {$protobuf.Writer} [writer] Writer to encode to
23954 * @returns {$protobuf.Writer} Writer
23955 */
23956 GeneratedCodeInfo.encodeDelimited = function encodeDelimited(message, writer) {
23957 return this.encode(message, writer).ldelim();
23958 };
23959
23960 /**
23961 * Decodes a GeneratedCodeInfo message from the specified reader or buffer.
23962 * @function decode
23963 * @memberof google.protobuf.GeneratedCodeInfo
23964 * @static
23965 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
23966 * @param {number} [length] Message length if known beforehand
23967 * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo
23968 * @throws {Error} If the payload is not a reader or valid buffer
23969 * @throws {$protobuf.util.ProtocolError} If required fields are missing
23970 */
23971 GeneratedCodeInfo.decode = function decode(reader, length) {
23972 if (!(reader instanceof $Reader))
23973 reader = $Reader.create(reader);
23974 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo();
23975 while (reader.pos < end) {
23976 var tag = reader.uint32();
23977 switch (tag >>> 3) {
23978 case 1:
23979 if (!(message.annotation && message.annotation.length))
23980 message.annotation = [];
23981 message.annotation.push($root.google.protobuf.GeneratedCodeInfo.Annotation.decode(reader, reader.uint32()));
23982 break;
23983 default:
23984 reader.skipType(tag & 7);
23985 break;
23986 }
23987 }
23988 return message;
23989 };
23990
23991 /**
23992 * Decodes a GeneratedCodeInfo message from the specified reader or buffer, length delimited.
23993 * @function decodeDelimited
23994 * @memberof google.protobuf.GeneratedCodeInfo
23995 * @static
23996 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
23997 * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo
23998 * @throws {Error} If the payload is not a reader or valid buffer
23999 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24000 */
24001 GeneratedCodeInfo.decodeDelimited = function decodeDelimited(reader) {
24002 if (!(reader instanceof $Reader))
24003 reader = new $Reader(reader);
24004 return this.decode(reader, reader.uint32());
24005 };
24006
24007 /**
24008 * Verifies a GeneratedCodeInfo message.
24009 * @function verify
24010 * @memberof google.protobuf.GeneratedCodeInfo
24011 * @static
24012 * @param {Object.<string,*>} message Plain object to verify
24013 * @returns {string|null} `null` if valid, otherwise the reason why it is not
24014 */
24015 GeneratedCodeInfo.verify = function verify(message) {
24016 if (typeof message !== "object" || message === null)
24017 return "object expected";
24018 if (message.annotation != null && message.hasOwnProperty("annotation")) {
24019 if (!Array.isArray(message.annotation))
24020 return "annotation: array expected";
24021 for (var i = 0; i < message.annotation.length; ++i) {
24022 var error = $root.google.protobuf.GeneratedCodeInfo.Annotation.verify(message.annotation[i]);
24023 if (error)
24024 return "annotation." + error;
24025 }
24026 }
24027 return null;
24028 };
24029
24030 /**
24031 * Creates a GeneratedCodeInfo message from a plain object. Also converts values to their respective internal types.
24032 * @function fromObject
24033 * @memberof google.protobuf.GeneratedCodeInfo
24034 * @static
24035 * @param {Object.<string,*>} object Plain object
24036 * @returns {google.protobuf.GeneratedCodeInfo} GeneratedCodeInfo
24037 */
24038 GeneratedCodeInfo.fromObject = function fromObject(object) {
24039 if (object instanceof $root.google.protobuf.GeneratedCodeInfo)
24040 return object;
24041 var message = new $root.google.protobuf.GeneratedCodeInfo();
24042 if (object.annotation) {
24043 if (!Array.isArray(object.annotation))
24044 throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: array expected");
24045 message.annotation = [];
24046 for (var i = 0; i < object.annotation.length; ++i) {
24047 if (typeof object.annotation[i] !== "object")
24048 throw TypeError(".google.protobuf.GeneratedCodeInfo.annotation: object expected");
24049 message.annotation[i] = $root.google.protobuf.GeneratedCodeInfo.Annotation.fromObject(object.annotation[i]);
24050 }
24051 }
24052 return message;
24053 };
24054
24055 /**
24056 * Creates a plain object from a GeneratedCodeInfo message. Also converts values to other types if specified.
24057 * @function toObject
24058 * @memberof google.protobuf.GeneratedCodeInfo
24059 * @static
24060 * @param {google.protobuf.GeneratedCodeInfo} message GeneratedCodeInfo
24061 * @param {$protobuf.IConversionOptions} [options] Conversion options
24062 * @returns {Object.<string,*>} Plain object
24063 */
24064 GeneratedCodeInfo.toObject = function toObject(message, options) {
24065 if (!options)
24066 options = {};
24067 var object = {};
24068 if (options.arrays || options.defaults)
24069 object.annotation = [];
24070 if (message.annotation && message.annotation.length) {
24071 object.annotation = [];
24072 for (var j = 0; j < message.annotation.length; ++j)
24073 object.annotation[j] = $root.google.protobuf.GeneratedCodeInfo.Annotation.toObject(message.annotation[j], options);
24074 }
24075 return object;
24076 };
24077
24078 /**
24079 * Converts this GeneratedCodeInfo to JSON.
24080 * @function toJSON
24081 * @memberof google.protobuf.GeneratedCodeInfo
24082 * @instance
24083 * @returns {Object.<string,*>} JSON object
24084 */
24085 GeneratedCodeInfo.prototype.toJSON = function toJSON() {
24086 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
24087 };
24088
24089 GeneratedCodeInfo.Annotation = (function() {
24090
24091 /**
24092 * Properties of an Annotation.
24093 * @memberof google.protobuf.GeneratedCodeInfo
24094 * @interface IAnnotation
24095 * @property {Array.<number>|null} [path] Annotation path
24096 * @property {string|null} [sourceFile] Annotation sourceFile
24097 * @property {number|null} [begin] Annotation begin
24098 * @property {number|null} [end] Annotation end
24099 */
24100
24101 /**
24102 * Constructs a new Annotation.
24103 * @memberof google.protobuf.GeneratedCodeInfo
24104 * @classdesc Represents an Annotation.
24105 * @implements IAnnotation
24106 * @constructor
24107 * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set
24108 */
24109 function Annotation(properties) {
24110 this.path = [];
24111 if (properties)
24112 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
24113 if (properties[keys[i]] != null)
24114 this[keys[i]] = properties[keys[i]];
24115 }
24116
24117 /**
24118 * Annotation path.
24119 * @member {Array.<number>} path
24120 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24121 * @instance
24122 */
24123 Annotation.prototype.path = $util.emptyArray;
24124
24125 /**
24126 * Annotation sourceFile.
24127 * @member {string} sourceFile
24128 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24129 * @instance
24130 */
24131 Annotation.prototype.sourceFile = "";
24132
24133 /**
24134 * Annotation begin.
24135 * @member {number} begin
24136 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24137 * @instance
24138 */
24139 Annotation.prototype.begin = 0;
24140
24141 /**
24142 * Annotation end.
24143 * @member {number} end
24144 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24145 * @instance
24146 */
24147 Annotation.prototype.end = 0;
24148
24149 /**
24150 * Creates a new Annotation instance using the specified properties.
24151 * @function create
24152 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24153 * @static
24154 * @param {google.protobuf.GeneratedCodeInfo.IAnnotation=} [properties] Properties to set
24155 * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation instance
24156 */
24157 Annotation.create = function create(properties) {
24158 return new Annotation(properties);
24159 };
24160
24161 /**
24162 * Encodes the specified Annotation message. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages.
24163 * @function encode
24164 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24165 * @static
24166 * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode
24167 * @param {$protobuf.Writer} [writer] Writer to encode to
24168 * @returns {$protobuf.Writer} Writer
24169 */
24170 Annotation.encode = function encode(message, writer) {
24171 if (!writer)
24172 writer = $Writer.create();
24173 if (message.path != null && message.path.length) {
24174 writer.uint32(/* id 1, wireType 2 =*/10).fork();
24175 for (var i = 0; i < message.path.length; ++i)
24176 writer.int32(message.path[i]);
24177 writer.ldelim();
24178 }
24179 if (message.sourceFile != null && Object.hasOwnProperty.call(message, "sourceFile"))
24180 writer.uint32(/* id 2, wireType 2 =*/18).string(message.sourceFile);
24181 if (message.begin != null && Object.hasOwnProperty.call(message, "begin"))
24182 writer.uint32(/* id 3, wireType 0 =*/24).int32(message.begin);
24183 if (message.end != null && Object.hasOwnProperty.call(message, "end"))
24184 writer.uint32(/* id 4, wireType 0 =*/32).int32(message.end);
24185 return writer;
24186 };
24187
24188 /**
24189 * Encodes the specified Annotation message, length delimited. Does not implicitly {@link google.protobuf.GeneratedCodeInfo.Annotation.verify|verify} messages.
24190 * @function encodeDelimited
24191 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24192 * @static
24193 * @param {google.protobuf.GeneratedCodeInfo.IAnnotation} message Annotation message or plain object to encode
24194 * @param {$protobuf.Writer} [writer] Writer to encode to
24195 * @returns {$protobuf.Writer} Writer
24196 */
24197 Annotation.encodeDelimited = function encodeDelimited(message, writer) {
24198 return this.encode(message, writer).ldelim();
24199 };
24200
24201 /**
24202 * Decodes an Annotation message from the specified reader or buffer.
24203 * @function decode
24204 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24205 * @static
24206 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
24207 * @param {number} [length] Message length if known beforehand
24208 * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation
24209 * @throws {Error} If the payload is not a reader or valid buffer
24210 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24211 */
24212 Annotation.decode = function decode(reader, length) {
24213 if (!(reader instanceof $Reader))
24214 reader = $Reader.create(reader);
24215 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.GeneratedCodeInfo.Annotation();
24216 while (reader.pos < end) {
24217 var tag = reader.uint32();
24218 switch (tag >>> 3) {
24219 case 1:
24220 if (!(message.path && message.path.length))
24221 message.path = [];
24222 if ((tag & 7) === 2) {
24223 var end2 = reader.uint32() + reader.pos;
24224 while (reader.pos < end2)
24225 message.path.push(reader.int32());
24226 } else
24227 message.path.push(reader.int32());
24228 break;
24229 case 2:
24230 message.sourceFile = reader.string();
24231 break;
24232 case 3:
24233 message.begin = reader.int32();
24234 break;
24235 case 4:
24236 message.end = reader.int32();
24237 break;
24238 default:
24239 reader.skipType(tag & 7);
24240 break;
24241 }
24242 }
24243 return message;
24244 };
24245
24246 /**
24247 * Decodes an Annotation message from the specified reader or buffer, length delimited.
24248 * @function decodeDelimited
24249 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24250 * @static
24251 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
24252 * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation
24253 * @throws {Error} If the payload is not a reader or valid buffer
24254 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24255 */
24256 Annotation.decodeDelimited = function decodeDelimited(reader) {
24257 if (!(reader instanceof $Reader))
24258 reader = new $Reader(reader);
24259 return this.decode(reader, reader.uint32());
24260 };
24261
24262 /**
24263 * Verifies an Annotation message.
24264 * @function verify
24265 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24266 * @static
24267 * @param {Object.<string,*>} message Plain object to verify
24268 * @returns {string|null} `null` if valid, otherwise the reason why it is not
24269 */
24270 Annotation.verify = function verify(message) {
24271 if (typeof message !== "object" || message === null)
24272 return "object expected";
24273 if (message.path != null && message.hasOwnProperty("path")) {
24274 if (!Array.isArray(message.path))
24275 return "path: array expected";
24276 for (var i = 0; i < message.path.length; ++i)
24277 if (!$util.isInteger(message.path[i]))
24278 return "path: integer[] expected";
24279 }
24280 if (message.sourceFile != null && message.hasOwnProperty("sourceFile"))
24281 if (!$util.isString(message.sourceFile))
24282 return "sourceFile: string expected";
24283 if (message.begin != null && message.hasOwnProperty("begin"))
24284 if (!$util.isInteger(message.begin))
24285 return "begin: integer expected";
24286 if (message.end != null && message.hasOwnProperty("end"))
24287 if (!$util.isInteger(message.end))
24288 return "end: integer expected";
24289 return null;
24290 };
24291
24292 /**
24293 * Creates an Annotation message from a plain object. Also converts values to their respective internal types.
24294 * @function fromObject
24295 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24296 * @static
24297 * @param {Object.<string,*>} object Plain object
24298 * @returns {google.protobuf.GeneratedCodeInfo.Annotation} Annotation
24299 */
24300 Annotation.fromObject = function fromObject(object) {
24301 if (object instanceof $root.google.protobuf.GeneratedCodeInfo.Annotation)
24302 return object;
24303 var message = new $root.google.protobuf.GeneratedCodeInfo.Annotation();
24304 if (object.path) {
24305 if (!Array.isArray(object.path))
24306 throw TypeError(".google.protobuf.GeneratedCodeInfo.Annotation.path: array expected");
24307 message.path = [];
24308 for (var i = 0; i < object.path.length; ++i)
24309 message.path[i] = object.path[i] | 0;
24310 }
24311 if (object.sourceFile != null)
24312 message.sourceFile = String(object.sourceFile);
24313 if (object.begin != null)
24314 message.begin = object.begin | 0;
24315 if (object.end != null)
24316 message.end = object.end | 0;
24317 return message;
24318 };
24319
24320 /**
24321 * Creates a plain object from an Annotation message. Also converts values to other types if specified.
24322 * @function toObject
24323 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24324 * @static
24325 * @param {google.protobuf.GeneratedCodeInfo.Annotation} message Annotation
24326 * @param {$protobuf.IConversionOptions} [options] Conversion options
24327 * @returns {Object.<string,*>} Plain object
24328 */
24329 Annotation.toObject = function toObject(message, options) {
24330 if (!options)
24331 options = {};
24332 var object = {};
24333 if (options.arrays || options.defaults)
24334 object.path = [];
24335 if (options.defaults) {
24336 object.sourceFile = "";
24337 object.begin = 0;
24338 object.end = 0;
24339 }
24340 if (message.path && message.path.length) {
24341 object.path = [];
24342 for (var j = 0; j < message.path.length; ++j)
24343 object.path[j] = message.path[j];
24344 }
24345 if (message.sourceFile != null && message.hasOwnProperty("sourceFile"))
24346 object.sourceFile = message.sourceFile;
24347 if (message.begin != null && message.hasOwnProperty("begin"))
24348 object.begin = message.begin;
24349 if (message.end != null && message.hasOwnProperty("end"))
24350 object.end = message.end;
24351 return object;
24352 };
24353
24354 /**
24355 * Converts this Annotation to JSON.
24356 * @function toJSON
24357 * @memberof google.protobuf.GeneratedCodeInfo.Annotation
24358 * @instance
24359 * @returns {Object.<string,*>} JSON object
24360 */
24361 Annotation.prototype.toJSON = function toJSON() {
24362 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
24363 };
24364
24365 return Annotation;
24366 })();
24367
24368 return GeneratedCodeInfo;
24369 })();
24370
24371 protobuf.Any = (function() {
24372
24373 /**
24374 * Properties of an Any.
24375 * @memberof google.protobuf
24376 * @interface IAny
24377 * @property {string|null} [type_url] Any type_url
24378 * @property {Uint8Array|null} [value] Any value
24379 */
24380
24381 /**
24382 * Constructs a new Any.
24383 * @memberof google.protobuf
24384 * @classdesc Represents an Any.
24385 * @implements IAny
24386 * @constructor
24387 * @param {google.protobuf.IAny=} [properties] Properties to set
24388 */
24389 function Any(properties) {
24390 if (properties)
24391 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
24392 if (properties[keys[i]] != null)
24393 this[keys[i]] = properties[keys[i]];
24394 }
24395
24396 /**
24397 * Any type_url.
24398 * @member {string} type_url
24399 * @memberof google.protobuf.Any
24400 * @instance
24401 */
24402 Any.prototype.type_url = "";
24403
24404 /**
24405 * Any value.
24406 * @member {Uint8Array} value
24407 * @memberof google.protobuf.Any
24408 * @instance
24409 */
24410 Any.prototype.value = $util.newBuffer([]);
24411
24412 /**
24413 * Creates a new Any instance using the specified properties.
24414 * @function create
24415 * @memberof google.protobuf.Any
24416 * @static
24417 * @param {google.protobuf.IAny=} [properties] Properties to set
24418 * @returns {google.protobuf.Any} Any instance
24419 */
24420 Any.create = function create(properties) {
24421 return new Any(properties);
24422 };
24423
24424 /**
24425 * Encodes the specified Any message. Does not implicitly {@link google.protobuf.Any.verify|verify} messages.
24426 * @function encode
24427 * @memberof google.protobuf.Any
24428 * @static
24429 * @param {google.protobuf.IAny} message Any message or plain object to encode
24430 * @param {$protobuf.Writer} [writer] Writer to encode to
24431 * @returns {$protobuf.Writer} Writer
24432 */
24433 Any.encode = function encode(message, writer) {
24434 if (!writer)
24435 writer = $Writer.create();
24436 if (message.type_url != null && Object.hasOwnProperty.call(message, "type_url"))
24437 writer.uint32(/* id 1, wireType 2 =*/10).string(message.type_url);
24438 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
24439 writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.value);
24440 return writer;
24441 };
24442
24443 /**
24444 * Encodes the specified Any message, length delimited. Does not implicitly {@link google.protobuf.Any.verify|verify} messages.
24445 * @function encodeDelimited
24446 * @memberof google.protobuf.Any
24447 * @static
24448 * @param {google.protobuf.IAny} message Any message or plain object to encode
24449 * @param {$protobuf.Writer} [writer] Writer to encode to
24450 * @returns {$protobuf.Writer} Writer
24451 */
24452 Any.encodeDelimited = function encodeDelimited(message, writer) {
24453 return this.encode(message, writer).ldelim();
24454 };
24455
24456 /**
24457 * Decodes an Any message from the specified reader or buffer.
24458 * @function decode
24459 * @memberof google.protobuf.Any
24460 * @static
24461 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
24462 * @param {number} [length] Message length if known beforehand
24463 * @returns {google.protobuf.Any} Any
24464 * @throws {Error} If the payload is not a reader or valid buffer
24465 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24466 */
24467 Any.decode = function decode(reader, length) {
24468 if (!(reader instanceof $Reader))
24469 reader = $Reader.create(reader);
24470 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Any();
24471 while (reader.pos < end) {
24472 var tag = reader.uint32();
24473 switch (tag >>> 3) {
24474 case 1:
24475 message.type_url = reader.string();
24476 break;
24477 case 2:
24478 message.value = reader.bytes();
24479 break;
24480 default:
24481 reader.skipType(tag & 7);
24482 break;
24483 }
24484 }
24485 return message;
24486 };
24487
24488 /**
24489 * Decodes an Any message from the specified reader or buffer, length delimited.
24490 * @function decodeDelimited
24491 * @memberof google.protobuf.Any
24492 * @static
24493 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
24494 * @returns {google.protobuf.Any} Any
24495 * @throws {Error} If the payload is not a reader or valid buffer
24496 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24497 */
24498 Any.decodeDelimited = function decodeDelimited(reader) {
24499 if (!(reader instanceof $Reader))
24500 reader = new $Reader(reader);
24501 return this.decode(reader, reader.uint32());
24502 };
24503
24504 /**
24505 * Verifies an Any message.
24506 * @function verify
24507 * @memberof google.protobuf.Any
24508 * @static
24509 * @param {Object.<string,*>} message Plain object to verify
24510 * @returns {string|null} `null` if valid, otherwise the reason why it is not
24511 */
24512 Any.verify = function verify(message) {
24513 if (typeof message !== "object" || message === null)
24514 return "object expected";
24515 if (message.type_url != null && message.hasOwnProperty("type_url"))
24516 if (!$util.isString(message.type_url))
24517 return "type_url: string expected";
24518 if (message.value != null && message.hasOwnProperty("value"))
24519 if (!(message.value && typeof message.value.length === "number" || $util.isString(message.value)))
24520 return "value: buffer expected";
24521 return null;
24522 };
24523
24524 /**
24525 * Creates an Any message from a plain object. Also converts values to their respective internal types.
24526 * @function fromObject
24527 * @memberof google.protobuf.Any
24528 * @static
24529 * @param {Object.<string,*>} object Plain object
24530 * @returns {google.protobuf.Any} Any
24531 */
24532 Any.fromObject = function fromObject(object) {
24533 if (object instanceof $root.google.protobuf.Any)
24534 return object;
24535 var message = new $root.google.protobuf.Any();
24536 if (object.type_url != null)
24537 message.type_url = String(object.type_url);
24538 if (object.value != null)
24539 if (typeof object.value === "string")
24540 $util.base64.decode(object.value, message.value = $util.newBuffer($util.base64.length(object.value)), 0);
24541 else if (object.value.length)
24542 message.value = object.value;
24543 return message;
24544 };
24545
24546 /**
24547 * Creates a plain object from an Any message. Also converts values to other types if specified.
24548 * @function toObject
24549 * @memberof google.protobuf.Any
24550 * @static
24551 * @param {google.protobuf.Any} message Any
24552 * @param {$protobuf.IConversionOptions} [options] Conversion options
24553 * @returns {Object.<string,*>} Plain object
24554 */
24555 Any.toObject = function toObject(message, options) {
24556 if (!options)
24557 options = {};
24558 var object = {};
24559 if (options.defaults) {
24560 object.type_url = "";
24561 if (options.bytes === String)
24562 object.value = "";
24563 else {
24564 object.value = [];
24565 if (options.bytes !== Array)
24566 object.value = $util.newBuffer(object.value);
24567 }
24568 }
24569 if (message.type_url != null && message.hasOwnProperty("type_url"))
24570 object.type_url = message.type_url;
24571 if (message.value != null && message.hasOwnProperty("value"))
24572 object.value = options.bytes === String ? $util.base64.encode(message.value, 0, message.value.length) : options.bytes === Array ? Array.prototype.slice.call(message.value) : message.value;
24573 return object;
24574 };
24575
24576 /**
24577 * Converts this Any to JSON.
24578 * @function toJSON
24579 * @memberof google.protobuf.Any
24580 * @instance
24581 * @returns {Object.<string,*>} JSON object
24582 */
24583 Any.prototype.toJSON = function toJSON() {
24584 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
24585 };
24586
24587 return Any;
24588 })();
24589
24590 protobuf.Duration = (function() {
24591
24592 /**
24593 * Properties of a Duration.
24594 * @memberof google.protobuf
24595 * @interface IDuration
24596 * @property {number|Long|null} [seconds] Duration seconds
24597 * @property {number|null} [nanos] Duration nanos
24598 */
24599
24600 /**
24601 * Constructs a new Duration.
24602 * @memberof google.protobuf
24603 * @classdesc Represents a Duration.
24604 * @implements IDuration
24605 * @constructor
24606 * @param {google.protobuf.IDuration=} [properties] Properties to set
24607 */
24608 function Duration(properties) {
24609 if (properties)
24610 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
24611 if (properties[keys[i]] != null)
24612 this[keys[i]] = properties[keys[i]];
24613 }
24614
24615 /**
24616 * Duration seconds.
24617 * @member {number|Long} seconds
24618 * @memberof google.protobuf.Duration
24619 * @instance
24620 */
24621 Duration.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
24622
24623 /**
24624 * Duration nanos.
24625 * @member {number} nanos
24626 * @memberof google.protobuf.Duration
24627 * @instance
24628 */
24629 Duration.prototype.nanos = 0;
24630
24631 /**
24632 * Creates a new Duration instance using the specified properties.
24633 * @function create
24634 * @memberof google.protobuf.Duration
24635 * @static
24636 * @param {google.protobuf.IDuration=} [properties] Properties to set
24637 * @returns {google.protobuf.Duration} Duration instance
24638 */
24639 Duration.create = function create(properties) {
24640 return new Duration(properties);
24641 };
24642
24643 /**
24644 * Encodes the specified Duration message. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages.
24645 * @function encode
24646 * @memberof google.protobuf.Duration
24647 * @static
24648 * @param {google.protobuf.IDuration} message Duration message or plain object to encode
24649 * @param {$protobuf.Writer} [writer] Writer to encode to
24650 * @returns {$protobuf.Writer} Writer
24651 */
24652 Duration.encode = function encode(message, writer) {
24653 if (!writer)
24654 writer = $Writer.create();
24655 if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds"))
24656 writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds);
24657 if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos"))
24658 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos);
24659 return writer;
24660 };
24661
24662 /**
24663 * Encodes the specified Duration message, length delimited. Does not implicitly {@link google.protobuf.Duration.verify|verify} messages.
24664 * @function encodeDelimited
24665 * @memberof google.protobuf.Duration
24666 * @static
24667 * @param {google.protobuf.IDuration} message Duration message or plain object to encode
24668 * @param {$protobuf.Writer} [writer] Writer to encode to
24669 * @returns {$protobuf.Writer} Writer
24670 */
24671 Duration.encodeDelimited = function encodeDelimited(message, writer) {
24672 return this.encode(message, writer).ldelim();
24673 };
24674
24675 /**
24676 * Decodes a Duration message from the specified reader or buffer.
24677 * @function decode
24678 * @memberof google.protobuf.Duration
24679 * @static
24680 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
24681 * @param {number} [length] Message length if known beforehand
24682 * @returns {google.protobuf.Duration} Duration
24683 * @throws {Error} If the payload is not a reader or valid buffer
24684 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24685 */
24686 Duration.decode = function decode(reader, length) {
24687 if (!(reader instanceof $Reader))
24688 reader = $Reader.create(reader);
24689 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Duration();
24690 while (reader.pos < end) {
24691 var tag = reader.uint32();
24692 switch (tag >>> 3) {
24693 case 1:
24694 message.seconds = reader.int64();
24695 break;
24696 case 2:
24697 message.nanos = reader.int32();
24698 break;
24699 default:
24700 reader.skipType(tag & 7);
24701 break;
24702 }
24703 }
24704 return message;
24705 };
24706
24707 /**
24708 * Decodes a Duration message from the specified reader or buffer, length delimited.
24709 * @function decodeDelimited
24710 * @memberof google.protobuf.Duration
24711 * @static
24712 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
24713 * @returns {google.protobuf.Duration} Duration
24714 * @throws {Error} If the payload is not a reader or valid buffer
24715 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24716 */
24717 Duration.decodeDelimited = function decodeDelimited(reader) {
24718 if (!(reader instanceof $Reader))
24719 reader = new $Reader(reader);
24720 return this.decode(reader, reader.uint32());
24721 };
24722
24723 /**
24724 * Verifies a Duration message.
24725 * @function verify
24726 * @memberof google.protobuf.Duration
24727 * @static
24728 * @param {Object.<string,*>} message Plain object to verify
24729 * @returns {string|null} `null` if valid, otherwise the reason why it is not
24730 */
24731 Duration.verify = function verify(message) {
24732 if (typeof message !== "object" || message === null)
24733 return "object expected";
24734 if (message.seconds != null && message.hasOwnProperty("seconds"))
24735 if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high)))
24736 return "seconds: integer|Long expected";
24737 if (message.nanos != null && message.hasOwnProperty("nanos"))
24738 if (!$util.isInteger(message.nanos))
24739 return "nanos: integer expected";
24740 return null;
24741 };
24742
24743 /**
24744 * Creates a Duration message from a plain object. Also converts values to their respective internal types.
24745 * @function fromObject
24746 * @memberof google.protobuf.Duration
24747 * @static
24748 * @param {Object.<string,*>} object Plain object
24749 * @returns {google.protobuf.Duration} Duration
24750 */
24751 Duration.fromObject = function fromObject(object) {
24752 if (object instanceof $root.google.protobuf.Duration)
24753 return object;
24754 var message = new $root.google.protobuf.Duration();
24755 if (object.seconds != null)
24756 if ($util.Long)
24757 (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false;
24758 else if (typeof object.seconds === "string")
24759 message.seconds = parseInt(object.seconds, 10);
24760 else if (typeof object.seconds === "number")
24761 message.seconds = object.seconds;
24762 else if (typeof object.seconds === "object")
24763 message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber();
24764 if (object.nanos != null)
24765 message.nanos = object.nanos | 0;
24766 return message;
24767 };
24768
24769 /**
24770 * Creates a plain object from a Duration message. Also converts values to other types if specified.
24771 * @function toObject
24772 * @memberof google.protobuf.Duration
24773 * @static
24774 * @param {google.protobuf.Duration} message Duration
24775 * @param {$protobuf.IConversionOptions} [options] Conversion options
24776 * @returns {Object.<string,*>} Plain object
24777 */
24778 Duration.toObject = function toObject(message, options) {
24779 if (!options)
24780 options = {};
24781 var object = {};
24782 if (options.defaults) {
24783 if ($util.Long) {
24784 var long = new $util.Long(0, 0, false);
24785 object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
24786 } else
24787 object.seconds = options.longs === String ? "0" : 0;
24788 object.nanos = 0;
24789 }
24790 if (message.seconds != null && message.hasOwnProperty("seconds"))
24791 if (typeof message.seconds === "number")
24792 object.seconds = options.longs === String ? String(message.seconds) : message.seconds;
24793 else
24794 object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds;
24795 if (message.nanos != null && message.hasOwnProperty("nanos"))
24796 object.nanos = message.nanos;
24797 return object;
24798 };
24799
24800 /**
24801 * Converts this Duration to JSON.
24802 * @function toJSON
24803 * @memberof google.protobuf.Duration
24804 * @instance
24805 * @returns {Object.<string,*>} JSON object
24806 */
24807 Duration.prototype.toJSON = function toJSON() {
24808 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
24809 };
24810
24811 return Duration;
24812 })();
24813
24814 protobuf.Empty = (function() {
24815
24816 /**
24817 * Properties of an Empty.
24818 * @memberof google.protobuf
24819 * @interface IEmpty
24820 */
24821
24822 /**
24823 * Constructs a new Empty.
24824 * @memberof google.protobuf
24825 * @classdesc Represents an Empty.
24826 * @implements IEmpty
24827 * @constructor
24828 * @param {google.protobuf.IEmpty=} [properties] Properties to set
24829 */
24830 function Empty(properties) {
24831 if (properties)
24832 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
24833 if (properties[keys[i]] != null)
24834 this[keys[i]] = properties[keys[i]];
24835 }
24836
24837 /**
24838 * Creates a new Empty instance using the specified properties.
24839 * @function create
24840 * @memberof google.protobuf.Empty
24841 * @static
24842 * @param {google.protobuf.IEmpty=} [properties] Properties to set
24843 * @returns {google.protobuf.Empty} Empty instance
24844 */
24845 Empty.create = function create(properties) {
24846 return new Empty(properties);
24847 };
24848
24849 /**
24850 * Encodes the specified Empty message. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages.
24851 * @function encode
24852 * @memberof google.protobuf.Empty
24853 * @static
24854 * @param {google.protobuf.IEmpty} message Empty message or plain object to encode
24855 * @param {$protobuf.Writer} [writer] Writer to encode to
24856 * @returns {$protobuf.Writer} Writer
24857 */
24858 Empty.encode = function encode(message, writer) {
24859 if (!writer)
24860 writer = $Writer.create();
24861 return writer;
24862 };
24863
24864 /**
24865 * Encodes the specified Empty message, length delimited. Does not implicitly {@link google.protobuf.Empty.verify|verify} messages.
24866 * @function encodeDelimited
24867 * @memberof google.protobuf.Empty
24868 * @static
24869 * @param {google.protobuf.IEmpty} message Empty message or plain object to encode
24870 * @param {$protobuf.Writer} [writer] Writer to encode to
24871 * @returns {$protobuf.Writer} Writer
24872 */
24873 Empty.encodeDelimited = function encodeDelimited(message, writer) {
24874 return this.encode(message, writer).ldelim();
24875 };
24876
24877 /**
24878 * Decodes an Empty message from the specified reader or buffer.
24879 * @function decode
24880 * @memberof google.protobuf.Empty
24881 * @static
24882 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
24883 * @param {number} [length] Message length if known beforehand
24884 * @returns {google.protobuf.Empty} Empty
24885 * @throws {Error} If the payload is not a reader or valid buffer
24886 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24887 */
24888 Empty.decode = function decode(reader, length) {
24889 if (!(reader instanceof $Reader))
24890 reader = $Reader.create(reader);
24891 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Empty();
24892 while (reader.pos < end) {
24893 var tag = reader.uint32();
24894 switch (tag >>> 3) {
24895 default:
24896 reader.skipType(tag & 7);
24897 break;
24898 }
24899 }
24900 return message;
24901 };
24902
24903 /**
24904 * Decodes an Empty message from the specified reader or buffer, length delimited.
24905 * @function decodeDelimited
24906 * @memberof google.protobuf.Empty
24907 * @static
24908 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
24909 * @returns {google.protobuf.Empty} Empty
24910 * @throws {Error} If the payload is not a reader or valid buffer
24911 * @throws {$protobuf.util.ProtocolError} If required fields are missing
24912 */
24913 Empty.decodeDelimited = function decodeDelimited(reader) {
24914 if (!(reader instanceof $Reader))
24915 reader = new $Reader(reader);
24916 return this.decode(reader, reader.uint32());
24917 };
24918
24919 /**
24920 * Verifies an Empty message.
24921 * @function verify
24922 * @memberof google.protobuf.Empty
24923 * @static
24924 * @param {Object.<string,*>} message Plain object to verify
24925 * @returns {string|null} `null` if valid, otherwise the reason why it is not
24926 */
24927 Empty.verify = function verify(message) {
24928 if (typeof message !== "object" || message === null)
24929 return "object expected";
24930 return null;
24931 };
24932
24933 /**
24934 * Creates an Empty message from a plain object. Also converts values to their respective internal types.
24935 * @function fromObject
24936 * @memberof google.protobuf.Empty
24937 * @static
24938 * @param {Object.<string,*>} object Plain object
24939 * @returns {google.protobuf.Empty} Empty
24940 */
24941 Empty.fromObject = function fromObject(object) {
24942 if (object instanceof $root.google.protobuf.Empty)
24943 return object;
24944 return new $root.google.protobuf.Empty();
24945 };
24946
24947 /**
24948 * Creates a plain object from an Empty message. Also converts values to other types if specified.
24949 * @function toObject
24950 * @memberof google.protobuf.Empty
24951 * @static
24952 * @param {google.protobuf.Empty} message Empty
24953 * @param {$protobuf.IConversionOptions} [options] Conversion options
24954 * @returns {Object.<string,*>} Plain object
24955 */
24956 Empty.toObject = function toObject() {
24957 return {};
24958 };
24959
24960 /**
24961 * Converts this Empty to JSON.
24962 * @function toJSON
24963 * @memberof google.protobuf.Empty
24964 * @instance
24965 * @returns {Object.<string,*>} JSON object
24966 */
24967 Empty.prototype.toJSON = function toJSON() {
24968 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
24969 };
24970
24971 return Empty;
24972 })();
24973
24974 protobuf.Timestamp = (function() {
24975
24976 /**
24977 * Properties of a Timestamp.
24978 * @memberof google.protobuf
24979 * @interface ITimestamp
24980 * @property {number|Long|null} [seconds] Timestamp seconds
24981 * @property {number|null} [nanos] Timestamp nanos
24982 */
24983
24984 /**
24985 * Constructs a new Timestamp.
24986 * @memberof google.protobuf
24987 * @classdesc Represents a Timestamp.
24988 * @implements ITimestamp
24989 * @constructor
24990 * @param {google.protobuf.ITimestamp=} [properties] Properties to set
24991 */
24992 function Timestamp(properties) {
24993 if (properties)
24994 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
24995 if (properties[keys[i]] != null)
24996 this[keys[i]] = properties[keys[i]];
24997 }
24998
24999 /**
25000 * Timestamp seconds.
25001 * @member {number|Long} seconds
25002 * @memberof google.protobuf.Timestamp
25003 * @instance
25004 */
25005 Timestamp.prototype.seconds = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
25006
25007 /**
25008 * Timestamp nanos.
25009 * @member {number} nanos
25010 * @memberof google.protobuf.Timestamp
25011 * @instance
25012 */
25013 Timestamp.prototype.nanos = 0;
25014
25015 /**
25016 * Creates a new Timestamp instance using the specified properties.
25017 * @function create
25018 * @memberof google.protobuf.Timestamp
25019 * @static
25020 * @param {google.protobuf.ITimestamp=} [properties] Properties to set
25021 * @returns {google.protobuf.Timestamp} Timestamp instance
25022 */
25023 Timestamp.create = function create(properties) {
25024 return new Timestamp(properties);
25025 };
25026
25027 /**
25028 * Encodes the specified Timestamp message. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages.
25029 * @function encode
25030 * @memberof google.protobuf.Timestamp
25031 * @static
25032 * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode
25033 * @param {$protobuf.Writer} [writer] Writer to encode to
25034 * @returns {$protobuf.Writer} Writer
25035 */
25036 Timestamp.encode = function encode(message, writer) {
25037 if (!writer)
25038 writer = $Writer.create();
25039 if (message.seconds != null && Object.hasOwnProperty.call(message, "seconds"))
25040 writer.uint32(/* id 1, wireType 0 =*/8).int64(message.seconds);
25041 if (message.nanos != null && Object.hasOwnProperty.call(message, "nanos"))
25042 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.nanos);
25043 return writer;
25044 };
25045
25046 /**
25047 * Encodes the specified Timestamp message, length delimited. Does not implicitly {@link google.protobuf.Timestamp.verify|verify} messages.
25048 * @function encodeDelimited
25049 * @memberof google.protobuf.Timestamp
25050 * @static
25051 * @param {google.protobuf.ITimestamp} message Timestamp message or plain object to encode
25052 * @param {$protobuf.Writer} [writer] Writer to encode to
25053 * @returns {$protobuf.Writer} Writer
25054 */
25055 Timestamp.encodeDelimited = function encodeDelimited(message, writer) {
25056 return this.encode(message, writer).ldelim();
25057 };
25058
25059 /**
25060 * Decodes a Timestamp message from the specified reader or buffer.
25061 * @function decode
25062 * @memberof google.protobuf.Timestamp
25063 * @static
25064 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
25065 * @param {number} [length] Message length if known beforehand
25066 * @returns {google.protobuf.Timestamp} Timestamp
25067 * @throws {Error} If the payload is not a reader or valid buffer
25068 * @throws {$protobuf.util.ProtocolError} If required fields are missing
25069 */
25070 Timestamp.decode = function decode(reader, length) {
25071 if (!(reader instanceof $Reader))
25072 reader = $Reader.create(reader);
25073 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Timestamp();
25074 while (reader.pos < end) {
25075 var tag = reader.uint32();
25076 switch (tag >>> 3) {
25077 case 1:
25078 message.seconds = reader.int64();
25079 break;
25080 case 2:
25081 message.nanos = reader.int32();
25082 break;
25083 default:
25084 reader.skipType(tag & 7);
25085 break;
25086 }
25087 }
25088 return message;
25089 };
25090
25091 /**
25092 * Decodes a Timestamp message from the specified reader or buffer, length delimited.
25093 * @function decodeDelimited
25094 * @memberof google.protobuf.Timestamp
25095 * @static
25096 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
25097 * @returns {google.protobuf.Timestamp} Timestamp
25098 * @throws {Error} If the payload is not a reader or valid buffer
25099 * @throws {$protobuf.util.ProtocolError} If required fields are missing
25100 */
25101 Timestamp.decodeDelimited = function decodeDelimited(reader) {
25102 if (!(reader instanceof $Reader))
25103 reader = new $Reader(reader);
25104 return this.decode(reader, reader.uint32());
25105 };
25106
25107 /**
25108 * Verifies a Timestamp message.
25109 * @function verify
25110 * @memberof google.protobuf.Timestamp
25111 * @static
25112 * @param {Object.<string,*>} message Plain object to verify
25113 * @returns {string|null} `null` if valid, otherwise the reason why it is not
25114 */
25115 Timestamp.verify = function verify(message) {
25116 if (typeof message !== "object" || message === null)
25117 return "object expected";
25118 if (message.seconds != null && message.hasOwnProperty("seconds"))
25119 if (!$util.isInteger(message.seconds) && !(message.seconds && $util.isInteger(message.seconds.low) && $util.isInteger(message.seconds.high)))
25120 return "seconds: integer|Long expected";
25121 if (message.nanos != null && message.hasOwnProperty("nanos"))
25122 if (!$util.isInteger(message.nanos))
25123 return "nanos: integer expected";
25124 return null;
25125 };
25126
25127 /**
25128 * Creates a Timestamp message from a plain object. Also converts values to their respective internal types.
25129 * @function fromObject
25130 * @memberof google.protobuf.Timestamp
25131 * @static
25132 * @param {Object.<string,*>} object Plain object
25133 * @returns {google.protobuf.Timestamp} Timestamp
25134 */
25135 Timestamp.fromObject = function fromObject(object) {
25136 if (object instanceof $root.google.protobuf.Timestamp)
25137 return object;
25138 var message = new $root.google.protobuf.Timestamp();
25139 if (object.seconds != null)
25140 if ($util.Long)
25141 (message.seconds = $util.Long.fromValue(object.seconds)).unsigned = false;
25142 else if (typeof object.seconds === "string")
25143 message.seconds = parseInt(object.seconds, 10);
25144 else if (typeof object.seconds === "number")
25145 message.seconds = object.seconds;
25146 else if (typeof object.seconds === "object")
25147 message.seconds = new $util.LongBits(object.seconds.low >>> 0, object.seconds.high >>> 0).toNumber();
25148 if (object.nanos != null)
25149 message.nanos = object.nanos | 0;
25150 return message;
25151 };
25152
25153 /**
25154 * Creates a plain object from a Timestamp message. Also converts values to other types if specified.
25155 * @function toObject
25156 * @memberof google.protobuf.Timestamp
25157 * @static
25158 * @param {google.protobuf.Timestamp} message Timestamp
25159 * @param {$protobuf.IConversionOptions} [options] Conversion options
25160 * @returns {Object.<string,*>} Plain object
25161 */
25162 Timestamp.toObject = function toObject(message, options) {
25163 if (!options)
25164 options = {};
25165 var object = {};
25166 if (options.defaults) {
25167 if ($util.Long) {
25168 var long = new $util.Long(0, 0, false);
25169 object.seconds = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
25170 } else
25171 object.seconds = options.longs === String ? "0" : 0;
25172 object.nanos = 0;
25173 }
25174 if (message.seconds != null && message.hasOwnProperty("seconds"))
25175 if (typeof message.seconds === "number")
25176 object.seconds = options.longs === String ? String(message.seconds) : message.seconds;
25177 else
25178 object.seconds = options.longs === String ? $util.Long.prototype.toString.call(message.seconds) : options.longs === Number ? new $util.LongBits(message.seconds.low >>> 0, message.seconds.high >>> 0).toNumber() : message.seconds;
25179 if (message.nanos != null && message.hasOwnProperty("nanos"))
25180 object.nanos = message.nanos;
25181 return object;
25182 };
25183
25184 /**
25185 * Converts this Timestamp to JSON.
25186 * @function toJSON
25187 * @memberof google.protobuf.Timestamp
25188 * @instance
25189 * @returns {Object.<string,*>} JSON object
25190 */
25191 Timestamp.prototype.toJSON = function toJSON() {
25192 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
25193 };
25194
25195 return Timestamp;
25196 })();
25197
25198 protobuf.Struct = (function() {
25199
25200 /**
25201 * Properties of a Struct.
25202 * @memberof google.protobuf
25203 * @interface IStruct
25204 * @property {Object.<string,google.protobuf.IValue>|null} [fields] Struct fields
25205 */
25206
25207 /**
25208 * Constructs a new Struct.
25209 * @memberof google.protobuf
25210 * @classdesc Represents a Struct.
25211 * @implements IStruct
25212 * @constructor
25213 * @param {google.protobuf.IStruct=} [properties] Properties to set
25214 */
25215 function Struct(properties) {
25216 this.fields = {};
25217 if (properties)
25218 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
25219 if (properties[keys[i]] != null)
25220 this[keys[i]] = properties[keys[i]];
25221 }
25222
25223 /**
25224 * Struct fields.
25225 * @member {Object.<string,google.protobuf.IValue>} fields
25226 * @memberof google.protobuf.Struct
25227 * @instance
25228 */
25229 Struct.prototype.fields = $util.emptyObject;
25230
25231 /**
25232 * Creates a new Struct instance using the specified properties.
25233 * @function create
25234 * @memberof google.protobuf.Struct
25235 * @static
25236 * @param {google.protobuf.IStruct=} [properties] Properties to set
25237 * @returns {google.protobuf.Struct} Struct instance
25238 */
25239 Struct.create = function create(properties) {
25240 return new Struct(properties);
25241 };
25242
25243 /**
25244 * Encodes the specified Struct message. Does not implicitly {@link google.protobuf.Struct.verify|verify} messages.
25245 * @function encode
25246 * @memberof google.protobuf.Struct
25247 * @static
25248 * @param {google.protobuf.IStruct} message Struct message or plain object to encode
25249 * @param {$protobuf.Writer} [writer] Writer to encode to
25250 * @returns {$protobuf.Writer} Writer
25251 */
25252 Struct.encode = function encode(message, writer) {
25253 if (!writer)
25254 writer = $Writer.create();
25255 if (message.fields != null && Object.hasOwnProperty.call(message, "fields"))
25256 for (var keys = Object.keys(message.fields), i = 0; i < keys.length; ++i) {
25257 writer.uint32(/* id 1, wireType 2 =*/10).fork().uint32(/* id 1, wireType 2 =*/10).string(keys[i]);
25258 $root.google.protobuf.Value.encode(message.fields[keys[i]], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim().ldelim();
25259 }
25260 return writer;
25261 };
25262
25263 /**
25264 * Encodes the specified Struct message, length delimited. Does not implicitly {@link google.protobuf.Struct.verify|verify} messages.
25265 * @function encodeDelimited
25266 * @memberof google.protobuf.Struct
25267 * @static
25268 * @param {google.protobuf.IStruct} message Struct message or plain object to encode
25269 * @param {$protobuf.Writer} [writer] Writer to encode to
25270 * @returns {$protobuf.Writer} Writer
25271 */
25272 Struct.encodeDelimited = function encodeDelimited(message, writer) {
25273 return this.encode(message, writer).ldelim();
25274 };
25275
25276 /**
25277 * Decodes a Struct message from the specified reader or buffer.
25278 * @function decode
25279 * @memberof google.protobuf.Struct
25280 * @static
25281 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
25282 * @param {number} [length] Message length if known beforehand
25283 * @returns {google.protobuf.Struct} Struct
25284 * @throws {Error} If the payload is not a reader or valid buffer
25285 * @throws {$protobuf.util.ProtocolError} If required fields are missing
25286 */
25287 Struct.decode = function decode(reader, length) {
25288 if (!(reader instanceof $Reader))
25289 reader = $Reader.create(reader);
25290 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Struct(), key, value;
25291 while (reader.pos < end) {
25292 var tag = reader.uint32();
25293 switch (tag >>> 3) {
25294 case 1:
25295 if (message.fields === $util.emptyObject)
25296 message.fields = {};
25297 var end2 = reader.uint32() + reader.pos;
25298 key = "";
25299 value = null;
25300 while (reader.pos < end2) {
25301 var tag2 = reader.uint32();
25302 switch (tag2 >>> 3) {
25303 case 1:
25304 key = reader.string();
25305 break;
25306 case 2:
25307 value = $root.google.protobuf.Value.decode(reader, reader.uint32());
25308 break;
25309 default:
25310 reader.skipType(tag2 & 7);
25311 break;
25312 }
25313 }
25314 message.fields[key] = value;
25315 break;
25316 default:
25317 reader.skipType(tag & 7);
25318 break;
25319 }
25320 }
25321 return message;
25322 };
25323
25324 /**
25325 * Decodes a Struct message from the specified reader or buffer, length delimited.
25326 * @function decodeDelimited
25327 * @memberof google.protobuf.Struct
25328 * @static
25329 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
25330 * @returns {google.protobuf.Struct} Struct
25331 * @throws {Error} If the payload is not a reader or valid buffer
25332 * @throws {$protobuf.util.ProtocolError} If required fields are missing
25333 */
25334 Struct.decodeDelimited = function decodeDelimited(reader) {
25335 if (!(reader instanceof $Reader))
25336 reader = new $Reader(reader);
25337 return this.decode(reader, reader.uint32());
25338 };
25339
25340 /**
25341 * Verifies a Struct message.
25342 * @function verify
25343 * @memberof google.protobuf.Struct
25344 * @static
25345 * @param {Object.<string,*>} message Plain object to verify
25346 * @returns {string|null} `null` if valid, otherwise the reason why it is not
25347 */
25348 Struct.verify = function verify(message) {
25349 if (typeof message !== "object" || message === null)
25350 return "object expected";
25351 if (message.fields != null && message.hasOwnProperty("fields")) {
25352 if (!$util.isObject(message.fields))
25353 return "fields: object expected";
25354 var key = Object.keys(message.fields);
25355 for (var i = 0; i < key.length; ++i) {
25356 var error = $root.google.protobuf.Value.verify(message.fields[key[i]]);
25357 if (error)
25358 return "fields." + error;
25359 }
25360 }
25361 return null;
25362 };
25363
25364 /**
25365 * Creates a Struct message from a plain object. Also converts values to their respective internal types.
25366 * @function fromObject
25367 * @memberof google.protobuf.Struct
25368 * @static
25369 * @param {Object.<string,*>} object Plain object
25370 * @returns {google.protobuf.Struct} Struct
25371 */
25372 Struct.fromObject = function fromObject(object) {
25373 if (object instanceof $root.google.protobuf.Struct)
25374 return object;
25375 var message = new $root.google.protobuf.Struct();
25376 if (object.fields) {
25377 if (typeof object.fields !== "object")
25378 throw TypeError(".google.protobuf.Struct.fields: object expected");
25379 message.fields = {};
25380 for (var keys = Object.keys(object.fields), i = 0; i < keys.length; ++i) {
25381 if (typeof object.fields[keys[i]] !== "object")
25382 throw TypeError(".google.protobuf.Struct.fields: object expected");
25383 message.fields[keys[i]] = $root.google.protobuf.Value.fromObject(object.fields[keys[i]]);
25384 }
25385 }
25386 return message;
25387 };
25388
25389 /**
25390 * Creates a plain object from a Struct message. Also converts values to other types if specified.
25391 * @function toObject
25392 * @memberof google.protobuf.Struct
25393 * @static
25394 * @param {google.protobuf.Struct} message Struct
25395 * @param {$protobuf.IConversionOptions} [options] Conversion options
25396 * @returns {Object.<string,*>} Plain object
25397 */
25398 Struct.toObject = function toObject(message, options) {
25399 if (!options)
25400 options = {};
25401 var object = {};
25402 if (options.objects || options.defaults)
25403 object.fields = {};
25404 var keys2;
25405 if (message.fields && (keys2 = Object.keys(message.fields)).length) {
25406 object.fields = {};
25407 for (var j = 0; j < keys2.length; ++j)
25408 object.fields[keys2[j]] = $root.google.protobuf.Value.toObject(message.fields[keys2[j]], options);
25409 }
25410 return object;
25411 };
25412
25413 /**
25414 * Converts this Struct to JSON.
25415 * @function toJSON
25416 * @memberof google.protobuf.Struct
25417 * @instance
25418 * @returns {Object.<string,*>} JSON object
25419 */
25420 Struct.prototype.toJSON = function toJSON() {
25421 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
25422 };
25423
25424 return Struct;
25425 })();
25426
25427 protobuf.Value = (function() {
25428
25429 /**
25430 * Properties of a Value.
25431 * @memberof google.protobuf
25432 * @interface IValue
25433 * @property {google.protobuf.NullValue|null} [nullValue] Value nullValue
25434 * @property {number|null} [numberValue] Value numberValue
25435 * @property {string|null} [stringValue] Value stringValue
25436 * @property {boolean|null} [boolValue] Value boolValue
25437 * @property {google.protobuf.IStruct|null} [structValue] Value structValue
25438 * @property {google.protobuf.IListValue|null} [listValue] Value listValue
25439 */
25440
25441 /**
25442 * Constructs a new Value.
25443 * @memberof google.protobuf
25444 * @classdesc Represents a Value.
25445 * @implements IValue
25446 * @constructor
25447 * @param {google.protobuf.IValue=} [properties] Properties to set
25448 */
25449 function Value(properties) {
25450 if (properties)
25451 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
25452 if (properties[keys[i]] != null)
25453 this[keys[i]] = properties[keys[i]];
25454 }
25455
25456 /**
25457 * Value nullValue.
25458 * @member {google.protobuf.NullValue} nullValue
25459 * @memberof google.protobuf.Value
25460 * @instance
25461 */
25462 Value.prototype.nullValue = 0;
25463
25464 /**
25465 * Value numberValue.
25466 * @member {number} numberValue
25467 * @memberof google.protobuf.Value
25468 * @instance
25469 */
25470 Value.prototype.numberValue = 0;
25471
25472 /**
25473 * Value stringValue.
25474 * @member {string} stringValue
25475 * @memberof google.protobuf.Value
25476 * @instance
25477 */
25478 Value.prototype.stringValue = "";
25479
25480 /**
25481 * Value boolValue.
25482 * @member {boolean} boolValue
25483 * @memberof google.protobuf.Value
25484 * @instance
25485 */
25486 Value.prototype.boolValue = false;
25487
25488 /**
25489 * Value structValue.
25490 * @member {google.protobuf.IStruct|null|undefined} structValue
25491 * @memberof google.protobuf.Value
25492 * @instance
25493 */
25494 Value.prototype.structValue = null;
25495
25496 /**
25497 * Value listValue.
25498 * @member {google.protobuf.IListValue|null|undefined} listValue
25499 * @memberof google.protobuf.Value
25500 * @instance
25501 */
25502 Value.prototype.listValue = null;
25503
25504 // OneOf field names bound to virtual getters and setters
25505 var $oneOfFields;
25506
25507 /**
25508 * Value kind.
25509 * @member {"nullValue"|"numberValue"|"stringValue"|"boolValue"|"structValue"|"listValue"|undefined} kind
25510 * @memberof google.protobuf.Value
25511 * @instance
25512 */
25513 Object.defineProperty(Value.prototype, "kind", {
25514 get: $util.oneOfGetter($oneOfFields = ["nullValue", "numberValue", "stringValue", "boolValue", "structValue", "listValue"]),
25515 set: $util.oneOfSetter($oneOfFields)
25516 });
25517
25518 /**
25519 * Creates a new Value instance using the specified properties.
25520 * @function create
25521 * @memberof google.protobuf.Value
25522 * @static
25523 * @param {google.protobuf.IValue=} [properties] Properties to set
25524 * @returns {google.protobuf.Value} Value instance
25525 */
25526 Value.create = function create(properties) {
25527 return new Value(properties);
25528 };
25529
25530 /**
25531 * Encodes the specified Value message. Does not implicitly {@link google.protobuf.Value.verify|verify} messages.
25532 * @function encode
25533 * @memberof google.protobuf.Value
25534 * @static
25535 * @param {google.protobuf.IValue} message Value message or plain object to encode
25536 * @param {$protobuf.Writer} [writer] Writer to encode to
25537 * @returns {$protobuf.Writer} Writer
25538 */
25539 Value.encode = function encode(message, writer) {
25540 if (!writer)
25541 writer = $Writer.create();
25542 if (message.nullValue != null && Object.hasOwnProperty.call(message, "nullValue"))
25543 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.nullValue);
25544 if (message.numberValue != null && Object.hasOwnProperty.call(message, "numberValue"))
25545 writer.uint32(/* id 2, wireType 1 =*/17).double(message.numberValue);
25546 if (message.stringValue != null && Object.hasOwnProperty.call(message, "stringValue"))
25547 writer.uint32(/* id 3, wireType 2 =*/26).string(message.stringValue);
25548 if (message.boolValue != null && Object.hasOwnProperty.call(message, "boolValue"))
25549 writer.uint32(/* id 4, wireType 0 =*/32).bool(message.boolValue);
25550 if (message.structValue != null && Object.hasOwnProperty.call(message, "structValue"))
25551 $root.google.protobuf.Struct.encode(message.structValue, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
25552 if (message.listValue != null && Object.hasOwnProperty.call(message, "listValue"))
25553 $root.google.protobuf.ListValue.encode(message.listValue, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim();
25554 return writer;
25555 };
25556
25557 /**
25558 * Encodes the specified Value message, length delimited. Does not implicitly {@link google.protobuf.Value.verify|verify} messages.
25559 * @function encodeDelimited
25560 * @memberof google.protobuf.Value
25561 * @static
25562 * @param {google.protobuf.IValue} message Value message or plain object to encode
25563 * @param {$protobuf.Writer} [writer] Writer to encode to
25564 * @returns {$protobuf.Writer} Writer
25565 */
25566 Value.encodeDelimited = function encodeDelimited(message, writer) {
25567 return this.encode(message, writer).ldelim();
25568 };
25569
25570 /**
25571 * Decodes a Value message from the specified reader or buffer.
25572 * @function decode
25573 * @memberof google.protobuf.Value
25574 * @static
25575 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
25576 * @param {number} [length] Message length if known beforehand
25577 * @returns {google.protobuf.Value} Value
25578 * @throws {Error} If the payload is not a reader or valid buffer
25579 * @throws {$protobuf.util.ProtocolError} If required fields are missing
25580 */
25581 Value.decode = function decode(reader, length) {
25582 if (!(reader instanceof $Reader))
25583 reader = $Reader.create(reader);
25584 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Value();
25585 while (reader.pos < end) {
25586 var tag = reader.uint32();
25587 switch (tag >>> 3) {
25588 case 1:
25589 message.nullValue = reader.int32();
25590 break;
25591 case 2:
25592 message.numberValue = reader.double();
25593 break;
25594 case 3:
25595 message.stringValue = reader.string();
25596 break;
25597 case 4:
25598 message.boolValue = reader.bool();
25599 break;
25600 case 5:
25601 message.structValue = $root.google.protobuf.Struct.decode(reader, reader.uint32());
25602 break;
25603 case 6:
25604 message.listValue = $root.google.protobuf.ListValue.decode(reader, reader.uint32());
25605 break;
25606 default:
25607 reader.skipType(tag & 7);
25608 break;
25609 }
25610 }
25611 return message;
25612 };
25613
25614 /**
25615 * Decodes a Value message from the specified reader or buffer, length delimited.
25616 * @function decodeDelimited
25617 * @memberof google.protobuf.Value
25618 * @static
25619 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
25620 * @returns {google.protobuf.Value} Value
25621 * @throws {Error} If the payload is not a reader or valid buffer
25622 * @throws {$protobuf.util.ProtocolError} If required fields are missing
25623 */
25624 Value.decodeDelimited = function decodeDelimited(reader) {
25625 if (!(reader instanceof $Reader))
25626 reader = new $Reader(reader);
25627 return this.decode(reader, reader.uint32());
25628 };
25629
25630 /**
25631 * Verifies a Value message.
25632 * @function verify
25633 * @memberof google.protobuf.Value
25634 * @static
25635 * @param {Object.<string,*>} message Plain object to verify
25636 * @returns {string|null} `null` if valid, otherwise the reason why it is not
25637 */
25638 Value.verify = function verify(message) {
25639 if (typeof message !== "object" || message === null)
25640 return "object expected";
25641 var properties = {};
25642 if (message.nullValue != null && message.hasOwnProperty("nullValue")) {
25643 properties.kind = 1;
25644 switch (message.nullValue) {
25645 default:
25646 return "nullValue: enum value expected";
25647 case 0:
25648 break;
25649 }
25650 }
25651 if (message.numberValue != null && message.hasOwnProperty("numberValue")) {
25652 if (properties.kind === 1)
25653 return "kind: multiple values";
25654 properties.kind = 1;
25655 if (typeof message.numberValue !== "number")
25656 return "numberValue: number expected";
25657 }
25658 if (message.stringValue != null && message.hasOwnProperty("stringValue")) {
25659 if (properties.kind === 1)
25660 return "kind: multiple values";
25661 properties.kind = 1;
25662 if (!$util.isString(message.stringValue))
25663 return "stringValue: string expected";
25664 }
25665 if (message.boolValue != null && message.hasOwnProperty("boolValue")) {
25666 if (properties.kind === 1)
25667 return "kind: multiple values";
25668 properties.kind = 1;
25669 if (typeof message.boolValue !== "boolean")
25670 return "boolValue: boolean expected";
25671 }
25672 if (message.structValue != null && message.hasOwnProperty("structValue")) {
25673 if (properties.kind === 1)
25674 return "kind: multiple values";
25675 properties.kind = 1;
25676 {
25677 var error = $root.google.protobuf.Struct.verify(message.structValue);
25678 if (error)
25679 return "structValue." + error;
25680 }
25681 }
25682 if (message.listValue != null && message.hasOwnProperty("listValue")) {
25683 if (properties.kind === 1)
25684 return "kind: multiple values";
25685 properties.kind = 1;
25686 {
25687 var error = $root.google.protobuf.ListValue.verify(message.listValue);
25688 if (error)
25689 return "listValue." + error;
25690 }
25691 }
25692 return null;
25693 };
25694
25695 /**
25696 * Creates a Value message from a plain object. Also converts values to their respective internal types.
25697 * @function fromObject
25698 * @memberof google.protobuf.Value
25699 * @static
25700 * @param {Object.<string,*>} object Plain object
25701 * @returns {google.protobuf.Value} Value
25702 */
25703 Value.fromObject = function fromObject(object) {
25704 if (object instanceof $root.google.protobuf.Value)
25705 return object;
25706 var message = new $root.google.protobuf.Value();
25707 switch (object.nullValue) {
25708 case "NULL_VALUE":
25709 case 0:
25710 message.nullValue = 0;
25711 break;
25712 }
25713 if (object.numberValue != null)
25714 message.numberValue = Number(object.numberValue);
25715 if (object.stringValue != null)
25716 message.stringValue = String(object.stringValue);
25717 if (object.boolValue != null)
25718 message.boolValue = Boolean(object.boolValue);
25719 if (object.structValue != null) {
25720 if (typeof object.structValue !== "object")
25721 throw TypeError(".google.protobuf.Value.structValue: object expected");
25722 message.structValue = $root.google.protobuf.Struct.fromObject(object.structValue);
25723 }
25724 if (object.listValue != null) {
25725 if (typeof object.listValue !== "object")
25726 throw TypeError(".google.protobuf.Value.listValue: object expected");
25727 message.listValue = $root.google.protobuf.ListValue.fromObject(object.listValue);
25728 }
25729 return message;
25730 };
25731
25732 /**
25733 * Creates a plain object from a Value message. Also converts values to other types if specified.
25734 * @function toObject
25735 * @memberof google.protobuf.Value
25736 * @static
25737 * @param {google.protobuf.Value} message Value
25738 * @param {$protobuf.IConversionOptions} [options] Conversion options
25739 * @returns {Object.<string,*>} Plain object
25740 */
25741 Value.toObject = function toObject(message, options) {
25742 if (!options)
25743 options = {};
25744 var object = {};
25745 if (message.nullValue != null && message.hasOwnProperty("nullValue")) {
25746 object.nullValue = options.enums === String ? $root.google.protobuf.NullValue[message.nullValue] : message.nullValue;
25747 if (options.oneofs)
25748 object.kind = "nullValue";
25749 }
25750 if (message.numberValue != null && message.hasOwnProperty("numberValue")) {
25751 object.numberValue = options.json && !isFinite(message.numberValue) ? String(message.numberValue) : message.numberValue;
25752 if (options.oneofs)
25753 object.kind = "numberValue";
25754 }
25755 if (message.stringValue != null && message.hasOwnProperty("stringValue")) {
25756 object.stringValue = message.stringValue;
25757 if (options.oneofs)
25758 object.kind = "stringValue";
25759 }
25760 if (message.boolValue != null && message.hasOwnProperty("boolValue")) {
25761 object.boolValue = message.boolValue;
25762 if (options.oneofs)
25763 object.kind = "boolValue";
25764 }
25765 if (message.structValue != null && message.hasOwnProperty("structValue")) {
25766 object.structValue = $root.google.protobuf.Struct.toObject(message.structValue, options);
25767 if (options.oneofs)
25768 object.kind = "structValue";
25769 }
25770 if (message.listValue != null && message.hasOwnProperty("listValue")) {
25771 object.listValue = $root.google.protobuf.ListValue.toObject(message.listValue, options);
25772 if (options.oneofs)
25773 object.kind = "listValue";
25774 }
25775 return object;
25776 };
25777
25778 /**
25779 * Converts this Value to JSON.
25780 * @function toJSON
25781 * @memberof google.protobuf.Value
25782 * @instance
25783 * @returns {Object.<string,*>} JSON object
25784 */
25785 Value.prototype.toJSON = function toJSON() {
25786 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
25787 };
25788
25789 return Value;
25790 })();
25791
25792 /**
25793 * NullValue enum.
25794 * @name google.protobuf.NullValue
25795 * @enum {number}
25796 * @property {number} NULL_VALUE=0 NULL_VALUE value
25797 */
25798 protobuf.NullValue = (function() {
25799 var valuesById = {}, values = Object.create(valuesById);
25800 values[valuesById[0] = "NULL_VALUE"] = 0;
25801 return values;
25802 })();
25803
25804 protobuf.ListValue = (function() {
25805
25806 /**
25807 * Properties of a ListValue.
25808 * @memberof google.protobuf
25809 * @interface IListValue
25810 * @property {Array.<google.protobuf.IValue>|null} [values] ListValue values
25811 */
25812
25813 /**
25814 * Constructs a new ListValue.
25815 * @memberof google.protobuf
25816 * @classdesc Represents a ListValue.
25817 * @implements IListValue
25818 * @constructor
25819 * @param {google.protobuf.IListValue=} [properties] Properties to set
25820 */
25821 function ListValue(properties) {
25822 this.values = [];
25823 if (properties)
25824 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
25825 if (properties[keys[i]] != null)
25826 this[keys[i]] = properties[keys[i]];
25827 }
25828
25829 /**
25830 * ListValue values.
25831 * @member {Array.<google.protobuf.IValue>} values
25832 * @memberof google.protobuf.ListValue
25833 * @instance
25834 */
25835 ListValue.prototype.values = $util.emptyArray;
25836
25837 /**
25838 * Creates a new ListValue instance using the specified properties.
25839 * @function create
25840 * @memberof google.protobuf.ListValue
25841 * @static
25842 * @param {google.protobuf.IListValue=} [properties] Properties to set
25843 * @returns {google.protobuf.ListValue} ListValue instance
25844 */
25845 ListValue.create = function create(properties) {
25846 return new ListValue(properties);
25847 };
25848
25849 /**
25850 * Encodes the specified ListValue message. Does not implicitly {@link google.protobuf.ListValue.verify|verify} messages.
25851 * @function encode
25852 * @memberof google.protobuf.ListValue
25853 * @static
25854 * @param {google.protobuf.IListValue} message ListValue message or plain object to encode
25855 * @param {$protobuf.Writer} [writer] Writer to encode to
25856 * @returns {$protobuf.Writer} Writer
25857 */
25858 ListValue.encode = function encode(message, writer) {
25859 if (!writer)
25860 writer = $Writer.create();
25861 if (message.values != null && message.values.length)
25862 for (var i = 0; i < message.values.length; ++i)
25863 $root.google.protobuf.Value.encode(message.values[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
25864 return writer;
25865 };
25866
25867 /**
25868 * Encodes the specified ListValue message, length delimited. Does not implicitly {@link google.protobuf.ListValue.verify|verify} messages.
25869 * @function encodeDelimited
25870 * @memberof google.protobuf.ListValue
25871 * @static
25872 * @param {google.protobuf.IListValue} message ListValue message or plain object to encode
25873 * @param {$protobuf.Writer} [writer] Writer to encode to
25874 * @returns {$protobuf.Writer} Writer
25875 */
25876 ListValue.encodeDelimited = function encodeDelimited(message, writer) {
25877 return this.encode(message, writer).ldelim();
25878 };
25879
25880 /**
25881 * Decodes a ListValue message from the specified reader or buffer.
25882 * @function decode
25883 * @memberof google.protobuf.ListValue
25884 * @static
25885 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
25886 * @param {number} [length] Message length if known beforehand
25887 * @returns {google.protobuf.ListValue} ListValue
25888 * @throws {Error} If the payload is not a reader or valid buffer
25889 * @throws {$protobuf.util.ProtocolError} If required fields are missing
25890 */
25891 ListValue.decode = function decode(reader, length) {
25892 if (!(reader instanceof $Reader))
25893 reader = $Reader.create(reader);
25894 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.ListValue();
25895 while (reader.pos < end) {
25896 var tag = reader.uint32();
25897 switch (tag >>> 3) {
25898 case 1:
25899 if (!(message.values && message.values.length))
25900 message.values = [];
25901 message.values.push($root.google.protobuf.Value.decode(reader, reader.uint32()));
25902 break;
25903 default:
25904 reader.skipType(tag & 7);
25905 break;
25906 }
25907 }
25908 return message;
25909 };
25910
25911 /**
25912 * Decodes a ListValue message from the specified reader or buffer, length delimited.
25913 * @function decodeDelimited
25914 * @memberof google.protobuf.ListValue
25915 * @static
25916 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
25917 * @returns {google.protobuf.ListValue} ListValue
25918 * @throws {Error} If the payload is not a reader or valid buffer
25919 * @throws {$protobuf.util.ProtocolError} If required fields are missing
25920 */
25921 ListValue.decodeDelimited = function decodeDelimited(reader) {
25922 if (!(reader instanceof $Reader))
25923 reader = new $Reader(reader);
25924 return this.decode(reader, reader.uint32());
25925 };
25926
25927 /**
25928 * Verifies a ListValue message.
25929 * @function verify
25930 * @memberof google.protobuf.ListValue
25931 * @static
25932 * @param {Object.<string,*>} message Plain object to verify
25933 * @returns {string|null} `null` if valid, otherwise the reason why it is not
25934 */
25935 ListValue.verify = function verify(message) {
25936 if (typeof message !== "object" || message === null)
25937 return "object expected";
25938 if (message.values != null && message.hasOwnProperty("values")) {
25939 if (!Array.isArray(message.values))
25940 return "values: array expected";
25941 for (var i = 0; i < message.values.length; ++i) {
25942 var error = $root.google.protobuf.Value.verify(message.values[i]);
25943 if (error)
25944 return "values." + error;
25945 }
25946 }
25947 return null;
25948 };
25949
25950 /**
25951 * Creates a ListValue message from a plain object. Also converts values to their respective internal types.
25952 * @function fromObject
25953 * @memberof google.protobuf.ListValue
25954 * @static
25955 * @param {Object.<string,*>} object Plain object
25956 * @returns {google.protobuf.ListValue} ListValue
25957 */
25958 ListValue.fromObject = function fromObject(object) {
25959 if (object instanceof $root.google.protobuf.ListValue)
25960 return object;
25961 var message = new $root.google.protobuf.ListValue();
25962 if (object.values) {
25963 if (!Array.isArray(object.values))
25964 throw TypeError(".google.protobuf.ListValue.values: array expected");
25965 message.values = [];
25966 for (var i = 0; i < object.values.length; ++i) {
25967 if (typeof object.values[i] !== "object")
25968 throw TypeError(".google.protobuf.ListValue.values: object expected");
25969 message.values[i] = $root.google.protobuf.Value.fromObject(object.values[i]);
25970 }
25971 }
25972 return message;
25973 };
25974
25975 /**
25976 * Creates a plain object from a ListValue message. Also converts values to other types if specified.
25977 * @function toObject
25978 * @memberof google.protobuf.ListValue
25979 * @static
25980 * @param {google.protobuf.ListValue} message ListValue
25981 * @param {$protobuf.IConversionOptions} [options] Conversion options
25982 * @returns {Object.<string,*>} Plain object
25983 */
25984 ListValue.toObject = function toObject(message, options) {
25985 if (!options)
25986 options = {};
25987 var object = {};
25988 if (options.arrays || options.defaults)
25989 object.values = [];
25990 if (message.values && message.values.length) {
25991 object.values = [];
25992 for (var j = 0; j < message.values.length; ++j)
25993 object.values[j] = $root.google.protobuf.Value.toObject(message.values[j], options);
25994 }
25995 return object;
25996 };
25997
25998 /**
25999 * Converts this ListValue to JSON.
26000 * @function toJSON
26001 * @memberof google.protobuf.ListValue
26002 * @instance
26003 * @returns {Object.<string,*>} JSON object
26004 */
26005 ListValue.prototype.toJSON = function toJSON() {
26006 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
26007 };
26008
26009 return ListValue;
26010 })();
26011
26012 protobuf.DoubleValue = (function() {
26013
26014 /**
26015 * Properties of a DoubleValue.
26016 * @memberof google.protobuf
26017 * @interface IDoubleValue
26018 * @property {number|null} [value] DoubleValue value
26019 */
26020
26021 /**
26022 * Constructs a new DoubleValue.
26023 * @memberof google.protobuf
26024 * @classdesc Represents a DoubleValue.
26025 * @implements IDoubleValue
26026 * @constructor
26027 * @param {google.protobuf.IDoubleValue=} [properties] Properties to set
26028 */
26029 function DoubleValue(properties) {
26030 if (properties)
26031 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
26032 if (properties[keys[i]] != null)
26033 this[keys[i]] = properties[keys[i]];
26034 }
26035
26036 /**
26037 * DoubleValue value.
26038 * @member {number} value
26039 * @memberof google.protobuf.DoubleValue
26040 * @instance
26041 */
26042 DoubleValue.prototype.value = 0;
26043
26044 /**
26045 * Creates a new DoubleValue instance using the specified properties.
26046 * @function create
26047 * @memberof google.protobuf.DoubleValue
26048 * @static
26049 * @param {google.protobuf.IDoubleValue=} [properties] Properties to set
26050 * @returns {google.protobuf.DoubleValue} DoubleValue instance
26051 */
26052 DoubleValue.create = function create(properties) {
26053 return new DoubleValue(properties);
26054 };
26055
26056 /**
26057 * Encodes the specified DoubleValue message. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.
26058 * @function encode
26059 * @memberof google.protobuf.DoubleValue
26060 * @static
26061 * @param {google.protobuf.IDoubleValue} message DoubleValue message or plain object to encode
26062 * @param {$protobuf.Writer} [writer] Writer to encode to
26063 * @returns {$protobuf.Writer} Writer
26064 */
26065 DoubleValue.encode = function encode(message, writer) {
26066 if (!writer)
26067 writer = $Writer.create();
26068 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
26069 writer.uint32(/* id 1, wireType 1 =*/9).double(message.value);
26070 return writer;
26071 };
26072
26073 /**
26074 * Encodes the specified DoubleValue message, length delimited. Does not implicitly {@link google.protobuf.DoubleValue.verify|verify} messages.
26075 * @function encodeDelimited
26076 * @memberof google.protobuf.DoubleValue
26077 * @static
26078 * @param {google.protobuf.IDoubleValue} message DoubleValue message or plain object to encode
26079 * @param {$protobuf.Writer} [writer] Writer to encode to
26080 * @returns {$protobuf.Writer} Writer
26081 */
26082 DoubleValue.encodeDelimited = function encodeDelimited(message, writer) {
26083 return this.encode(message, writer).ldelim();
26084 };
26085
26086 /**
26087 * Decodes a DoubleValue message from the specified reader or buffer.
26088 * @function decode
26089 * @memberof google.protobuf.DoubleValue
26090 * @static
26091 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26092 * @param {number} [length] Message length if known beforehand
26093 * @returns {google.protobuf.DoubleValue} DoubleValue
26094 * @throws {Error} If the payload is not a reader or valid buffer
26095 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26096 */
26097 DoubleValue.decode = function decode(reader, length) {
26098 if (!(reader instanceof $Reader))
26099 reader = $Reader.create(reader);
26100 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.DoubleValue();
26101 while (reader.pos < end) {
26102 var tag = reader.uint32();
26103 switch (tag >>> 3) {
26104 case 1:
26105 message.value = reader.double();
26106 break;
26107 default:
26108 reader.skipType(tag & 7);
26109 break;
26110 }
26111 }
26112 return message;
26113 };
26114
26115 /**
26116 * Decodes a DoubleValue message from the specified reader or buffer, length delimited.
26117 * @function decodeDelimited
26118 * @memberof google.protobuf.DoubleValue
26119 * @static
26120 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26121 * @returns {google.protobuf.DoubleValue} DoubleValue
26122 * @throws {Error} If the payload is not a reader or valid buffer
26123 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26124 */
26125 DoubleValue.decodeDelimited = function decodeDelimited(reader) {
26126 if (!(reader instanceof $Reader))
26127 reader = new $Reader(reader);
26128 return this.decode(reader, reader.uint32());
26129 };
26130
26131 /**
26132 * Verifies a DoubleValue message.
26133 * @function verify
26134 * @memberof google.protobuf.DoubleValue
26135 * @static
26136 * @param {Object.<string,*>} message Plain object to verify
26137 * @returns {string|null} `null` if valid, otherwise the reason why it is not
26138 */
26139 DoubleValue.verify = function verify(message) {
26140 if (typeof message !== "object" || message === null)
26141 return "object expected";
26142 if (message.value != null && message.hasOwnProperty("value"))
26143 if (typeof message.value !== "number")
26144 return "value: number expected";
26145 return null;
26146 };
26147
26148 /**
26149 * Creates a DoubleValue message from a plain object. Also converts values to their respective internal types.
26150 * @function fromObject
26151 * @memberof google.protobuf.DoubleValue
26152 * @static
26153 * @param {Object.<string,*>} object Plain object
26154 * @returns {google.protobuf.DoubleValue} DoubleValue
26155 */
26156 DoubleValue.fromObject = function fromObject(object) {
26157 if (object instanceof $root.google.protobuf.DoubleValue)
26158 return object;
26159 var message = new $root.google.protobuf.DoubleValue();
26160 if (object.value != null)
26161 message.value = Number(object.value);
26162 return message;
26163 };
26164
26165 /**
26166 * Creates a plain object from a DoubleValue message. Also converts values to other types if specified.
26167 * @function toObject
26168 * @memberof google.protobuf.DoubleValue
26169 * @static
26170 * @param {google.protobuf.DoubleValue} message DoubleValue
26171 * @param {$protobuf.IConversionOptions} [options] Conversion options
26172 * @returns {Object.<string,*>} Plain object
26173 */
26174 DoubleValue.toObject = function toObject(message, options) {
26175 if (!options)
26176 options = {};
26177 var object = {};
26178 if (options.defaults)
26179 object.value = 0;
26180 if (message.value != null && message.hasOwnProperty("value"))
26181 object.value = options.json && !isFinite(message.value) ? String(message.value) : message.value;
26182 return object;
26183 };
26184
26185 /**
26186 * Converts this DoubleValue to JSON.
26187 * @function toJSON
26188 * @memberof google.protobuf.DoubleValue
26189 * @instance
26190 * @returns {Object.<string,*>} JSON object
26191 */
26192 DoubleValue.prototype.toJSON = function toJSON() {
26193 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
26194 };
26195
26196 return DoubleValue;
26197 })();
26198
26199 protobuf.FloatValue = (function() {
26200
26201 /**
26202 * Properties of a FloatValue.
26203 * @memberof google.protobuf
26204 * @interface IFloatValue
26205 * @property {number|null} [value] FloatValue value
26206 */
26207
26208 /**
26209 * Constructs a new FloatValue.
26210 * @memberof google.protobuf
26211 * @classdesc Represents a FloatValue.
26212 * @implements IFloatValue
26213 * @constructor
26214 * @param {google.protobuf.IFloatValue=} [properties] Properties to set
26215 */
26216 function FloatValue(properties) {
26217 if (properties)
26218 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
26219 if (properties[keys[i]] != null)
26220 this[keys[i]] = properties[keys[i]];
26221 }
26222
26223 /**
26224 * FloatValue value.
26225 * @member {number} value
26226 * @memberof google.protobuf.FloatValue
26227 * @instance
26228 */
26229 FloatValue.prototype.value = 0;
26230
26231 /**
26232 * Creates a new FloatValue instance using the specified properties.
26233 * @function create
26234 * @memberof google.protobuf.FloatValue
26235 * @static
26236 * @param {google.protobuf.IFloatValue=} [properties] Properties to set
26237 * @returns {google.protobuf.FloatValue} FloatValue instance
26238 */
26239 FloatValue.create = function create(properties) {
26240 return new FloatValue(properties);
26241 };
26242
26243 /**
26244 * Encodes the specified FloatValue message. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.
26245 * @function encode
26246 * @memberof google.protobuf.FloatValue
26247 * @static
26248 * @param {google.protobuf.IFloatValue} message FloatValue message or plain object to encode
26249 * @param {$protobuf.Writer} [writer] Writer to encode to
26250 * @returns {$protobuf.Writer} Writer
26251 */
26252 FloatValue.encode = function encode(message, writer) {
26253 if (!writer)
26254 writer = $Writer.create();
26255 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
26256 writer.uint32(/* id 1, wireType 5 =*/13).float(message.value);
26257 return writer;
26258 };
26259
26260 /**
26261 * Encodes the specified FloatValue message, length delimited. Does not implicitly {@link google.protobuf.FloatValue.verify|verify} messages.
26262 * @function encodeDelimited
26263 * @memberof google.protobuf.FloatValue
26264 * @static
26265 * @param {google.protobuf.IFloatValue} message FloatValue message or plain object to encode
26266 * @param {$protobuf.Writer} [writer] Writer to encode to
26267 * @returns {$protobuf.Writer} Writer
26268 */
26269 FloatValue.encodeDelimited = function encodeDelimited(message, writer) {
26270 return this.encode(message, writer).ldelim();
26271 };
26272
26273 /**
26274 * Decodes a FloatValue message from the specified reader or buffer.
26275 * @function decode
26276 * @memberof google.protobuf.FloatValue
26277 * @static
26278 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26279 * @param {number} [length] Message length if known beforehand
26280 * @returns {google.protobuf.FloatValue} FloatValue
26281 * @throws {Error} If the payload is not a reader or valid buffer
26282 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26283 */
26284 FloatValue.decode = function decode(reader, length) {
26285 if (!(reader instanceof $Reader))
26286 reader = $Reader.create(reader);
26287 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.FloatValue();
26288 while (reader.pos < end) {
26289 var tag = reader.uint32();
26290 switch (tag >>> 3) {
26291 case 1:
26292 message.value = reader.float();
26293 break;
26294 default:
26295 reader.skipType(tag & 7);
26296 break;
26297 }
26298 }
26299 return message;
26300 };
26301
26302 /**
26303 * Decodes a FloatValue message from the specified reader or buffer, length delimited.
26304 * @function decodeDelimited
26305 * @memberof google.protobuf.FloatValue
26306 * @static
26307 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26308 * @returns {google.protobuf.FloatValue} FloatValue
26309 * @throws {Error} If the payload is not a reader or valid buffer
26310 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26311 */
26312 FloatValue.decodeDelimited = function decodeDelimited(reader) {
26313 if (!(reader instanceof $Reader))
26314 reader = new $Reader(reader);
26315 return this.decode(reader, reader.uint32());
26316 };
26317
26318 /**
26319 * Verifies a FloatValue message.
26320 * @function verify
26321 * @memberof google.protobuf.FloatValue
26322 * @static
26323 * @param {Object.<string,*>} message Plain object to verify
26324 * @returns {string|null} `null` if valid, otherwise the reason why it is not
26325 */
26326 FloatValue.verify = function verify(message) {
26327 if (typeof message !== "object" || message === null)
26328 return "object expected";
26329 if (message.value != null && message.hasOwnProperty("value"))
26330 if (typeof message.value !== "number")
26331 return "value: number expected";
26332 return null;
26333 };
26334
26335 /**
26336 * Creates a FloatValue message from a plain object. Also converts values to their respective internal types.
26337 * @function fromObject
26338 * @memberof google.protobuf.FloatValue
26339 * @static
26340 * @param {Object.<string,*>} object Plain object
26341 * @returns {google.protobuf.FloatValue} FloatValue
26342 */
26343 FloatValue.fromObject = function fromObject(object) {
26344 if (object instanceof $root.google.protobuf.FloatValue)
26345 return object;
26346 var message = new $root.google.protobuf.FloatValue();
26347 if (object.value != null)
26348 message.value = Number(object.value);
26349 return message;
26350 };
26351
26352 /**
26353 * Creates a plain object from a FloatValue message. Also converts values to other types if specified.
26354 * @function toObject
26355 * @memberof google.protobuf.FloatValue
26356 * @static
26357 * @param {google.protobuf.FloatValue} message FloatValue
26358 * @param {$protobuf.IConversionOptions} [options] Conversion options
26359 * @returns {Object.<string,*>} Plain object
26360 */
26361 FloatValue.toObject = function toObject(message, options) {
26362 if (!options)
26363 options = {};
26364 var object = {};
26365 if (options.defaults)
26366 object.value = 0;
26367 if (message.value != null && message.hasOwnProperty("value"))
26368 object.value = options.json && !isFinite(message.value) ? String(message.value) : message.value;
26369 return object;
26370 };
26371
26372 /**
26373 * Converts this FloatValue to JSON.
26374 * @function toJSON
26375 * @memberof google.protobuf.FloatValue
26376 * @instance
26377 * @returns {Object.<string,*>} JSON object
26378 */
26379 FloatValue.prototype.toJSON = function toJSON() {
26380 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
26381 };
26382
26383 return FloatValue;
26384 })();
26385
26386 protobuf.Int64Value = (function() {
26387
26388 /**
26389 * Properties of an Int64Value.
26390 * @memberof google.protobuf
26391 * @interface IInt64Value
26392 * @property {number|Long|null} [value] Int64Value value
26393 */
26394
26395 /**
26396 * Constructs a new Int64Value.
26397 * @memberof google.protobuf
26398 * @classdesc Represents an Int64Value.
26399 * @implements IInt64Value
26400 * @constructor
26401 * @param {google.protobuf.IInt64Value=} [properties] Properties to set
26402 */
26403 function Int64Value(properties) {
26404 if (properties)
26405 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
26406 if (properties[keys[i]] != null)
26407 this[keys[i]] = properties[keys[i]];
26408 }
26409
26410 /**
26411 * Int64Value value.
26412 * @member {number|Long} value
26413 * @memberof google.protobuf.Int64Value
26414 * @instance
26415 */
26416 Int64Value.prototype.value = $util.Long ? $util.Long.fromBits(0,0,false) : 0;
26417
26418 /**
26419 * Creates a new Int64Value instance using the specified properties.
26420 * @function create
26421 * @memberof google.protobuf.Int64Value
26422 * @static
26423 * @param {google.protobuf.IInt64Value=} [properties] Properties to set
26424 * @returns {google.protobuf.Int64Value} Int64Value instance
26425 */
26426 Int64Value.create = function create(properties) {
26427 return new Int64Value(properties);
26428 };
26429
26430 /**
26431 * Encodes the specified Int64Value message. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.
26432 * @function encode
26433 * @memberof google.protobuf.Int64Value
26434 * @static
26435 * @param {google.protobuf.IInt64Value} message Int64Value message or plain object to encode
26436 * @param {$protobuf.Writer} [writer] Writer to encode to
26437 * @returns {$protobuf.Writer} Writer
26438 */
26439 Int64Value.encode = function encode(message, writer) {
26440 if (!writer)
26441 writer = $Writer.create();
26442 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
26443 writer.uint32(/* id 1, wireType 0 =*/8).int64(message.value);
26444 return writer;
26445 };
26446
26447 /**
26448 * Encodes the specified Int64Value message, length delimited. Does not implicitly {@link google.protobuf.Int64Value.verify|verify} messages.
26449 * @function encodeDelimited
26450 * @memberof google.protobuf.Int64Value
26451 * @static
26452 * @param {google.protobuf.IInt64Value} message Int64Value message or plain object to encode
26453 * @param {$protobuf.Writer} [writer] Writer to encode to
26454 * @returns {$protobuf.Writer} Writer
26455 */
26456 Int64Value.encodeDelimited = function encodeDelimited(message, writer) {
26457 return this.encode(message, writer).ldelim();
26458 };
26459
26460 /**
26461 * Decodes an Int64Value message from the specified reader or buffer.
26462 * @function decode
26463 * @memberof google.protobuf.Int64Value
26464 * @static
26465 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26466 * @param {number} [length] Message length if known beforehand
26467 * @returns {google.protobuf.Int64Value} Int64Value
26468 * @throws {Error} If the payload is not a reader or valid buffer
26469 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26470 */
26471 Int64Value.decode = function decode(reader, length) {
26472 if (!(reader instanceof $Reader))
26473 reader = $Reader.create(reader);
26474 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Int64Value();
26475 while (reader.pos < end) {
26476 var tag = reader.uint32();
26477 switch (tag >>> 3) {
26478 case 1:
26479 message.value = reader.int64();
26480 break;
26481 default:
26482 reader.skipType(tag & 7);
26483 break;
26484 }
26485 }
26486 return message;
26487 };
26488
26489 /**
26490 * Decodes an Int64Value message from the specified reader or buffer, length delimited.
26491 * @function decodeDelimited
26492 * @memberof google.protobuf.Int64Value
26493 * @static
26494 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26495 * @returns {google.protobuf.Int64Value} Int64Value
26496 * @throws {Error} If the payload is not a reader or valid buffer
26497 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26498 */
26499 Int64Value.decodeDelimited = function decodeDelimited(reader) {
26500 if (!(reader instanceof $Reader))
26501 reader = new $Reader(reader);
26502 return this.decode(reader, reader.uint32());
26503 };
26504
26505 /**
26506 * Verifies an Int64Value message.
26507 * @function verify
26508 * @memberof google.protobuf.Int64Value
26509 * @static
26510 * @param {Object.<string,*>} message Plain object to verify
26511 * @returns {string|null} `null` if valid, otherwise the reason why it is not
26512 */
26513 Int64Value.verify = function verify(message) {
26514 if (typeof message !== "object" || message === null)
26515 return "object expected";
26516 if (message.value != null && message.hasOwnProperty("value"))
26517 if (!$util.isInteger(message.value) && !(message.value && $util.isInteger(message.value.low) && $util.isInteger(message.value.high)))
26518 return "value: integer|Long expected";
26519 return null;
26520 };
26521
26522 /**
26523 * Creates an Int64Value message from a plain object. Also converts values to their respective internal types.
26524 * @function fromObject
26525 * @memberof google.protobuf.Int64Value
26526 * @static
26527 * @param {Object.<string,*>} object Plain object
26528 * @returns {google.protobuf.Int64Value} Int64Value
26529 */
26530 Int64Value.fromObject = function fromObject(object) {
26531 if (object instanceof $root.google.protobuf.Int64Value)
26532 return object;
26533 var message = new $root.google.protobuf.Int64Value();
26534 if (object.value != null)
26535 if ($util.Long)
26536 (message.value = $util.Long.fromValue(object.value)).unsigned = false;
26537 else if (typeof object.value === "string")
26538 message.value = parseInt(object.value, 10);
26539 else if (typeof object.value === "number")
26540 message.value = object.value;
26541 else if (typeof object.value === "object")
26542 message.value = new $util.LongBits(object.value.low >>> 0, object.value.high >>> 0).toNumber();
26543 return message;
26544 };
26545
26546 /**
26547 * Creates a plain object from an Int64Value message. Also converts values to other types if specified.
26548 * @function toObject
26549 * @memberof google.protobuf.Int64Value
26550 * @static
26551 * @param {google.protobuf.Int64Value} message Int64Value
26552 * @param {$protobuf.IConversionOptions} [options] Conversion options
26553 * @returns {Object.<string,*>} Plain object
26554 */
26555 Int64Value.toObject = function toObject(message, options) {
26556 if (!options)
26557 options = {};
26558 var object = {};
26559 if (options.defaults)
26560 if ($util.Long) {
26561 var long = new $util.Long(0, 0, false);
26562 object.value = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
26563 } else
26564 object.value = options.longs === String ? "0" : 0;
26565 if (message.value != null && message.hasOwnProperty("value"))
26566 if (typeof message.value === "number")
26567 object.value = options.longs === String ? String(message.value) : message.value;
26568 else
26569 object.value = options.longs === String ? $util.Long.prototype.toString.call(message.value) : options.longs === Number ? new $util.LongBits(message.value.low >>> 0, message.value.high >>> 0).toNumber() : message.value;
26570 return object;
26571 };
26572
26573 /**
26574 * Converts this Int64Value to JSON.
26575 * @function toJSON
26576 * @memberof google.protobuf.Int64Value
26577 * @instance
26578 * @returns {Object.<string,*>} JSON object
26579 */
26580 Int64Value.prototype.toJSON = function toJSON() {
26581 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
26582 };
26583
26584 return Int64Value;
26585 })();
26586
26587 protobuf.UInt64Value = (function() {
26588
26589 /**
26590 * Properties of a UInt64Value.
26591 * @memberof google.protobuf
26592 * @interface IUInt64Value
26593 * @property {number|Long|null} [value] UInt64Value value
26594 */
26595
26596 /**
26597 * Constructs a new UInt64Value.
26598 * @memberof google.protobuf
26599 * @classdesc Represents a UInt64Value.
26600 * @implements IUInt64Value
26601 * @constructor
26602 * @param {google.protobuf.IUInt64Value=} [properties] Properties to set
26603 */
26604 function UInt64Value(properties) {
26605 if (properties)
26606 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
26607 if (properties[keys[i]] != null)
26608 this[keys[i]] = properties[keys[i]];
26609 }
26610
26611 /**
26612 * UInt64Value value.
26613 * @member {number|Long} value
26614 * @memberof google.protobuf.UInt64Value
26615 * @instance
26616 */
26617 UInt64Value.prototype.value = $util.Long ? $util.Long.fromBits(0,0,true) : 0;
26618
26619 /**
26620 * Creates a new UInt64Value instance using the specified properties.
26621 * @function create
26622 * @memberof google.protobuf.UInt64Value
26623 * @static
26624 * @param {google.protobuf.IUInt64Value=} [properties] Properties to set
26625 * @returns {google.protobuf.UInt64Value} UInt64Value instance
26626 */
26627 UInt64Value.create = function create(properties) {
26628 return new UInt64Value(properties);
26629 };
26630
26631 /**
26632 * Encodes the specified UInt64Value message. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.
26633 * @function encode
26634 * @memberof google.protobuf.UInt64Value
26635 * @static
26636 * @param {google.protobuf.IUInt64Value} message UInt64Value message or plain object to encode
26637 * @param {$protobuf.Writer} [writer] Writer to encode to
26638 * @returns {$protobuf.Writer} Writer
26639 */
26640 UInt64Value.encode = function encode(message, writer) {
26641 if (!writer)
26642 writer = $Writer.create();
26643 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
26644 writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.value);
26645 return writer;
26646 };
26647
26648 /**
26649 * Encodes the specified UInt64Value message, length delimited. Does not implicitly {@link google.protobuf.UInt64Value.verify|verify} messages.
26650 * @function encodeDelimited
26651 * @memberof google.protobuf.UInt64Value
26652 * @static
26653 * @param {google.protobuf.IUInt64Value} message UInt64Value message or plain object to encode
26654 * @param {$protobuf.Writer} [writer] Writer to encode to
26655 * @returns {$protobuf.Writer} Writer
26656 */
26657 UInt64Value.encodeDelimited = function encodeDelimited(message, writer) {
26658 return this.encode(message, writer).ldelim();
26659 };
26660
26661 /**
26662 * Decodes a UInt64Value message from the specified reader or buffer.
26663 * @function decode
26664 * @memberof google.protobuf.UInt64Value
26665 * @static
26666 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26667 * @param {number} [length] Message length if known beforehand
26668 * @returns {google.protobuf.UInt64Value} UInt64Value
26669 * @throws {Error} If the payload is not a reader or valid buffer
26670 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26671 */
26672 UInt64Value.decode = function decode(reader, length) {
26673 if (!(reader instanceof $Reader))
26674 reader = $Reader.create(reader);
26675 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UInt64Value();
26676 while (reader.pos < end) {
26677 var tag = reader.uint32();
26678 switch (tag >>> 3) {
26679 case 1:
26680 message.value = reader.uint64();
26681 break;
26682 default:
26683 reader.skipType(tag & 7);
26684 break;
26685 }
26686 }
26687 return message;
26688 };
26689
26690 /**
26691 * Decodes a UInt64Value message from the specified reader or buffer, length delimited.
26692 * @function decodeDelimited
26693 * @memberof google.protobuf.UInt64Value
26694 * @static
26695 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26696 * @returns {google.protobuf.UInt64Value} UInt64Value
26697 * @throws {Error} If the payload is not a reader or valid buffer
26698 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26699 */
26700 UInt64Value.decodeDelimited = function decodeDelimited(reader) {
26701 if (!(reader instanceof $Reader))
26702 reader = new $Reader(reader);
26703 return this.decode(reader, reader.uint32());
26704 };
26705
26706 /**
26707 * Verifies a UInt64Value message.
26708 * @function verify
26709 * @memberof google.protobuf.UInt64Value
26710 * @static
26711 * @param {Object.<string,*>} message Plain object to verify
26712 * @returns {string|null} `null` if valid, otherwise the reason why it is not
26713 */
26714 UInt64Value.verify = function verify(message) {
26715 if (typeof message !== "object" || message === null)
26716 return "object expected";
26717 if (message.value != null && message.hasOwnProperty("value"))
26718 if (!$util.isInteger(message.value) && !(message.value && $util.isInteger(message.value.low) && $util.isInteger(message.value.high)))
26719 return "value: integer|Long expected";
26720 return null;
26721 };
26722
26723 /**
26724 * Creates a UInt64Value message from a plain object. Also converts values to their respective internal types.
26725 * @function fromObject
26726 * @memberof google.protobuf.UInt64Value
26727 * @static
26728 * @param {Object.<string,*>} object Plain object
26729 * @returns {google.protobuf.UInt64Value} UInt64Value
26730 */
26731 UInt64Value.fromObject = function fromObject(object) {
26732 if (object instanceof $root.google.protobuf.UInt64Value)
26733 return object;
26734 var message = new $root.google.protobuf.UInt64Value();
26735 if (object.value != null)
26736 if ($util.Long)
26737 (message.value = $util.Long.fromValue(object.value)).unsigned = true;
26738 else if (typeof object.value === "string")
26739 message.value = parseInt(object.value, 10);
26740 else if (typeof object.value === "number")
26741 message.value = object.value;
26742 else if (typeof object.value === "object")
26743 message.value = new $util.LongBits(object.value.low >>> 0, object.value.high >>> 0).toNumber(true);
26744 return message;
26745 };
26746
26747 /**
26748 * Creates a plain object from a UInt64Value message. Also converts values to other types if specified.
26749 * @function toObject
26750 * @memberof google.protobuf.UInt64Value
26751 * @static
26752 * @param {google.protobuf.UInt64Value} message UInt64Value
26753 * @param {$protobuf.IConversionOptions} [options] Conversion options
26754 * @returns {Object.<string,*>} Plain object
26755 */
26756 UInt64Value.toObject = function toObject(message, options) {
26757 if (!options)
26758 options = {};
26759 var object = {};
26760 if (options.defaults)
26761 if ($util.Long) {
26762 var long = new $util.Long(0, 0, true);
26763 object.value = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long;
26764 } else
26765 object.value = options.longs === String ? "0" : 0;
26766 if (message.value != null && message.hasOwnProperty("value"))
26767 if (typeof message.value === "number")
26768 object.value = options.longs === String ? String(message.value) : message.value;
26769 else
26770 object.value = options.longs === String ? $util.Long.prototype.toString.call(message.value) : options.longs === Number ? new $util.LongBits(message.value.low >>> 0, message.value.high >>> 0).toNumber(true) : message.value;
26771 return object;
26772 };
26773
26774 /**
26775 * Converts this UInt64Value to JSON.
26776 * @function toJSON
26777 * @memberof google.protobuf.UInt64Value
26778 * @instance
26779 * @returns {Object.<string,*>} JSON object
26780 */
26781 UInt64Value.prototype.toJSON = function toJSON() {
26782 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
26783 };
26784
26785 return UInt64Value;
26786 })();
26787
26788 protobuf.Int32Value = (function() {
26789
26790 /**
26791 * Properties of an Int32Value.
26792 * @memberof google.protobuf
26793 * @interface IInt32Value
26794 * @property {number|null} [value] Int32Value value
26795 */
26796
26797 /**
26798 * Constructs a new Int32Value.
26799 * @memberof google.protobuf
26800 * @classdesc Represents an Int32Value.
26801 * @implements IInt32Value
26802 * @constructor
26803 * @param {google.protobuf.IInt32Value=} [properties] Properties to set
26804 */
26805 function Int32Value(properties) {
26806 if (properties)
26807 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
26808 if (properties[keys[i]] != null)
26809 this[keys[i]] = properties[keys[i]];
26810 }
26811
26812 /**
26813 * Int32Value value.
26814 * @member {number} value
26815 * @memberof google.protobuf.Int32Value
26816 * @instance
26817 */
26818 Int32Value.prototype.value = 0;
26819
26820 /**
26821 * Creates a new Int32Value instance using the specified properties.
26822 * @function create
26823 * @memberof google.protobuf.Int32Value
26824 * @static
26825 * @param {google.protobuf.IInt32Value=} [properties] Properties to set
26826 * @returns {google.protobuf.Int32Value} Int32Value instance
26827 */
26828 Int32Value.create = function create(properties) {
26829 return new Int32Value(properties);
26830 };
26831
26832 /**
26833 * Encodes the specified Int32Value message. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.
26834 * @function encode
26835 * @memberof google.protobuf.Int32Value
26836 * @static
26837 * @param {google.protobuf.IInt32Value} message Int32Value message or plain object to encode
26838 * @param {$protobuf.Writer} [writer] Writer to encode to
26839 * @returns {$protobuf.Writer} Writer
26840 */
26841 Int32Value.encode = function encode(message, writer) {
26842 if (!writer)
26843 writer = $Writer.create();
26844 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
26845 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.value);
26846 return writer;
26847 };
26848
26849 /**
26850 * Encodes the specified Int32Value message, length delimited. Does not implicitly {@link google.protobuf.Int32Value.verify|verify} messages.
26851 * @function encodeDelimited
26852 * @memberof google.protobuf.Int32Value
26853 * @static
26854 * @param {google.protobuf.IInt32Value} message Int32Value message or plain object to encode
26855 * @param {$protobuf.Writer} [writer] Writer to encode to
26856 * @returns {$protobuf.Writer} Writer
26857 */
26858 Int32Value.encodeDelimited = function encodeDelimited(message, writer) {
26859 return this.encode(message, writer).ldelim();
26860 };
26861
26862 /**
26863 * Decodes an Int32Value message from the specified reader or buffer.
26864 * @function decode
26865 * @memberof google.protobuf.Int32Value
26866 * @static
26867 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26868 * @param {number} [length] Message length if known beforehand
26869 * @returns {google.protobuf.Int32Value} Int32Value
26870 * @throws {Error} If the payload is not a reader or valid buffer
26871 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26872 */
26873 Int32Value.decode = function decode(reader, length) {
26874 if (!(reader instanceof $Reader))
26875 reader = $Reader.create(reader);
26876 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.Int32Value();
26877 while (reader.pos < end) {
26878 var tag = reader.uint32();
26879 switch (tag >>> 3) {
26880 case 1:
26881 message.value = reader.int32();
26882 break;
26883 default:
26884 reader.skipType(tag & 7);
26885 break;
26886 }
26887 }
26888 return message;
26889 };
26890
26891 /**
26892 * Decodes an Int32Value message from the specified reader or buffer, length delimited.
26893 * @function decodeDelimited
26894 * @memberof google.protobuf.Int32Value
26895 * @static
26896 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
26897 * @returns {google.protobuf.Int32Value} Int32Value
26898 * @throws {Error} If the payload is not a reader or valid buffer
26899 * @throws {$protobuf.util.ProtocolError} If required fields are missing
26900 */
26901 Int32Value.decodeDelimited = function decodeDelimited(reader) {
26902 if (!(reader instanceof $Reader))
26903 reader = new $Reader(reader);
26904 return this.decode(reader, reader.uint32());
26905 };
26906
26907 /**
26908 * Verifies an Int32Value message.
26909 * @function verify
26910 * @memberof google.protobuf.Int32Value
26911 * @static
26912 * @param {Object.<string,*>} message Plain object to verify
26913 * @returns {string|null} `null` if valid, otherwise the reason why it is not
26914 */
26915 Int32Value.verify = function verify(message) {
26916 if (typeof message !== "object" || message === null)
26917 return "object expected";
26918 if (message.value != null && message.hasOwnProperty("value"))
26919 if (!$util.isInteger(message.value))
26920 return "value: integer expected";
26921 return null;
26922 };
26923
26924 /**
26925 * Creates an Int32Value message from a plain object. Also converts values to their respective internal types.
26926 * @function fromObject
26927 * @memberof google.protobuf.Int32Value
26928 * @static
26929 * @param {Object.<string,*>} object Plain object
26930 * @returns {google.protobuf.Int32Value} Int32Value
26931 */
26932 Int32Value.fromObject = function fromObject(object) {
26933 if (object instanceof $root.google.protobuf.Int32Value)
26934 return object;
26935 var message = new $root.google.protobuf.Int32Value();
26936 if (object.value != null)
26937 message.value = object.value | 0;
26938 return message;
26939 };
26940
26941 /**
26942 * Creates a plain object from an Int32Value message. Also converts values to other types if specified.
26943 * @function toObject
26944 * @memberof google.protobuf.Int32Value
26945 * @static
26946 * @param {google.protobuf.Int32Value} message Int32Value
26947 * @param {$protobuf.IConversionOptions} [options] Conversion options
26948 * @returns {Object.<string,*>} Plain object
26949 */
26950 Int32Value.toObject = function toObject(message, options) {
26951 if (!options)
26952 options = {};
26953 var object = {};
26954 if (options.defaults)
26955 object.value = 0;
26956 if (message.value != null && message.hasOwnProperty("value"))
26957 object.value = message.value;
26958 return object;
26959 };
26960
26961 /**
26962 * Converts this Int32Value to JSON.
26963 * @function toJSON
26964 * @memberof google.protobuf.Int32Value
26965 * @instance
26966 * @returns {Object.<string,*>} JSON object
26967 */
26968 Int32Value.prototype.toJSON = function toJSON() {
26969 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
26970 };
26971
26972 return Int32Value;
26973 })();
26974
26975 protobuf.UInt32Value = (function() {
26976
26977 /**
26978 * Properties of a UInt32Value.
26979 * @memberof google.protobuf
26980 * @interface IUInt32Value
26981 * @property {number|null} [value] UInt32Value value
26982 */
26983
26984 /**
26985 * Constructs a new UInt32Value.
26986 * @memberof google.protobuf
26987 * @classdesc Represents a UInt32Value.
26988 * @implements IUInt32Value
26989 * @constructor
26990 * @param {google.protobuf.IUInt32Value=} [properties] Properties to set
26991 */
26992 function UInt32Value(properties) {
26993 if (properties)
26994 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
26995 if (properties[keys[i]] != null)
26996 this[keys[i]] = properties[keys[i]];
26997 }
26998
26999 /**
27000 * UInt32Value value.
27001 * @member {number} value
27002 * @memberof google.protobuf.UInt32Value
27003 * @instance
27004 */
27005 UInt32Value.prototype.value = 0;
27006
27007 /**
27008 * Creates a new UInt32Value instance using the specified properties.
27009 * @function create
27010 * @memberof google.protobuf.UInt32Value
27011 * @static
27012 * @param {google.protobuf.IUInt32Value=} [properties] Properties to set
27013 * @returns {google.protobuf.UInt32Value} UInt32Value instance
27014 */
27015 UInt32Value.create = function create(properties) {
27016 return new UInt32Value(properties);
27017 };
27018
27019 /**
27020 * Encodes the specified UInt32Value message. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.
27021 * @function encode
27022 * @memberof google.protobuf.UInt32Value
27023 * @static
27024 * @param {google.protobuf.IUInt32Value} message UInt32Value message or plain object to encode
27025 * @param {$protobuf.Writer} [writer] Writer to encode to
27026 * @returns {$protobuf.Writer} Writer
27027 */
27028 UInt32Value.encode = function encode(message, writer) {
27029 if (!writer)
27030 writer = $Writer.create();
27031 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
27032 writer.uint32(/* id 1, wireType 0 =*/8).uint32(message.value);
27033 return writer;
27034 };
27035
27036 /**
27037 * Encodes the specified UInt32Value message, length delimited. Does not implicitly {@link google.protobuf.UInt32Value.verify|verify} messages.
27038 * @function encodeDelimited
27039 * @memberof google.protobuf.UInt32Value
27040 * @static
27041 * @param {google.protobuf.IUInt32Value} message UInt32Value message or plain object to encode
27042 * @param {$protobuf.Writer} [writer] Writer to encode to
27043 * @returns {$protobuf.Writer} Writer
27044 */
27045 UInt32Value.encodeDelimited = function encodeDelimited(message, writer) {
27046 return this.encode(message, writer).ldelim();
27047 };
27048
27049 /**
27050 * Decodes a UInt32Value message from the specified reader or buffer.
27051 * @function decode
27052 * @memberof google.protobuf.UInt32Value
27053 * @static
27054 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
27055 * @param {number} [length] Message length if known beforehand
27056 * @returns {google.protobuf.UInt32Value} UInt32Value
27057 * @throws {Error} If the payload is not a reader or valid buffer
27058 * @throws {$protobuf.util.ProtocolError} If required fields are missing
27059 */
27060 UInt32Value.decode = function decode(reader, length) {
27061 if (!(reader instanceof $Reader))
27062 reader = $Reader.create(reader);
27063 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.UInt32Value();
27064 while (reader.pos < end) {
27065 var tag = reader.uint32();
27066 switch (tag >>> 3) {
27067 case 1:
27068 message.value = reader.uint32();
27069 break;
27070 default:
27071 reader.skipType(tag & 7);
27072 break;
27073 }
27074 }
27075 return message;
27076 };
27077
27078 /**
27079 * Decodes a UInt32Value message from the specified reader or buffer, length delimited.
27080 * @function decodeDelimited
27081 * @memberof google.protobuf.UInt32Value
27082 * @static
27083 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
27084 * @returns {google.protobuf.UInt32Value} UInt32Value
27085 * @throws {Error} If the payload is not a reader or valid buffer
27086 * @throws {$protobuf.util.ProtocolError} If required fields are missing
27087 */
27088 UInt32Value.decodeDelimited = function decodeDelimited(reader) {
27089 if (!(reader instanceof $Reader))
27090 reader = new $Reader(reader);
27091 return this.decode(reader, reader.uint32());
27092 };
27093
27094 /**
27095 * Verifies a UInt32Value message.
27096 * @function verify
27097 * @memberof google.protobuf.UInt32Value
27098 * @static
27099 * @param {Object.<string,*>} message Plain object to verify
27100 * @returns {string|null} `null` if valid, otherwise the reason why it is not
27101 */
27102 UInt32Value.verify = function verify(message) {
27103 if (typeof message !== "object" || message === null)
27104 return "object expected";
27105 if (message.value != null && message.hasOwnProperty("value"))
27106 if (!$util.isInteger(message.value))
27107 return "value: integer expected";
27108 return null;
27109 };
27110
27111 /**
27112 * Creates a UInt32Value message from a plain object. Also converts values to their respective internal types.
27113 * @function fromObject
27114 * @memberof google.protobuf.UInt32Value
27115 * @static
27116 * @param {Object.<string,*>} object Plain object
27117 * @returns {google.protobuf.UInt32Value} UInt32Value
27118 */
27119 UInt32Value.fromObject = function fromObject(object) {
27120 if (object instanceof $root.google.protobuf.UInt32Value)
27121 return object;
27122 var message = new $root.google.protobuf.UInt32Value();
27123 if (object.value != null)
27124 message.value = object.value >>> 0;
27125 return message;
27126 };
27127
27128 /**
27129 * Creates a plain object from a UInt32Value message. Also converts values to other types if specified.
27130 * @function toObject
27131 * @memberof google.protobuf.UInt32Value
27132 * @static
27133 * @param {google.protobuf.UInt32Value} message UInt32Value
27134 * @param {$protobuf.IConversionOptions} [options] Conversion options
27135 * @returns {Object.<string,*>} Plain object
27136 */
27137 UInt32Value.toObject = function toObject(message, options) {
27138 if (!options)
27139 options = {};
27140 var object = {};
27141 if (options.defaults)
27142 object.value = 0;
27143 if (message.value != null && message.hasOwnProperty("value"))
27144 object.value = message.value;
27145 return object;
27146 };
27147
27148 /**
27149 * Converts this UInt32Value to JSON.
27150 * @function toJSON
27151 * @memberof google.protobuf.UInt32Value
27152 * @instance
27153 * @returns {Object.<string,*>} JSON object
27154 */
27155 UInt32Value.prototype.toJSON = function toJSON() {
27156 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
27157 };
27158
27159 return UInt32Value;
27160 })();
27161
27162 protobuf.BoolValue = (function() {
27163
27164 /**
27165 * Properties of a BoolValue.
27166 * @memberof google.protobuf
27167 * @interface IBoolValue
27168 * @property {boolean|null} [value] BoolValue value
27169 */
27170
27171 /**
27172 * Constructs a new BoolValue.
27173 * @memberof google.protobuf
27174 * @classdesc Represents a BoolValue.
27175 * @implements IBoolValue
27176 * @constructor
27177 * @param {google.protobuf.IBoolValue=} [properties] Properties to set
27178 */
27179 function BoolValue(properties) {
27180 if (properties)
27181 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
27182 if (properties[keys[i]] != null)
27183 this[keys[i]] = properties[keys[i]];
27184 }
27185
27186 /**
27187 * BoolValue value.
27188 * @member {boolean} value
27189 * @memberof google.protobuf.BoolValue
27190 * @instance
27191 */
27192 BoolValue.prototype.value = false;
27193
27194 /**
27195 * Creates a new BoolValue instance using the specified properties.
27196 * @function create
27197 * @memberof google.protobuf.BoolValue
27198 * @static
27199 * @param {google.protobuf.IBoolValue=} [properties] Properties to set
27200 * @returns {google.protobuf.BoolValue} BoolValue instance
27201 */
27202 BoolValue.create = function create(properties) {
27203 return new BoolValue(properties);
27204 };
27205
27206 /**
27207 * Encodes the specified BoolValue message. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.
27208 * @function encode
27209 * @memberof google.protobuf.BoolValue
27210 * @static
27211 * @param {google.protobuf.IBoolValue} message BoolValue message or plain object to encode
27212 * @param {$protobuf.Writer} [writer] Writer to encode to
27213 * @returns {$protobuf.Writer} Writer
27214 */
27215 BoolValue.encode = function encode(message, writer) {
27216 if (!writer)
27217 writer = $Writer.create();
27218 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
27219 writer.uint32(/* id 1, wireType 0 =*/8).bool(message.value);
27220 return writer;
27221 };
27222
27223 /**
27224 * Encodes the specified BoolValue message, length delimited. Does not implicitly {@link google.protobuf.BoolValue.verify|verify} messages.
27225 * @function encodeDelimited
27226 * @memberof google.protobuf.BoolValue
27227 * @static
27228 * @param {google.protobuf.IBoolValue} message BoolValue message or plain object to encode
27229 * @param {$protobuf.Writer} [writer] Writer to encode to
27230 * @returns {$protobuf.Writer} Writer
27231 */
27232 BoolValue.encodeDelimited = function encodeDelimited(message, writer) {
27233 return this.encode(message, writer).ldelim();
27234 };
27235
27236 /**
27237 * Decodes a BoolValue message from the specified reader or buffer.
27238 * @function decode
27239 * @memberof google.protobuf.BoolValue
27240 * @static
27241 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
27242 * @param {number} [length] Message length if known beforehand
27243 * @returns {google.protobuf.BoolValue} BoolValue
27244 * @throws {Error} If the payload is not a reader or valid buffer
27245 * @throws {$protobuf.util.ProtocolError} If required fields are missing
27246 */
27247 BoolValue.decode = function decode(reader, length) {
27248 if (!(reader instanceof $Reader))
27249 reader = $Reader.create(reader);
27250 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.BoolValue();
27251 while (reader.pos < end) {
27252 var tag = reader.uint32();
27253 switch (tag >>> 3) {
27254 case 1:
27255 message.value = reader.bool();
27256 break;
27257 default:
27258 reader.skipType(tag & 7);
27259 break;
27260 }
27261 }
27262 return message;
27263 };
27264
27265 /**
27266 * Decodes a BoolValue message from the specified reader or buffer, length delimited.
27267 * @function decodeDelimited
27268 * @memberof google.protobuf.BoolValue
27269 * @static
27270 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
27271 * @returns {google.protobuf.BoolValue} BoolValue
27272 * @throws {Error} If the payload is not a reader or valid buffer
27273 * @throws {$protobuf.util.ProtocolError} If required fields are missing
27274 */
27275 BoolValue.decodeDelimited = function decodeDelimited(reader) {
27276 if (!(reader instanceof $Reader))
27277 reader = new $Reader(reader);
27278 return this.decode(reader, reader.uint32());
27279 };
27280
27281 /**
27282 * Verifies a BoolValue message.
27283 * @function verify
27284 * @memberof google.protobuf.BoolValue
27285 * @static
27286 * @param {Object.<string,*>} message Plain object to verify
27287 * @returns {string|null} `null` if valid, otherwise the reason why it is not
27288 */
27289 BoolValue.verify = function verify(message) {
27290 if (typeof message !== "object" || message === null)
27291 return "object expected";
27292 if (message.value != null && message.hasOwnProperty("value"))
27293 if (typeof message.value !== "boolean")
27294 return "value: boolean expected";
27295 return null;
27296 };
27297
27298 /**
27299 * Creates a BoolValue message from a plain object. Also converts values to their respective internal types.
27300 * @function fromObject
27301 * @memberof google.protobuf.BoolValue
27302 * @static
27303 * @param {Object.<string,*>} object Plain object
27304 * @returns {google.protobuf.BoolValue} BoolValue
27305 */
27306 BoolValue.fromObject = function fromObject(object) {
27307 if (object instanceof $root.google.protobuf.BoolValue)
27308 return object;
27309 var message = new $root.google.protobuf.BoolValue();
27310 if (object.value != null)
27311 message.value = Boolean(object.value);
27312 return message;
27313 };
27314
27315 /**
27316 * Creates a plain object from a BoolValue message. Also converts values to other types if specified.
27317 * @function toObject
27318 * @memberof google.protobuf.BoolValue
27319 * @static
27320 * @param {google.protobuf.BoolValue} message BoolValue
27321 * @param {$protobuf.IConversionOptions} [options] Conversion options
27322 * @returns {Object.<string,*>} Plain object
27323 */
27324 BoolValue.toObject = function toObject(message, options) {
27325 if (!options)
27326 options = {};
27327 var object = {};
27328 if (options.defaults)
27329 object.value = false;
27330 if (message.value != null && message.hasOwnProperty("value"))
27331 object.value = message.value;
27332 return object;
27333 };
27334
27335 /**
27336 * Converts this BoolValue to JSON.
27337 * @function toJSON
27338 * @memberof google.protobuf.BoolValue
27339 * @instance
27340 * @returns {Object.<string,*>} JSON object
27341 */
27342 BoolValue.prototype.toJSON = function toJSON() {
27343 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
27344 };
27345
27346 return BoolValue;
27347 })();
27348
27349 protobuf.StringValue = (function() {
27350
27351 /**
27352 * Properties of a StringValue.
27353 * @memberof google.protobuf
27354 * @interface IStringValue
27355 * @property {string|null} [value] StringValue value
27356 */
27357
27358 /**
27359 * Constructs a new StringValue.
27360 * @memberof google.protobuf
27361 * @classdesc Represents a StringValue.
27362 * @implements IStringValue
27363 * @constructor
27364 * @param {google.protobuf.IStringValue=} [properties] Properties to set
27365 */
27366 function StringValue(properties) {
27367 if (properties)
27368 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
27369 if (properties[keys[i]] != null)
27370 this[keys[i]] = properties[keys[i]];
27371 }
27372
27373 /**
27374 * StringValue value.
27375 * @member {string} value
27376 * @memberof google.protobuf.StringValue
27377 * @instance
27378 */
27379 StringValue.prototype.value = "";
27380
27381 /**
27382 * Creates a new StringValue instance using the specified properties.
27383 * @function create
27384 * @memberof google.protobuf.StringValue
27385 * @static
27386 * @param {google.protobuf.IStringValue=} [properties] Properties to set
27387 * @returns {google.protobuf.StringValue} StringValue instance
27388 */
27389 StringValue.create = function create(properties) {
27390 return new StringValue(properties);
27391 };
27392
27393 /**
27394 * Encodes the specified StringValue message. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.
27395 * @function encode
27396 * @memberof google.protobuf.StringValue
27397 * @static
27398 * @param {google.protobuf.IStringValue} message StringValue message or plain object to encode
27399 * @param {$protobuf.Writer} [writer] Writer to encode to
27400 * @returns {$protobuf.Writer} Writer
27401 */
27402 StringValue.encode = function encode(message, writer) {
27403 if (!writer)
27404 writer = $Writer.create();
27405 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
27406 writer.uint32(/* id 1, wireType 2 =*/10).string(message.value);
27407 return writer;
27408 };
27409
27410 /**
27411 * Encodes the specified StringValue message, length delimited. Does not implicitly {@link google.protobuf.StringValue.verify|verify} messages.
27412 * @function encodeDelimited
27413 * @memberof google.protobuf.StringValue
27414 * @static
27415 * @param {google.protobuf.IStringValue} message StringValue message or plain object to encode
27416 * @param {$protobuf.Writer} [writer] Writer to encode to
27417 * @returns {$protobuf.Writer} Writer
27418 */
27419 StringValue.encodeDelimited = function encodeDelimited(message, writer) {
27420 return this.encode(message, writer).ldelim();
27421 };
27422
27423 /**
27424 * Decodes a StringValue message from the specified reader or buffer.
27425 * @function decode
27426 * @memberof google.protobuf.StringValue
27427 * @static
27428 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
27429 * @param {number} [length] Message length if known beforehand
27430 * @returns {google.protobuf.StringValue} StringValue
27431 * @throws {Error} If the payload is not a reader or valid buffer
27432 * @throws {$protobuf.util.ProtocolError} If required fields are missing
27433 */
27434 StringValue.decode = function decode(reader, length) {
27435 if (!(reader instanceof $Reader))
27436 reader = $Reader.create(reader);
27437 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.StringValue();
27438 while (reader.pos < end) {
27439 var tag = reader.uint32();
27440 switch (tag >>> 3) {
27441 case 1:
27442 message.value = reader.string();
27443 break;
27444 default:
27445 reader.skipType(tag & 7);
27446 break;
27447 }
27448 }
27449 return message;
27450 };
27451
27452 /**
27453 * Decodes a StringValue message from the specified reader or buffer, length delimited.
27454 * @function decodeDelimited
27455 * @memberof google.protobuf.StringValue
27456 * @static
27457 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
27458 * @returns {google.protobuf.StringValue} StringValue
27459 * @throws {Error} If the payload is not a reader or valid buffer
27460 * @throws {$protobuf.util.ProtocolError} If required fields are missing
27461 */
27462 StringValue.decodeDelimited = function decodeDelimited(reader) {
27463 if (!(reader instanceof $Reader))
27464 reader = new $Reader(reader);
27465 return this.decode(reader, reader.uint32());
27466 };
27467
27468 /**
27469 * Verifies a StringValue message.
27470 * @function verify
27471 * @memberof google.protobuf.StringValue
27472 * @static
27473 * @param {Object.<string,*>} message Plain object to verify
27474 * @returns {string|null} `null` if valid, otherwise the reason why it is not
27475 */
27476 StringValue.verify = function verify(message) {
27477 if (typeof message !== "object" || message === null)
27478 return "object expected";
27479 if (message.value != null && message.hasOwnProperty("value"))
27480 if (!$util.isString(message.value))
27481 return "value: string expected";
27482 return null;
27483 };
27484
27485 /**
27486 * Creates a StringValue message from a plain object. Also converts values to their respective internal types.
27487 * @function fromObject
27488 * @memberof google.protobuf.StringValue
27489 * @static
27490 * @param {Object.<string,*>} object Plain object
27491 * @returns {google.protobuf.StringValue} StringValue
27492 */
27493 StringValue.fromObject = function fromObject(object) {
27494 if (object instanceof $root.google.protobuf.StringValue)
27495 return object;
27496 var message = new $root.google.protobuf.StringValue();
27497 if (object.value != null)
27498 message.value = String(object.value);
27499 return message;
27500 };
27501
27502 /**
27503 * Creates a plain object from a StringValue message. Also converts values to other types if specified.
27504 * @function toObject
27505 * @memberof google.protobuf.StringValue
27506 * @static
27507 * @param {google.protobuf.StringValue} message StringValue
27508 * @param {$protobuf.IConversionOptions} [options] Conversion options
27509 * @returns {Object.<string,*>} Plain object
27510 */
27511 StringValue.toObject = function toObject(message, options) {
27512 if (!options)
27513 options = {};
27514 var object = {};
27515 if (options.defaults)
27516 object.value = "";
27517 if (message.value != null && message.hasOwnProperty("value"))
27518 object.value = message.value;
27519 return object;
27520 };
27521
27522 /**
27523 * Converts this StringValue to JSON.
27524 * @function toJSON
27525 * @memberof google.protobuf.StringValue
27526 * @instance
27527 * @returns {Object.<string,*>} JSON object
27528 */
27529 StringValue.prototype.toJSON = function toJSON() {
27530 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
27531 };
27532
27533 return StringValue;
27534 })();
27535
27536 protobuf.BytesValue = (function() {
27537
27538 /**
27539 * Properties of a BytesValue.
27540 * @memberof google.protobuf
27541 * @interface IBytesValue
27542 * @property {Uint8Array|null} [value] BytesValue value
27543 */
27544
27545 /**
27546 * Constructs a new BytesValue.
27547 * @memberof google.protobuf
27548 * @classdesc Represents a BytesValue.
27549 * @implements IBytesValue
27550 * @constructor
27551 * @param {google.protobuf.IBytesValue=} [properties] Properties to set
27552 */
27553 function BytesValue(properties) {
27554 if (properties)
27555 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
27556 if (properties[keys[i]] != null)
27557 this[keys[i]] = properties[keys[i]];
27558 }
27559
27560 /**
27561 * BytesValue value.
27562 * @member {Uint8Array} value
27563 * @memberof google.protobuf.BytesValue
27564 * @instance
27565 */
27566 BytesValue.prototype.value = $util.newBuffer([]);
27567
27568 /**
27569 * Creates a new BytesValue instance using the specified properties.
27570 * @function create
27571 * @memberof google.protobuf.BytesValue
27572 * @static
27573 * @param {google.protobuf.IBytesValue=} [properties] Properties to set
27574 * @returns {google.protobuf.BytesValue} BytesValue instance
27575 */
27576 BytesValue.create = function create(properties) {
27577 return new BytesValue(properties);
27578 };
27579
27580 /**
27581 * Encodes the specified BytesValue message. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.
27582 * @function encode
27583 * @memberof google.protobuf.BytesValue
27584 * @static
27585 * @param {google.protobuf.IBytesValue} message BytesValue message or plain object to encode
27586 * @param {$protobuf.Writer} [writer] Writer to encode to
27587 * @returns {$protobuf.Writer} Writer
27588 */
27589 BytesValue.encode = function encode(message, writer) {
27590 if (!writer)
27591 writer = $Writer.create();
27592 if (message.value != null && Object.hasOwnProperty.call(message, "value"))
27593 writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.value);
27594 return writer;
27595 };
27596
27597 /**
27598 * Encodes the specified BytesValue message, length delimited. Does not implicitly {@link google.protobuf.BytesValue.verify|verify} messages.
27599 * @function encodeDelimited
27600 * @memberof google.protobuf.BytesValue
27601 * @static
27602 * @param {google.protobuf.IBytesValue} message BytesValue message or plain object to encode
27603 * @param {$protobuf.Writer} [writer] Writer to encode to
27604 * @returns {$protobuf.Writer} Writer
27605 */
27606 BytesValue.encodeDelimited = function encodeDelimited(message, writer) {
27607 return this.encode(message, writer).ldelim();
27608 };
27609
27610 /**
27611 * Decodes a BytesValue message from the specified reader or buffer.
27612 * @function decode
27613 * @memberof google.protobuf.BytesValue
27614 * @static
27615 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
27616 * @param {number} [length] Message length if known beforehand
27617 * @returns {google.protobuf.BytesValue} BytesValue
27618 * @throws {Error} If the payload is not a reader or valid buffer
27619 * @throws {$protobuf.util.ProtocolError} If required fields are missing
27620 */
27621 BytesValue.decode = function decode(reader, length) {
27622 if (!(reader instanceof $Reader))
27623 reader = $Reader.create(reader);
27624 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.protobuf.BytesValue();
27625 while (reader.pos < end) {
27626 var tag = reader.uint32();
27627 switch (tag >>> 3) {
27628 case 1:
27629 message.value = reader.bytes();
27630 break;
27631 default:
27632 reader.skipType(tag & 7);
27633 break;
27634 }
27635 }
27636 return message;
27637 };
27638
27639 /**
27640 * Decodes a BytesValue message from the specified reader or buffer, length delimited.
27641 * @function decodeDelimited
27642 * @memberof google.protobuf.BytesValue
27643 * @static
27644 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
27645 * @returns {google.protobuf.BytesValue} BytesValue
27646 * @throws {Error} If the payload is not a reader or valid buffer
27647 * @throws {$protobuf.util.ProtocolError} If required fields are missing
27648 */
27649 BytesValue.decodeDelimited = function decodeDelimited(reader) {
27650 if (!(reader instanceof $Reader))
27651 reader = new $Reader(reader);
27652 return this.decode(reader, reader.uint32());
27653 };
27654
27655 /**
27656 * Verifies a BytesValue message.
27657 * @function verify
27658 * @memberof google.protobuf.BytesValue
27659 * @static
27660 * @param {Object.<string,*>} message Plain object to verify
27661 * @returns {string|null} `null` if valid, otherwise the reason why it is not
27662 */
27663 BytesValue.verify = function verify(message) {
27664 if (typeof message !== "object" || message === null)
27665 return "object expected";
27666 if (message.value != null && message.hasOwnProperty("value"))
27667 if (!(message.value && typeof message.value.length === "number" || $util.isString(message.value)))
27668 return "value: buffer expected";
27669 return null;
27670 };
27671
27672 /**
27673 * Creates a BytesValue message from a plain object. Also converts values to their respective internal types.
27674 * @function fromObject
27675 * @memberof google.protobuf.BytesValue
27676 * @static
27677 * @param {Object.<string,*>} object Plain object
27678 * @returns {google.protobuf.BytesValue} BytesValue
27679 */
27680 BytesValue.fromObject = function fromObject(object) {
27681 if (object instanceof $root.google.protobuf.BytesValue)
27682 return object;
27683 var message = new $root.google.protobuf.BytesValue();
27684 if (object.value != null)
27685 if (typeof object.value === "string")
27686 $util.base64.decode(object.value, message.value = $util.newBuffer($util.base64.length(object.value)), 0);
27687 else if (object.value.length)
27688 message.value = object.value;
27689 return message;
27690 };
27691
27692 /**
27693 * Creates a plain object from a BytesValue message. Also converts values to other types if specified.
27694 * @function toObject
27695 * @memberof google.protobuf.BytesValue
27696 * @static
27697 * @param {google.protobuf.BytesValue} message BytesValue
27698 * @param {$protobuf.IConversionOptions} [options] Conversion options
27699 * @returns {Object.<string,*>} Plain object
27700 */
27701 BytesValue.toObject = function toObject(message, options) {
27702 if (!options)
27703 options = {};
27704 var object = {};
27705 if (options.defaults)
27706 if (options.bytes === String)
27707 object.value = "";
27708 else {
27709 object.value = [];
27710 if (options.bytes !== Array)
27711 object.value = $util.newBuffer(object.value);
27712 }
27713 if (message.value != null && message.hasOwnProperty("value"))
27714 object.value = options.bytes === String ? $util.base64.encode(message.value, 0, message.value.length) : options.bytes === Array ? Array.prototype.slice.call(message.value) : message.value;
27715 return object;
27716 };
27717
27718 /**
27719 * Converts this BytesValue to JSON.
27720 * @function toJSON
27721 * @memberof google.protobuf.BytesValue
27722 * @instance
27723 * @returns {Object.<string,*>} JSON object
27724 */
27725 BytesValue.prototype.toJSON = function toJSON() {
27726 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
27727 };
27728
27729 return BytesValue;
27730 })();
27731
27732 return protobuf;
27733 })();
27734
27735 google.longrunning = (function() {
27736
27737 /**
27738 * Namespace longrunning.
27739 * @memberof google
27740 * @namespace
27741 */
27742 var longrunning = {};
27743
27744 longrunning.Operations = (function() {
27745
27746 /**
27747 * Constructs a new Operations service.
27748 * @memberof google.longrunning
27749 * @classdesc Represents an Operations
27750 * @extends $protobuf.rpc.Service
27751 * @constructor
27752 * @param {$protobuf.RPCImpl} rpcImpl RPC implementation
27753 * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
27754 * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
27755 */
27756 function Operations(rpcImpl, requestDelimited, responseDelimited) {
27757 $protobuf.rpc.Service.call(this, rpcImpl, requestDelimited, responseDelimited);
27758 }
27759
27760 (Operations.prototype = Object.create($protobuf.rpc.Service.prototype)).constructor = Operations;
27761
27762 /**
27763 * Creates new Operations service using the specified rpc implementation.
27764 * @function create
27765 * @memberof google.longrunning.Operations
27766 * @static
27767 * @param {$protobuf.RPCImpl} rpcImpl RPC implementation
27768 * @param {boolean} [requestDelimited=false] Whether requests are length-delimited
27769 * @param {boolean} [responseDelimited=false] Whether responses are length-delimited
27770 * @returns {Operations} RPC service. Useful where requests and/or responses are streamed.
27771 */
27772 Operations.create = function create(rpcImpl, requestDelimited, responseDelimited) {
27773 return new this(rpcImpl, requestDelimited, responseDelimited);
27774 };
27775
27776 /**
27777 * Callback as used by {@link google.longrunning.Operations#listOperations}.
27778 * @memberof google.longrunning.Operations
27779 * @typedef ListOperationsCallback
27780 * @type {function}
27781 * @param {Error|null} error Error, if any
27782 * @param {google.longrunning.ListOperationsResponse} [response] ListOperationsResponse
27783 */
27784
27785 /**
27786 * Calls ListOperations.
27787 * @function listOperations
27788 * @memberof google.longrunning.Operations
27789 * @instance
27790 * @param {google.longrunning.IListOperationsRequest} request ListOperationsRequest message or plain object
27791 * @param {google.longrunning.Operations.ListOperationsCallback} callback Node-style callback called with the error, if any, and ListOperationsResponse
27792 * @returns {undefined}
27793 * @variation 1
27794 */
27795 Object.defineProperty(Operations.prototype.listOperations = function listOperations(request, callback) {
27796 return this.rpcCall(listOperations, $root.google.longrunning.ListOperationsRequest, $root.google.longrunning.ListOperationsResponse, request, callback);
27797 }, "name", { value: "ListOperations" });
27798
27799 /**
27800 * Calls ListOperations.
27801 * @function listOperations
27802 * @memberof google.longrunning.Operations
27803 * @instance
27804 * @param {google.longrunning.IListOperationsRequest} request ListOperationsRequest message or plain object
27805 * @returns {Promise<google.longrunning.ListOperationsResponse>} Promise
27806 * @variation 2
27807 */
27808
27809 /**
27810 * Callback as used by {@link google.longrunning.Operations#getOperation}.
27811 * @memberof google.longrunning.Operations
27812 * @typedef GetOperationCallback
27813 * @type {function}
27814 * @param {Error|null} error Error, if any
27815 * @param {google.longrunning.Operation} [response] Operation
27816 */
27817
27818 /**
27819 * Calls GetOperation.
27820 * @function getOperation
27821 * @memberof google.longrunning.Operations
27822 * @instance
27823 * @param {google.longrunning.IGetOperationRequest} request GetOperationRequest message or plain object
27824 * @param {google.longrunning.Operations.GetOperationCallback} callback Node-style callback called with the error, if any, and Operation
27825 * @returns {undefined}
27826 * @variation 1
27827 */
27828 Object.defineProperty(Operations.prototype.getOperation = function getOperation(request, callback) {
27829 return this.rpcCall(getOperation, $root.google.longrunning.GetOperationRequest, $root.google.longrunning.Operation, request, callback);
27830 }, "name", { value: "GetOperation" });
27831
27832 /**
27833 * Calls GetOperation.
27834 * @function getOperation
27835 * @memberof google.longrunning.Operations
27836 * @instance
27837 * @param {google.longrunning.IGetOperationRequest} request GetOperationRequest message or plain object
27838 * @returns {Promise<google.longrunning.Operation>} Promise
27839 * @variation 2
27840 */
27841
27842 /**
27843 * Callback as used by {@link google.longrunning.Operations#deleteOperation}.
27844 * @memberof google.longrunning.Operations
27845 * @typedef DeleteOperationCallback
27846 * @type {function}
27847 * @param {Error|null} error Error, if any
27848 * @param {google.protobuf.Empty} [response] Empty
27849 */
27850
27851 /**
27852 * Calls DeleteOperation.
27853 * @function deleteOperation
27854 * @memberof google.longrunning.Operations
27855 * @instance
27856 * @param {google.longrunning.IDeleteOperationRequest} request DeleteOperationRequest message or plain object
27857 * @param {google.longrunning.Operations.DeleteOperationCallback} callback Node-style callback called with the error, if any, and Empty
27858 * @returns {undefined}
27859 * @variation 1
27860 */
27861 Object.defineProperty(Operations.prototype.deleteOperation = function deleteOperation(request, callback) {
27862 return this.rpcCall(deleteOperation, $root.google.longrunning.DeleteOperationRequest, $root.google.protobuf.Empty, request, callback);
27863 }, "name", { value: "DeleteOperation" });
27864
27865 /**
27866 * Calls DeleteOperation.
27867 * @function deleteOperation
27868 * @memberof google.longrunning.Operations
27869 * @instance
27870 * @param {google.longrunning.IDeleteOperationRequest} request DeleteOperationRequest message or plain object
27871 * @returns {Promise<google.protobuf.Empty>} Promise
27872 * @variation 2
27873 */
27874
27875 /**
27876 * Callback as used by {@link google.longrunning.Operations#cancelOperation}.
27877 * @memberof google.longrunning.Operations
27878 * @typedef CancelOperationCallback
27879 * @type {function}
27880 * @param {Error|null} error Error, if any
27881 * @param {google.protobuf.Empty} [response] Empty
27882 */
27883
27884 /**
27885 * Calls CancelOperation.
27886 * @function cancelOperation
27887 * @memberof google.longrunning.Operations
27888 * @instance
27889 * @param {google.longrunning.ICancelOperationRequest} request CancelOperationRequest message or plain object
27890 * @param {google.longrunning.Operations.CancelOperationCallback} callback Node-style callback called with the error, if any, and Empty
27891 * @returns {undefined}
27892 * @variation 1
27893 */
27894 Object.defineProperty(Operations.prototype.cancelOperation = function cancelOperation(request, callback) {
27895 return this.rpcCall(cancelOperation, $root.google.longrunning.CancelOperationRequest, $root.google.protobuf.Empty, request, callback);
27896 }, "name", { value: "CancelOperation" });
27897
27898 /**
27899 * Calls CancelOperation.
27900 * @function cancelOperation
27901 * @memberof google.longrunning.Operations
27902 * @instance
27903 * @param {google.longrunning.ICancelOperationRequest} request CancelOperationRequest message or plain object
27904 * @returns {Promise<google.protobuf.Empty>} Promise
27905 * @variation 2
27906 */
27907
27908 /**
27909 * Callback as used by {@link google.longrunning.Operations#waitOperation}.
27910 * @memberof google.longrunning.Operations
27911 * @typedef WaitOperationCallback
27912 * @type {function}
27913 * @param {Error|null} error Error, if any
27914 * @param {google.longrunning.Operation} [response] Operation
27915 */
27916
27917 /**
27918 * Calls WaitOperation.
27919 * @function waitOperation
27920 * @memberof google.longrunning.Operations
27921 * @instance
27922 * @param {google.longrunning.IWaitOperationRequest} request WaitOperationRequest message or plain object
27923 * @param {google.longrunning.Operations.WaitOperationCallback} callback Node-style callback called with the error, if any, and Operation
27924 * @returns {undefined}
27925 * @variation 1
27926 */
27927 Object.defineProperty(Operations.prototype.waitOperation = function waitOperation(request, callback) {
27928 return this.rpcCall(waitOperation, $root.google.longrunning.WaitOperationRequest, $root.google.longrunning.Operation, request, callback);
27929 }, "name", { value: "WaitOperation" });
27930
27931 /**
27932 * Calls WaitOperation.
27933 * @function waitOperation
27934 * @memberof google.longrunning.Operations
27935 * @instance
27936 * @param {google.longrunning.IWaitOperationRequest} request WaitOperationRequest message or plain object
27937 * @returns {Promise<google.longrunning.Operation>} Promise
27938 * @variation 2
27939 */
27940
27941 return Operations;
27942 })();
27943
27944 longrunning.Operation = (function() {
27945
27946 /**
27947 * Properties of an Operation.
27948 * @memberof google.longrunning
27949 * @interface IOperation
27950 * @property {string|null} [name] Operation name
27951 * @property {google.protobuf.IAny|null} [metadata] Operation metadata
27952 * @property {boolean|null} [done] Operation done
27953 * @property {google.rpc.IStatus|null} [error] Operation error
27954 * @property {google.protobuf.IAny|null} [response] Operation response
27955 */
27956
27957 /**
27958 * Constructs a new Operation.
27959 * @memberof google.longrunning
27960 * @classdesc Represents an Operation.
27961 * @implements IOperation
27962 * @constructor
27963 * @param {google.longrunning.IOperation=} [properties] Properties to set
27964 */
27965 function Operation(properties) {
27966 if (properties)
27967 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
27968 if (properties[keys[i]] != null)
27969 this[keys[i]] = properties[keys[i]];
27970 }
27971
27972 /**
27973 * Operation name.
27974 * @member {string} name
27975 * @memberof google.longrunning.Operation
27976 * @instance
27977 */
27978 Operation.prototype.name = "";
27979
27980 /**
27981 * Operation metadata.
27982 * @member {google.protobuf.IAny|null|undefined} metadata
27983 * @memberof google.longrunning.Operation
27984 * @instance
27985 */
27986 Operation.prototype.metadata = null;
27987
27988 /**
27989 * Operation done.
27990 * @member {boolean} done
27991 * @memberof google.longrunning.Operation
27992 * @instance
27993 */
27994 Operation.prototype.done = false;
27995
27996 /**
27997 * Operation error.
27998 * @member {google.rpc.IStatus|null|undefined} error
27999 * @memberof google.longrunning.Operation
28000 * @instance
28001 */
28002 Operation.prototype.error = null;
28003
28004 /**
28005 * Operation response.
28006 * @member {google.protobuf.IAny|null|undefined} response
28007 * @memberof google.longrunning.Operation
28008 * @instance
28009 */
28010 Operation.prototype.response = null;
28011
28012 // OneOf field names bound to virtual getters and setters
28013 var $oneOfFields;
28014
28015 /**
28016 * Operation result.
28017 * @member {"error"|"response"|undefined} result
28018 * @memberof google.longrunning.Operation
28019 * @instance
28020 */
28021 Object.defineProperty(Operation.prototype, "result", {
28022 get: $util.oneOfGetter($oneOfFields = ["error", "response"]),
28023 set: $util.oneOfSetter($oneOfFields)
28024 });
28025
28026 /**
28027 * Creates a new Operation instance using the specified properties.
28028 * @function create
28029 * @memberof google.longrunning.Operation
28030 * @static
28031 * @param {google.longrunning.IOperation=} [properties] Properties to set
28032 * @returns {google.longrunning.Operation} Operation instance
28033 */
28034 Operation.create = function create(properties) {
28035 return new Operation(properties);
28036 };
28037
28038 /**
28039 * Encodes the specified Operation message. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages.
28040 * @function encode
28041 * @memberof google.longrunning.Operation
28042 * @static
28043 * @param {google.longrunning.IOperation} message Operation message or plain object to encode
28044 * @param {$protobuf.Writer} [writer] Writer to encode to
28045 * @returns {$protobuf.Writer} Writer
28046 */
28047 Operation.encode = function encode(message, writer) {
28048 if (!writer)
28049 writer = $Writer.create();
28050 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
28051 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
28052 if (message.metadata != null && Object.hasOwnProperty.call(message, "metadata"))
28053 $root.google.protobuf.Any.encode(message.metadata, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
28054 if (message.done != null && Object.hasOwnProperty.call(message, "done"))
28055 writer.uint32(/* id 3, wireType 0 =*/24).bool(message.done);
28056 if (message.error != null && Object.hasOwnProperty.call(message, "error"))
28057 $root.google.rpc.Status.encode(message.error, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
28058 if (message.response != null && Object.hasOwnProperty.call(message, "response"))
28059 $root.google.protobuf.Any.encode(message.response, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim();
28060 return writer;
28061 };
28062
28063 /**
28064 * Encodes the specified Operation message, length delimited. Does not implicitly {@link google.longrunning.Operation.verify|verify} messages.
28065 * @function encodeDelimited
28066 * @memberof google.longrunning.Operation
28067 * @static
28068 * @param {google.longrunning.IOperation} message Operation message or plain object to encode
28069 * @param {$protobuf.Writer} [writer] Writer to encode to
28070 * @returns {$protobuf.Writer} Writer
28071 */
28072 Operation.encodeDelimited = function encodeDelimited(message, writer) {
28073 return this.encode(message, writer).ldelim();
28074 };
28075
28076 /**
28077 * Decodes an Operation message from the specified reader or buffer.
28078 * @function decode
28079 * @memberof google.longrunning.Operation
28080 * @static
28081 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
28082 * @param {number} [length] Message length if known beforehand
28083 * @returns {google.longrunning.Operation} Operation
28084 * @throws {Error} If the payload is not a reader or valid buffer
28085 * @throws {$protobuf.util.ProtocolError} If required fields are missing
28086 */
28087 Operation.decode = function decode(reader, length) {
28088 if (!(reader instanceof $Reader))
28089 reader = $Reader.create(reader);
28090 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.Operation();
28091 while (reader.pos < end) {
28092 var tag = reader.uint32();
28093 switch (tag >>> 3) {
28094 case 1:
28095 message.name = reader.string();
28096 break;
28097 case 2:
28098 message.metadata = $root.google.protobuf.Any.decode(reader, reader.uint32());
28099 break;
28100 case 3:
28101 message.done = reader.bool();
28102 break;
28103 case 4:
28104 message.error = $root.google.rpc.Status.decode(reader, reader.uint32());
28105 break;
28106 case 5:
28107 message.response = $root.google.protobuf.Any.decode(reader, reader.uint32());
28108 break;
28109 default:
28110 reader.skipType(tag & 7);
28111 break;
28112 }
28113 }
28114 return message;
28115 };
28116
28117 /**
28118 * Decodes an Operation message from the specified reader or buffer, length delimited.
28119 * @function decodeDelimited
28120 * @memberof google.longrunning.Operation
28121 * @static
28122 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
28123 * @returns {google.longrunning.Operation} Operation
28124 * @throws {Error} If the payload is not a reader or valid buffer
28125 * @throws {$protobuf.util.ProtocolError} If required fields are missing
28126 */
28127 Operation.decodeDelimited = function decodeDelimited(reader) {
28128 if (!(reader instanceof $Reader))
28129 reader = new $Reader(reader);
28130 return this.decode(reader, reader.uint32());
28131 };
28132
28133 /**
28134 * Verifies an Operation message.
28135 * @function verify
28136 * @memberof google.longrunning.Operation
28137 * @static
28138 * @param {Object.<string,*>} message Plain object to verify
28139 * @returns {string|null} `null` if valid, otherwise the reason why it is not
28140 */
28141 Operation.verify = function verify(message) {
28142 if (typeof message !== "object" || message === null)
28143 return "object expected";
28144 var properties = {};
28145 if (message.name != null && message.hasOwnProperty("name"))
28146 if (!$util.isString(message.name))
28147 return "name: string expected";
28148 if (message.metadata != null && message.hasOwnProperty("metadata")) {
28149 var error = $root.google.protobuf.Any.verify(message.metadata);
28150 if (error)
28151 return "metadata." + error;
28152 }
28153 if (message.done != null && message.hasOwnProperty("done"))
28154 if (typeof message.done !== "boolean")
28155 return "done: boolean expected";
28156 if (message.error != null && message.hasOwnProperty("error")) {
28157 properties.result = 1;
28158 {
28159 var error = $root.google.rpc.Status.verify(message.error);
28160 if (error)
28161 return "error." + error;
28162 }
28163 }
28164 if (message.response != null && message.hasOwnProperty("response")) {
28165 if (properties.result === 1)
28166 return "result: multiple values";
28167 properties.result = 1;
28168 {
28169 var error = $root.google.protobuf.Any.verify(message.response);
28170 if (error)
28171 return "response." + error;
28172 }
28173 }
28174 return null;
28175 };
28176
28177 /**
28178 * Creates an Operation message from a plain object. Also converts values to their respective internal types.
28179 * @function fromObject
28180 * @memberof google.longrunning.Operation
28181 * @static
28182 * @param {Object.<string,*>} object Plain object
28183 * @returns {google.longrunning.Operation} Operation
28184 */
28185 Operation.fromObject = function fromObject(object) {
28186 if (object instanceof $root.google.longrunning.Operation)
28187 return object;
28188 var message = new $root.google.longrunning.Operation();
28189 if (object.name != null)
28190 message.name = String(object.name);
28191 if (object.metadata != null) {
28192 if (typeof object.metadata !== "object")
28193 throw TypeError(".google.longrunning.Operation.metadata: object expected");
28194 message.metadata = $root.google.protobuf.Any.fromObject(object.metadata);
28195 }
28196 if (object.done != null)
28197 message.done = Boolean(object.done);
28198 if (object.error != null) {
28199 if (typeof object.error !== "object")
28200 throw TypeError(".google.longrunning.Operation.error: object expected");
28201 message.error = $root.google.rpc.Status.fromObject(object.error);
28202 }
28203 if (object.response != null) {
28204 if (typeof object.response !== "object")
28205 throw TypeError(".google.longrunning.Operation.response: object expected");
28206 message.response = $root.google.protobuf.Any.fromObject(object.response);
28207 }
28208 return message;
28209 };
28210
28211 /**
28212 * Creates a plain object from an Operation message. Also converts values to other types if specified.
28213 * @function toObject
28214 * @memberof google.longrunning.Operation
28215 * @static
28216 * @param {google.longrunning.Operation} message Operation
28217 * @param {$protobuf.IConversionOptions} [options] Conversion options
28218 * @returns {Object.<string,*>} Plain object
28219 */
28220 Operation.toObject = function toObject(message, options) {
28221 if (!options)
28222 options = {};
28223 var object = {};
28224 if (options.defaults) {
28225 object.name = "";
28226 object.metadata = null;
28227 object.done = false;
28228 }
28229 if (message.name != null && message.hasOwnProperty("name"))
28230 object.name = message.name;
28231 if (message.metadata != null && message.hasOwnProperty("metadata"))
28232 object.metadata = $root.google.protobuf.Any.toObject(message.metadata, options);
28233 if (message.done != null && message.hasOwnProperty("done"))
28234 object.done = message.done;
28235 if (message.error != null && message.hasOwnProperty("error")) {
28236 object.error = $root.google.rpc.Status.toObject(message.error, options);
28237 if (options.oneofs)
28238 object.result = "error";
28239 }
28240 if (message.response != null && message.hasOwnProperty("response")) {
28241 object.response = $root.google.protobuf.Any.toObject(message.response, options);
28242 if (options.oneofs)
28243 object.result = "response";
28244 }
28245 return object;
28246 };
28247
28248 /**
28249 * Converts this Operation to JSON.
28250 * @function toJSON
28251 * @memberof google.longrunning.Operation
28252 * @instance
28253 * @returns {Object.<string,*>} JSON object
28254 */
28255 Operation.prototype.toJSON = function toJSON() {
28256 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
28257 };
28258
28259 return Operation;
28260 })();
28261
28262 longrunning.GetOperationRequest = (function() {
28263
28264 /**
28265 * Properties of a GetOperationRequest.
28266 * @memberof google.longrunning
28267 * @interface IGetOperationRequest
28268 * @property {string|null} [name] GetOperationRequest name
28269 */
28270
28271 /**
28272 * Constructs a new GetOperationRequest.
28273 * @memberof google.longrunning
28274 * @classdesc Represents a GetOperationRequest.
28275 * @implements IGetOperationRequest
28276 * @constructor
28277 * @param {google.longrunning.IGetOperationRequest=} [properties] Properties to set
28278 */
28279 function GetOperationRequest(properties) {
28280 if (properties)
28281 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
28282 if (properties[keys[i]] != null)
28283 this[keys[i]] = properties[keys[i]];
28284 }
28285
28286 /**
28287 * GetOperationRequest name.
28288 * @member {string} name
28289 * @memberof google.longrunning.GetOperationRequest
28290 * @instance
28291 */
28292 GetOperationRequest.prototype.name = "";
28293
28294 /**
28295 * Creates a new GetOperationRequest instance using the specified properties.
28296 * @function create
28297 * @memberof google.longrunning.GetOperationRequest
28298 * @static
28299 * @param {google.longrunning.IGetOperationRequest=} [properties] Properties to set
28300 * @returns {google.longrunning.GetOperationRequest} GetOperationRequest instance
28301 */
28302 GetOperationRequest.create = function create(properties) {
28303 return new GetOperationRequest(properties);
28304 };
28305
28306 /**
28307 * Encodes the specified GetOperationRequest message. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages.
28308 * @function encode
28309 * @memberof google.longrunning.GetOperationRequest
28310 * @static
28311 * @param {google.longrunning.IGetOperationRequest} message GetOperationRequest message or plain object to encode
28312 * @param {$protobuf.Writer} [writer] Writer to encode to
28313 * @returns {$protobuf.Writer} Writer
28314 */
28315 GetOperationRequest.encode = function encode(message, writer) {
28316 if (!writer)
28317 writer = $Writer.create();
28318 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
28319 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
28320 return writer;
28321 };
28322
28323 /**
28324 * Encodes the specified GetOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.GetOperationRequest.verify|verify} messages.
28325 * @function encodeDelimited
28326 * @memberof google.longrunning.GetOperationRequest
28327 * @static
28328 * @param {google.longrunning.IGetOperationRequest} message GetOperationRequest message or plain object to encode
28329 * @param {$protobuf.Writer} [writer] Writer to encode to
28330 * @returns {$protobuf.Writer} Writer
28331 */
28332 GetOperationRequest.encodeDelimited = function encodeDelimited(message, writer) {
28333 return this.encode(message, writer).ldelim();
28334 };
28335
28336 /**
28337 * Decodes a GetOperationRequest message from the specified reader or buffer.
28338 * @function decode
28339 * @memberof google.longrunning.GetOperationRequest
28340 * @static
28341 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
28342 * @param {number} [length] Message length if known beforehand
28343 * @returns {google.longrunning.GetOperationRequest} GetOperationRequest
28344 * @throws {Error} If the payload is not a reader or valid buffer
28345 * @throws {$protobuf.util.ProtocolError} If required fields are missing
28346 */
28347 GetOperationRequest.decode = function decode(reader, length) {
28348 if (!(reader instanceof $Reader))
28349 reader = $Reader.create(reader);
28350 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.GetOperationRequest();
28351 while (reader.pos < end) {
28352 var tag = reader.uint32();
28353 switch (tag >>> 3) {
28354 case 1:
28355 message.name = reader.string();
28356 break;
28357 default:
28358 reader.skipType(tag & 7);
28359 break;
28360 }
28361 }
28362 return message;
28363 };
28364
28365 /**
28366 * Decodes a GetOperationRequest message from the specified reader or buffer, length delimited.
28367 * @function decodeDelimited
28368 * @memberof google.longrunning.GetOperationRequest
28369 * @static
28370 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
28371 * @returns {google.longrunning.GetOperationRequest} GetOperationRequest
28372 * @throws {Error} If the payload is not a reader or valid buffer
28373 * @throws {$protobuf.util.ProtocolError} If required fields are missing
28374 */
28375 GetOperationRequest.decodeDelimited = function decodeDelimited(reader) {
28376 if (!(reader instanceof $Reader))
28377 reader = new $Reader(reader);
28378 return this.decode(reader, reader.uint32());
28379 };
28380
28381 /**
28382 * Verifies a GetOperationRequest message.
28383 * @function verify
28384 * @memberof google.longrunning.GetOperationRequest
28385 * @static
28386 * @param {Object.<string,*>} message Plain object to verify
28387 * @returns {string|null} `null` if valid, otherwise the reason why it is not
28388 */
28389 GetOperationRequest.verify = function verify(message) {
28390 if (typeof message !== "object" || message === null)
28391 return "object expected";
28392 if (message.name != null && message.hasOwnProperty("name"))
28393 if (!$util.isString(message.name))
28394 return "name: string expected";
28395 return null;
28396 };
28397
28398 /**
28399 * Creates a GetOperationRequest message from a plain object. Also converts values to their respective internal types.
28400 * @function fromObject
28401 * @memberof google.longrunning.GetOperationRequest
28402 * @static
28403 * @param {Object.<string,*>} object Plain object
28404 * @returns {google.longrunning.GetOperationRequest} GetOperationRequest
28405 */
28406 GetOperationRequest.fromObject = function fromObject(object) {
28407 if (object instanceof $root.google.longrunning.GetOperationRequest)
28408 return object;
28409 var message = new $root.google.longrunning.GetOperationRequest();
28410 if (object.name != null)
28411 message.name = String(object.name);
28412 return message;
28413 };
28414
28415 /**
28416 * Creates a plain object from a GetOperationRequest message. Also converts values to other types if specified.
28417 * @function toObject
28418 * @memberof google.longrunning.GetOperationRequest
28419 * @static
28420 * @param {google.longrunning.GetOperationRequest} message GetOperationRequest
28421 * @param {$protobuf.IConversionOptions} [options] Conversion options
28422 * @returns {Object.<string,*>} Plain object
28423 */
28424 GetOperationRequest.toObject = function toObject(message, options) {
28425 if (!options)
28426 options = {};
28427 var object = {};
28428 if (options.defaults)
28429 object.name = "";
28430 if (message.name != null && message.hasOwnProperty("name"))
28431 object.name = message.name;
28432 return object;
28433 };
28434
28435 /**
28436 * Converts this GetOperationRequest to JSON.
28437 * @function toJSON
28438 * @memberof google.longrunning.GetOperationRequest
28439 * @instance
28440 * @returns {Object.<string,*>} JSON object
28441 */
28442 GetOperationRequest.prototype.toJSON = function toJSON() {
28443 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
28444 };
28445
28446 return GetOperationRequest;
28447 })();
28448
28449 longrunning.ListOperationsRequest = (function() {
28450
28451 /**
28452 * Properties of a ListOperationsRequest.
28453 * @memberof google.longrunning
28454 * @interface IListOperationsRequest
28455 * @property {string|null} [name] ListOperationsRequest name
28456 * @property {string|null} [filter] ListOperationsRequest filter
28457 * @property {number|null} [pageSize] ListOperationsRequest pageSize
28458 * @property {string|null} [pageToken] ListOperationsRequest pageToken
28459 */
28460
28461 /**
28462 * Constructs a new ListOperationsRequest.
28463 * @memberof google.longrunning
28464 * @classdesc Represents a ListOperationsRequest.
28465 * @implements IListOperationsRequest
28466 * @constructor
28467 * @param {google.longrunning.IListOperationsRequest=} [properties] Properties to set
28468 */
28469 function ListOperationsRequest(properties) {
28470 if (properties)
28471 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
28472 if (properties[keys[i]] != null)
28473 this[keys[i]] = properties[keys[i]];
28474 }
28475
28476 /**
28477 * ListOperationsRequest name.
28478 * @member {string} name
28479 * @memberof google.longrunning.ListOperationsRequest
28480 * @instance
28481 */
28482 ListOperationsRequest.prototype.name = "";
28483
28484 /**
28485 * ListOperationsRequest filter.
28486 * @member {string} filter
28487 * @memberof google.longrunning.ListOperationsRequest
28488 * @instance
28489 */
28490 ListOperationsRequest.prototype.filter = "";
28491
28492 /**
28493 * ListOperationsRequest pageSize.
28494 * @member {number} pageSize
28495 * @memberof google.longrunning.ListOperationsRequest
28496 * @instance
28497 */
28498 ListOperationsRequest.prototype.pageSize = 0;
28499
28500 /**
28501 * ListOperationsRequest pageToken.
28502 * @member {string} pageToken
28503 * @memberof google.longrunning.ListOperationsRequest
28504 * @instance
28505 */
28506 ListOperationsRequest.prototype.pageToken = "";
28507
28508 /**
28509 * Creates a new ListOperationsRequest instance using the specified properties.
28510 * @function create
28511 * @memberof google.longrunning.ListOperationsRequest
28512 * @static
28513 * @param {google.longrunning.IListOperationsRequest=} [properties] Properties to set
28514 * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest instance
28515 */
28516 ListOperationsRequest.create = function create(properties) {
28517 return new ListOperationsRequest(properties);
28518 };
28519
28520 /**
28521 * Encodes the specified ListOperationsRequest message. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages.
28522 * @function encode
28523 * @memberof google.longrunning.ListOperationsRequest
28524 * @static
28525 * @param {google.longrunning.IListOperationsRequest} message ListOperationsRequest message or plain object to encode
28526 * @param {$protobuf.Writer} [writer] Writer to encode to
28527 * @returns {$protobuf.Writer} Writer
28528 */
28529 ListOperationsRequest.encode = function encode(message, writer) {
28530 if (!writer)
28531 writer = $Writer.create();
28532 if (message.filter != null && Object.hasOwnProperty.call(message, "filter"))
28533 writer.uint32(/* id 1, wireType 2 =*/10).string(message.filter);
28534 if (message.pageSize != null && Object.hasOwnProperty.call(message, "pageSize"))
28535 writer.uint32(/* id 2, wireType 0 =*/16).int32(message.pageSize);
28536 if (message.pageToken != null && Object.hasOwnProperty.call(message, "pageToken"))
28537 writer.uint32(/* id 3, wireType 2 =*/26).string(message.pageToken);
28538 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
28539 writer.uint32(/* id 4, wireType 2 =*/34).string(message.name);
28540 return writer;
28541 };
28542
28543 /**
28544 * Encodes the specified ListOperationsRequest message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsRequest.verify|verify} messages.
28545 * @function encodeDelimited
28546 * @memberof google.longrunning.ListOperationsRequest
28547 * @static
28548 * @param {google.longrunning.IListOperationsRequest} message ListOperationsRequest message or plain object to encode
28549 * @param {$protobuf.Writer} [writer] Writer to encode to
28550 * @returns {$protobuf.Writer} Writer
28551 */
28552 ListOperationsRequest.encodeDelimited = function encodeDelimited(message, writer) {
28553 return this.encode(message, writer).ldelim();
28554 };
28555
28556 /**
28557 * Decodes a ListOperationsRequest message from the specified reader or buffer.
28558 * @function decode
28559 * @memberof google.longrunning.ListOperationsRequest
28560 * @static
28561 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
28562 * @param {number} [length] Message length if known beforehand
28563 * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest
28564 * @throws {Error} If the payload is not a reader or valid buffer
28565 * @throws {$protobuf.util.ProtocolError} If required fields are missing
28566 */
28567 ListOperationsRequest.decode = function decode(reader, length) {
28568 if (!(reader instanceof $Reader))
28569 reader = $Reader.create(reader);
28570 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsRequest();
28571 while (reader.pos < end) {
28572 var tag = reader.uint32();
28573 switch (tag >>> 3) {
28574 case 4:
28575 message.name = reader.string();
28576 break;
28577 case 1:
28578 message.filter = reader.string();
28579 break;
28580 case 2:
28581 message.pageSize = reader.int32();
28582 break;
28583 case 3:
28584 message.pageToken = reader.string();
28585 break;
28586 default:
28587 reader.skipType(tag & 7);
28588 break;
28589 }
28590 }
28591 return message;
28592 };
28593
28594 /**
28595 * Decodes a ListOperationsRequest message from the specified reader or buffer, length delimited.
28596 * @function decodeDelimited
28597 * @memberof google.longrunning.ListOperationsRequest
28598 * @static
28599 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
28600 * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest
28601 * @throws {Error} If the payload is not a reader or valid buffer
28602 * @throws {$protobuf.util.ProtocolError} If required fields are missing
28603 */
28604 ListOperationsRequest.decodeDelimited = function decodeDelimited(reader) {
28605 if (!(reader instanceof $Reader))
28606 reader = new $Reader(reader);
28607 return this.decode(reader, reader.uint32());
28608 };
28609
28610 /**
28611 * Verifies a ListOperationsRequest message.
28612 * @function verify
28613 * @memberof google.longrunning.ListOperationsRequest
28614 * @static
28615 * @param {Object.<string,*>} message Plain object to verify
28616 * @returns {string|null} `null` if valid, otherwise the reason why it is not
28617 */
28618 ListOperationsRequest.verify = function verify(message) {
28619 if (typeof message !== "object" || message === null)
28620 return "object expected";
28621 if (message.name != null && message.hasOwnProperty("name"))
28622 if (!$util.isString(message.name))
28623 return "name: string expected";
28624 if (message.filter != null && message.hasOwnProperty("filter"))
28625 if (!$util.isString(message.filter))
28626 return "filter: string expected";
28627 if (message.pageSize != null && message.hasOwnProperty("pageSize"))
28628 if (!$util.isInteger(message.pageSize))
28629 return "pageSize: integer expected";
28630 if (message.pageToken != null && message.hasOwnProperty("pageToken"))
28631 if (!$util.isString(message.pageToken))
28632 return "pageToken: string expected";
28633 return null;
28634 };
28635
28636 /**
28637 * Creates a ListOperationsRequest message from a plain object. Also converts values to their respective internal types.
28638 * @function fromObject
28639 * @memberof google.longrunning.ListOperationsRequest
28640 * @static
28641 * @param {Object.<string,*>} object Plain object
28642 * @returns {google.longrunning.ListOperationsRequest} ListOperationsRequest
28643 */
28644 ListOperationsRequest.fromObject = function fromObject(object) {
28645 if (object instanceof $root.google.longrunning.ListOperationsRequest)
28646 return object;
28647 var message = new $root.google.longrunning.ListOperationsRequest();
28648 if (object.name != null)
28649 message.name = String(object.name);
28650 if (object.filter != null)
28651 message.filter = String(object.filter);
28652 if (object.pageSize != null)
28653 message.pageSize = object.pageSize | 0;
28654 if (object.pageToken != null)
28655 message.pageToken = String(object.pageToken);
28656 return message;
28657 };
28658
28659 /**
28660 * Creates a plain object from a ListOperationsRequest message. Also converts values to other types if specified.
28661 * @function toObject
28662 * @memberof google.longrunning.ListOperationsRequest
28663 * @static
28664 * @param {google.longrunning.ListOperationsRequest} message ListOperationsRequest
28665 * @param {$protobuf.IConversionOptions} [options] Conversion options
28666 * @returns {Object.<string,*>} Plain object
28667 */
28668 ListOperationsRequest.toObject = function toObject(message, options) {
28669 if (!options)
28670 options = {};
28671 var object = {};
28672 if (options.defaults) {
28673 object.filter = "";
28674 object.pageSize = 0;
28675 object.pageToken = "";
28676 object.name = "";
28677 }
28678 if (message.filter != null && message.hasOwnProperty("filter"))
28679 object.filter = message.filter;
28680 if (message.pageSize != null && message.hasOwnProperty("pageSize"))
28681 object.pageSize = message.pageSize;
28682 if (message.pageToken != null && message.hasOwnProperty("pageToken"))
28683 object.pageToken = message.pageToken;
28684 if (message.name != null && message.hasOwnProperty("name"))
28685 object.name = message.name;
28686 return object;
28687 };
28688
28689 /**
28690 * Converts this ListOperationsRequest to JSON.
28691 * @function toJSON
28692 * @memberof google.longrunning.ListOperationsRequest
28693 * @instance
28694 * @returns {Object.<string,*>} JSON object
28695 */
28696 ListOperationsRequest.prototype.toJSON = function toJSON() {
28697 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
28698 };
28699
28700 return ListOperationsRequest;
28701 })();
28702
28703 longrunning.ListOperationsResponse = (function() {
28704
28705 /**
28706 * Properties of a ListOperationsResponse.
28707 * @memberof google.longrunning
28708 * @interface IListOperationsResponse
28709 * @property {Array.<google.longrunning.IOperation>|null} [operations] ListOperationsResponse operations
28710 * @property {string|null} [nextPageToken] ListOperationsResponse nextPageToken
28711 */
28712
28713 /**
28714 * Constructs a new ListOperationsResponse.
28715 * @memberof google.longrunning
28716 * @classdesc Represents a ListOperationsResponse.
28717 * @implements IListOperationsResponse
28718 * @constructor
28719 * @param {google.longrunning.IListOperationsResponse=} [properties] Properties to set
28720 */
28721 function ListOperationsResponse(properties) {
28722 this.operations = [];
28723 if (properties)
28724 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
28725 if (properties[keys[i]] != null)
28726 this[keys[i]] = properties[keys[i]];
28727 }
28728
28729 /**
28730 * ListOperationsResponse operations.
28731 * @member {Array.<google.longrunning.IOperation>} operations
28732 * @memberof google.longrunning.ListOperationsResponse
28733 * @instance
28734 */
28735 ListOperationsResponse.prototype.operations = $util.emptyArray;
28736
28737 /**
28738 * ListOperationsResponse nextPageToken.
28739 * @member {string} nextPageToken
28740 * @memberof google.longrunning.ListOperationsResponse
28741 * @instance
28742 */
28743 ListOperationsResponse.prototype.nextPageToken = "";
28744
28745 /**
28746 * Creates a new ListOperationsResponse instance using the specified properties.
28747 * @function create
28748 * @memberof google.longrunning.ListOperationsResponse
28749 * @static
28750 * @param {google.longrunning.IListOperationsResponse=} [properties] Properties to set
28751 * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse instance
28752 */
28753 ListOperationsResponse.create = function create(properties) {
28754 return new ListOperationsResponse(properties);
28755 };
28756
28757 /**
28758 * Encodes the specified ListOperationsResponse message. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages.
28759 * @function encode
28760 * @memberof google.longrunning.ListOperationsResponse
28761 * @static
28762 * @param {google.longrunning.IListOperationsResponse} message ListOperationsResponse message or plain object to encode
28763 * @param {$protobuf.Writer} [writer] Writer to encode to
28764 * @returns {$protobuf.Writer} Writer
28765 */
28766 ListOperationsResponse.encode = function encode(message, writer) {
28767 if (!writer)
28768 writer = $Writer.create();
28769 if (message.operations != null && message.operations.length)
28770 for (var i = 0; i < message.operations.length; ++i)
28771 $root.google.longrunning.Operation.encode(message.operations[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
28772 if (message.nextPageToken != null && Object.hasOwnProperty.call(message, "nextPageToken"))
28773 writer.uint32(/* id 2, wireType 2 =*/18).string(message.nextPageToken);
28774 return writer;
28775 };
28776
28777 /**
28778 * Encodes the specified ListOperationsResponse message, length delimited. Does not implicitly {@link google.longrunning.ListOperationsResponse.verify|verify} messages.
28779 * @function encodeDelimited
28780 * @memberof google.longrunning.ListOperationsResponse
28781 * @static
28782 * @param {google.longrunning.IListOperationsResponse} message ListOperationsResponse message or plain object to encode
28783 * @param {$protobuf.Writer} [writer] Writer to encode to
28784 * @returns {$protobuf.Writer} Writer
28785 */
28786 ListOperationsResponse.encodeDelimited = function encodeDelimited(message, writer) {
28787 return this.encode(message, writer).ldelim();
28788 };
28789
28790 /**
28791 * Decodes a ListOperationsResponse message from the specified reader or buffer.
28792 * @function decode
28793 * @memberof google.longrunning.ListOperationsResponse
28794 * @static
28795 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
28796 * @param {number} [length] Message length if known beforehand
28797 * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse
28798 * @throws {Error} If the payload is not a reader or valid buffer
28799 * @throws {$protobuf.util.ProtocolError} If required fields are missing
28800 */
28801 ListOperationsResponse.decode = function decode(reader, length) {
28802 if (!(reader instanceof $Reader))
28803 reader = $Reader.create(reader);
28804 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.ListOperationsResponse();
28805 while (reader.pos < end) {
28806 var tag = reader.uint32();
28807 switch (tag >>> 3) {
28808 case 1:
28809 if (!(message.operations && message.operations.length))
28810 message.operations = [];
28811 message.operations.push($root.google.longrunning.Operation.decode(reader, reader.uint32()));
28812 break;
28813 case 2:
28814 message.nextPageToken = reader.string();
28815 break;
28816 default:
28817 reader.skipType(tag & 7);
28818 break;
28819 }
28820 }
28821 return message;
28822 };
28823
28824 /**
28825 * Decodes a ListOperationsResponse message from the specified reader or buffer, length delimited.
28826 * @function decodeDelimited
28827 * @memberof google.longrunning.ListOperationsResponse
28828 * @static
28829 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
28830 * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse
28831 * @throws {Error} If the payload is not a reader or valid buffer
28832 * @throws {$protobuf.util.ProtocolError} If required fields are missing
28833 */
28834 ListOperationsResponse.decodeDelimited = function decodeDelimited(reader) {
28835 if (!(reader instanceof $Reader))
28836 reader = new $Reader(reader);
28837 return this.decode(reader, reader.uint32());
28838 };
28839
28840 /**
28841 * Verifies a ListOperationsResponse message.
28842 * @function verify
28843 * @memberof google.longrunning.ListOperationsResponse
28844 * @static
28845 * @param {Object.<string,*>} message Plain object to verify
28846 * @returns {string|null} `null` if valid, otherwise the reason why it is not
28847 */
28848 ListOperationsResponse.verify = function verify(message) {
28849 if (typeof message !== "object" || message === null)
28850 return "object expected";
28851 if (message.operations != null && message.hasOwnProperty("operations")) {
28852 if (!Array.isArray(message.operations))
28853 return "operations: array expected";
28854 for (var i = 0; i < message.operations.length; ++i) {
28855 var error = $root.google.longrunning.Operation.verify(message.operations[i]);
28856 if (error)
28857 return "operations." + error;
28858 }
28859 }
28860 if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
28861 if (!$util.isString(message.nextPageToken))
28862 return "nextPageToken: string expected";
28863 return null;
28864 };
28865
28866 /**
28867 * Creates a ListOperationsResponse message from a plain object. Also converts values to their respective internal types.
28868 * @function fromObject
28869 * @memberof google.longrunning.ListOperationsResponse
28870 * @static
28871 * @param {Object.<string,*>} object Plain object
28872 * @returns {google.longrunning.ListOperationsResponse} ListOperationsResponse
28873 */
28874 ListOperationsResponse.fromObject = function fromObject(object) {
28875 if (object instanceof $root.google.longrunning.ListOperationsResponse)
28876 return object;
28877 var message = new $root.google.longrunning.ListOperationsResponse();
28878 if (object.operations) {
28879 if (!Array.isArray(object.operations))
28880 throw TypeError(".google.longrunning.ListOperationsResponse.operations: array expected");
28881 message.operations = [];
28882 for (var i = 0; i < object.operations.length; ++i) {
28883 if (typeof object.operations[i] !== "object")
28884 throw TypeError(".google.longrunning.ListOperationsResponse.operations: object expected");
28885 message.operations[i] = $root.google.longrunning.Operation.fromObject(object.operations[i]);
28886 }
28887 }
28888 if (object.nextPageToken != null)
28889 message.nextPageToken = String(object.nextPageToken);
28890 return message;
28891 };
28892
28893 /**
28894 * Creates a plain object from a ListOperationsResponse message. Also converts values to other types if specified.
28895 * @function toObject
28896 * @memberof google.longrunning.ListOperationsResponse
28897 * @static
28898 * @param {google.longrunning.ListOperationsResponse} message ListOperationsResponse
28899 * @param {$protobuf.IConversionOptions} [options] Conversion options
28900 * @returns {Object.<string,*>} Plain object
28901 */
28902 ListOperationsResponse.toObject = function toObject(message, options) {
28903 if (!options)
28904 options = {};
28905 var object = {};
28906 if (options.arrays || options.defaults)
28907 object.operations = [];
28908 if (options.defaults)
28909 object.nextPageToken = "";
28910 if (message.operations && message.operations.length) {
28911 object.operations = [];
28912 for (var j = 0; j < message.operations.length; ++j)
28913 object.operations[j] = $root.google.longrunning.Operation.toObject(message.operations[j], options);
28914 }
28915 if (message.nextPageToken != null && message.hasOwnProperty("nextPageToken"))
28916 object.nextPageToken = message.nextPageToken;
28917 return object;
28918 };
28919
28920 /**
28921 * Converts this ListOperationsResponse to JSON.
28922 * @function toJSON
28923 * @memberof google.longrunning.ListOperationsResponse
28924 * @instance
28925 * @returns {Object.<string,*>} JSON object
28926 */
28927 ListOperationsResponse.prototype.toJSON = function toJSON() {
28928 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
28929 };
28930
28931 return ListOperationsResponse;
28932 })();
28933
28934 longrunning.CancelOperationRequest = (function() {
28935
28936 /**
28937 * Properties of a CancelOperationRequest.
28938 * @memberof google.longrunning
28939 * @interface ICancelOperationRequest
28940 * @property {string|null} [name] CancelOperationRequest name
28941 */
28942
28943 /**
28944 * Constructs a new CancelOperationRequest.
28945 * @memberof google.longrunning
28946 * @classdesc Represents a CancelOperationRequest.
28947 * @implements ICancelOperationRequest
28948 * @constructor
28949 * @param {google.longrunning.ICancelOperationRequest=} [properties] Properties to set
28950 */
28951 function CancelOperationRequest(properties) {
28952 if (properties)
28953 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
28954 if (properties[keys[i]] != null)
28955 this[keys[i]] = properties[keys[i]];
28956 }
28957
28958 /**
28959 * CancelOperationRequest name.
28960 * @member {string} name
28961 * @memberof google.longrunning.CancelOperationRequest
28962 * @instance
28963 */
28964 CancelOperationRequest.prototype.name = "";
28965
28966 /**
28967 * Creates a new CancelOperationRequest instance using the specified properties.
28968 * @function create
28969 * @memberof google.longrunning.CancelOperationRequest
28970 * @static
28971 * @param {google.longrunning.ICancelOperationRequest=} [properties] Properties to set
28972 * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest instance
28973 */
28974 CancelOperationRequest.create = function create(properties) {
28975 return new CancelOperationRequest(properties);
28976 };
28977
28978 /**
28979 * Encodes the specified CancelOperationRequest message. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages.
28980 * @function encode
28981 * @memberof google.longrunning.CancelOperationRequest
28982 * @static
28983 * @param {google.longrunning.ICancelOperationRequest} message CancelOperationRequest message or plain object to encode
28984 * @param {$protobuf.Writer} [writer] Writer to encode to
28985 * @returns {$protobuf.Writer} Writer
28986 */
28987 CancelOperationRequest.encode = function encode(message, writer) {
28988 if (!writer)
28989 writer = $Writer.create();
28990 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
28991 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
28992 return writer;
28993 };
28994
28995 /**
28996 * Encodes the specified CancelOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.CancelOperationRequest.verify|verify} messages.
28997 * @function encodeDelimited
28998 * @memberof google.longrunning.CancelOperationRequest
28999 * @static
29000 * @param {google.longrunning.ICancelOperationRequest} message CancelOperationRequest message or plain object to encode
29001 * @param {$protobuf.Writer} [writer] Writer to encode to
29002 * @returns {$protobuf.Writer} Writer
29003 */
29004 CancelOperationRequest.encodeDelimited = function encodeDelimited(message, writer) {
29005 return this.encode(message, writer).ldelim();
29006 };
29007
29008 /**
29009 * Decodes a CancelOperationRequest message from the specified reader or buffer.
29010 * @function decode
29011 * @memberof google.longrunning.CancelOperationRequest
29012 * @static
29013 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29014 * @param {number} [length] Message length if known beforehand
29015 * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest
29016 * @throws {Error} If the payload is not a reader or valid buffer
29017 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29018 */
29019 CancelOperationRequest.decode = function decode(reader, length) {
29020 if (!(reader instanceof $Reader))
29021 reader = $Reader.create(reader);
29022 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.CancelOperationRequest();
29023 while (reader.pos < end) {
29024 var tag = reader.uint32();
29025 switch (tag >>> 3) {
29026 case 1:
29027 message.name = reader.string();
29028 break;
29029 default:
29030 reader.skipType(tag & 7);
29031 break;
29032 }
29033 }
29034 return message;
29035 };
29036
29037 /**
29038 * Decodes a CancelOperationRequest message from the specified reader or buffer, length delimited.
29039 * @function decodeDelimited
29040 * @memberof google.longrunning.CancelOperationRequest
29041 * @static
29042 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29043 * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest
29044 * @throws {Error} If the payload is not a reader or valid buffer
29045 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29046 */
29047 CancelOperationRequest.decodeDelimited = function decodeDelimited(reader) {
29048 if (!(reader instanceof $Reader))
29049 reader = new $Reader(reader);
29050 return this.decode(reader, reader.uint32());
29051 };
29052
29053 /**
29054 * Verifies a CancelOperationRequest message.
29055 * @function verify
29056 * @memberof google.longrunning.CancelOperationRequest
29057 * @static
29058 * @param {Object.<string,*>} message Plain object to verify
29059 * @returns {string|null} `null` if valid, otherwise the reason why it is not
29060 */
29061 CancelOperationRequest.verify = function verify(message) {
29062 if (typeof message !== "object" || message === null)
29063 return "object expected";
29064 if (message.name != null && message.hasOwnProperty("name"))
29065 if (!$util.isString(message.name))
29066 return "name: string expected";
29067 return null;
29068 };
29069
29070 /**
29071 * Creates a CancelOperationRequest message from a plain object. Also converts values to their respective internal types.
29072 * @function fromObject
29073 * @memberof google.longrunning.CancelOperationRequest
29074 * @static
29075 * @param {Object.<string,*>} object Plain object
29076 * @returns {google.longrunning.CancelOperationRequest} CancelOperationRequest
29077 */
29078 CancelOperationRequest.fromObject = function fromObject(object) {
29079 if (object instanceof $root.google.longrunning.CancelOperationRequest)
29080 return object;
29081 var message = new $root.google.longrunning.CancelOperationRequest();
29082 if (object.name != null)
29083 message.name = String(object.name);
29084 return message;
29085 };
29086
29087 /**
29088 * Creates a plain object from a CancelOperationRequest message. Also converts values to other types if specified.
29089 * @function toObject
29090 * @memberof google.longrunning.CancelOperationRequest
29091 * @static
29092 * @param {google.longrunning.CancelOperationRequest} message CancelOperationRequest
29093 * @param {$protobuf.IConversionOptions} [options] Conversion options
29094 * @returns {Object.<string,*>} Plain object
29095 */
29096 CancelOperationRequest.toObject = function toObject(message, options) {
29097 if (!options)
29098 options = {};
29099 var object = {};
29100 if (options.defaults)
29101 object.name = "";
29102 if (message.name != null && message.hasOwnProperty("name"))
29103 object.name = message.name;
29104 return object;
29105 };
29106
29107 /**
29108 * Converts this CancelOperationRequest to JSON.
29109 * @function toJSON
29110 * @memberof google.longrunning.CancelOperationRequest
29111 * @instance
29112 * @returns {Object.<string,*>} JSON object
29113 */
29114 CancelOperationRequest.prototype.toJSON = function toJSON() {
29115 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
29116 };
29117
29118 return CancelOperationRequest;
29119 })();
29120
29121 longrunning.DeleteOperationRequest = (function() {
29122
29123 /**
29124 * Properties of a DeleteOperationRequest.
29125 * @memberof google.longrunning
29126 * @interface IDeleteOperationRequest
29127 * @property {string|null} [name] DeleteOperationRequest name
29128 */
29129
29130 /**
29131 * Constructs a new DeleteOperationRequest.
29132 * @memberof google.longrunning
29133 * @classdesc Represents a DeleteOperationRequest.
29134 * @implements IDeleteOperationRequest
29135 * @constructor
29136 * @param {google.longrunning.IDeleteOperationRequest=} [properties] Properties to set
29137 */
29138 function DeleteOperationRequest(properties) {
29139 if (properties)
29140 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
29141 if (properties[keys[i]] != null)
29142 this[keys[i]] = properties[keys[i]];
29143 }
29144
29145 /**
29146 * DeleteOperationRequest name.
29147 * @member {string} name
29148 * @memberof google.longrunning.DeleteOperationRequest
29149 * @instance
29150 */
29151 DeleteOperationRequest.prototype.name = "";
29152
29153 /**
29154 * Creates a new DeleteOperationRequest instance using the specified properties.
29155 * @function create
29156 * @memberof google.longrunning.DeleteOperationRequest
29157 * @static
29158 * @param {google.longrunning.IDeleteOperationRequest=} [properties] Properties to set
29159 * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest instance
29160 */
29161 DeleteOperationRequest.create = function create(properties) {
29162 return new DeleteOperationRequest(properties);
29163 };
29164
29165 /**
29166 * Encodes the specified DeleteOperationRequest message. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages.
29167 * @function encode
29168 * @memberof google.longrunning.DeleteOperationRequest
29169 * @static
29170 * @param {google.longrunning.IDeleteOperationRequest} message DeleteOperationRequest message or plain object to encode
29171 * @param {$protobuf.Writer} [writer] Writer to encode to
29172 * @returns {$protobuf.Writer} Writer
29173 */
29174 DeleteOperationRequest.encode = function encode(message, writer) {
29175 if (!writer)
29176 writer = $Writer.create();
29177 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
29178 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
29179 return writer;
29180 };
29181
29182 /**
29183 * Encodes the specified DeleteOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.DeleteOperationRequest.verify|verify} messages.
29184 * @function encodeDelimited
29185 * @memberof google.longrunning.DeleteOperationRequest
29186 * @static
29187 * @param {google.longrunning.IDeleteOperationRequest} message DeleteOperationRequest message or plain object to encode
29188 * @param {$protobuf.Writer} [writer] Writer to encode to
29189 * @returns {$protobuf.Writer} Writer
29190 */
29191 DeleteOperationRequest.encodeDelimited = function encodeDelimited(message, writer) {
29192 return this.encode(message, writer).ldelim();
29193 };
29194
29195 /**
29196 * Decodes a DeleteOperationRequest message from the specified reader or buffer.
29197 * @function decode
29198 * @memberof google.longrunning.DeleteOperationRequest
29199 * @static
29200 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29201 * @param {number} [length] Message length if known beforehand
29202 * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest
29203 * @throws {Error} If the payload is not a reader or valid buffer
29204 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29205 */
29206 DeleteOperationRequest.decode = function decode(reader, length) {
29207 if (!(reader instanceof $Reader))
29208 reader = $Reader.create(reader);
29209 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.DeleteOperationRequest();
29210 while (reader.pos < end) {
29211 var tag = reader.uint32();
29212 switch (tag >>> 3) {
29213 case 1:
29214 message.name = reader.string();
29215 break;
29216 default:
29217 reader.skipType(tag & 7);
29218 break;
29219 }
29220 }
29221 return message;
29222 };
29223
29224 /**
29225 * Decodes a DeleteOperationRequest message from the specified reader or buffer, length delimited.
29226 * @function decodeDelimited
29227 * @memberof google.longrunning.DeleteOperationRequest
29228 * @static
29229 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29230 * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest
29231 * @throws {Error} If the payload is not a reader or valid buffer
29232 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29233 */
29234 DeleteOperationRequest.decodeDelimited = function decodeDelimited(reader) {
29235 if (!(reader instanceof $Reader))
29236 reader = new $Reader(reader);
29237 return this.decode(reader, reader.uint32());
29238 };
29239
29240 /**
29241 * Verifies a DeleteOperationRequest message.
29242 * @function verify
29243 * @memberof google.longrunning.DeleteOperationRequest
29244 * @static
29245 * @param {Object.<string,*>} message Plain object to verify
29246 * @returns {string|null} `null` if valid, otherwise the reason why it is not
29247 */
29248 DeleteOperationRequest.verify = function verify(message) {
29249 if (typeof message !== "object" || message === null)
29250 return "object expected";
29251 if (message.name != null && message.hasOwnProperty("name"))
29252 if (!$util.isString(message.name))
29253 return "name: string expected";
29254 return null;
29255 };
29256
29257 /**
29258 * Creates a DeleteOperationRequest message from a plain object. Also converts values to their respective internal types.
29259 * @function fromObject
29260 * @memberof google.longrunning.DeleteOperationRequest
29261 * @static
29262 * @param {Object.<string,*>} object Plain object
29263 * @returns {google.longrunning.DeleteOperationRequest} DeleteOperationRequest
29264 */
29265 DeleteOperationRequest.fromObject = function fromObject(object) {
29266 if (object instanceof $root.google.longrunning.DeleteOperationRequest)
29267 return object;
29268 var message = new $root.google.longrunning.DeleteOperationRequest();
29269 if (object.name != null)
29270 message.name = String(object.name);
29271 return message;
29272 };
29273
29274 /**
29275 * Creates a plain object from a DeleteOperationRequest message. Also converts values to other types if specified.
29276 * @function toObject
29277 * @memberof google.longrunning.DeleteOperationRequest
29278 * @static
29279 * @param {google.longrunning.DeleteOperationRequest} message DeleteOperationRequest
29280 * @param {$protobuf.IConversionOptions} [options] Conversion options
29281 * @returns {Object.<string,*>} Plain object
29282 */
29283 DeleteOperationRequest.toObject = function toObject(message, options) {
29284 if (!options)
29285 options = {};
29286 var object = {};
29287 if (options.defaults)
29288 object.name = "";
29289 if (message.name != null && message.hasOwnProperty("name"))
29290 object.name = message.name;
29291 return object;
29292 };
29293
29294 /**
29295 * Converts this DeleteOperationRequest to JSON.
29296 * @function toJSON
29297 * @memberof google.longrunning.DeleteOperationRequest
29298 * @instance
29299 * @returns {Object.<string,*>} JSON object
29300 */
29301 DeleteOperationRequest.prototype.toJSON = function toJSON() {
29302 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
29303 };
29304
29305 return DeleteOperationRequest;
29306 })();
29307
29308 longrunning.WaitOperationRequest = (function() {
29309
29310 /**
29311 * Properties of a WaitOperationRequest.
29312 * @memberof google.longrunning
29313 * @interface IWaitOperationRequest
29314 * @property {string|null} [name] WaitOperationRequest name
29315 * @property {google.protobuf.IDuration|null} [timeout] WaitOperationRequest timeout
29316 */
29317
29318 /**
29319 * Constructs a new WaitOperationRequest.
29320 * @memberof google.longrunning
29321 * @classdesc Represents a WaitOperationRequest.
29322 * @implements IWaitOperationRequest
29323 * @constructor
29324 * @param {google.longrunning.IWaitOperationRequest=} [properties] Properties to set
29325 */
29326 function WaitOperationRequest(properties) {
29327 if (properties)
29328 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
29329 if (properties[keys[i]] != null)
29330 this[keys[i]] = properties[keys[i]];
29331 }
29332
29333 /**
29334 * WaitOperationRequest name.
29335 * @member {string} name
29336 * @memberof google.longrunning.WaitOperationRequest
29337 * @instance
29338 */
29339 WaitOperationRequest.prototype.name = "";
29340
29341 /**
29342 * WaitOperationRequest timeout.
29343 * @member {google.protobuf.IDuration|null|undefined} timeout
29344 * @memberof google.longrunning.WaitOperationRequest
29345 * @instance
29346 */
29347 WaitOperationRequest.prototype.timeout = null;
29348
29349 /**
29350 * Creates a new WaitOperationRequest instance using the specified properties.
29351 * @function create
29352 * @memberof google.longrunning.WaitOperationRequest
29353 * @static
29354 * @param {google.longrunning.IWaitOperationRequest=} [properties] Properties to set
29355 * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest instance
29356 */
29357 WaitOperationRequest.create = function create(properties) {
29358 return new WaitOperationRequest(properties);
29359 };
29360
29361 /**
29362 * Encodes the specified WaitOperationRequest message. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages.
29363 * @function encode
29364 * @memberof google.longrunning.WaitOperationRequest
29365 * @static
29366 * @param {google.longrunning.IWaitOperationRequest} message WaitOperationRequest message or plain object to encode
29367 * @param {$protobuf.Writer} [writer] Writer to encode to
29368 * @returns {$protobuf.Writer} Writer
29369 */
29370 WaitOperationRequest.encode = function encode(message, writer) {
29371 if (!writer)
29372 writer = $Writer.create();
29373 if (message.name != null && Object.hasOwnProperty.call(message, "name"))
29374 writer.uint32(/* id 1, wireType 2 =*/10).string(message.name);
29375 if (message.timeout != null && Object.hasOwnProperty.call(message, "timeout"))
29376 $root.google.protobuf.Duration.encode(message.timeout, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
29377 return writer;
29378 };
29379
29380 /**
29381 * Encodes the specified WaitOperationRequest message, length delimited. Does not implicitly {@link google.longrunning.WaitOperationRequest.verify|verify} messages.
29382 * @function encodeDelimited
29383 * @memberof google.longrunning.WaitOperationRequest
29384 * @static
29385 * @param {google.longrunning.IWaitOperationRequest} message WaitOperationRequest message or plain object to encode
29386 * @param {$protobuf.Writer} [writer] Writer to encode to
29387 * @returns {$protobuf.Writer} Writer
29388 */
29389 WaitOperationRequest.encodeDelimited = function encodeDelimited(message, writer) {
29390 return this.encode(message, writer).ldelim();
29391 };
29392
29393 /**
29394 * Decodes a WaitOperationRequest message from the specified reader or buffer.
29395 * @function decode
29396 * @memberof google.longrunning.WaitOperationRequest
29397 * @static
29398 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29399 * @param {number} [length] Message length if known beforehand
29400 * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest
29401 * @throws {Error} If the payload is not a reader or valid buffer
29402 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29403 */
29404 WaitOperationRequest.decode = function decode(reader, length) {
29405 if (!(reader instanceof $Reader))
29406 reader = $Reader.create(reader);
29407 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.WaitOperationRequest();
29408 while (reader.pos < end) {
29409 var tag = reader.uint32();
29410 switch (tag >>> 3) {
29411 case 1:
29412 message.name = reader.string();
29413 break;
29414 case 2:
29415 message.timeout = $root.google.protobuf.Duration.decode(reader, reader.uint32());
29416 break;
29417 default:
29418 reader.skipType(tag & 7);
29419 break;
29420 }
29421 }
29422 return message;
29423 };
29424
29425 /**
29426 * Decodes a WaitOperationRequest message from the specified reader or buffer, length delimited.
29427 * @function decodeDelimited
29428 * @memberof google.longrunning.WaitOperationRequest
29429 * @static
29430 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29431 * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest
29432 * @throws {Error} If the payload is not a reader or valid buffer
29433 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29434 */
29435 WaitOperationRequest.decodeDelimited = function decodeDelimited(reader) {
29436 if (!(reader instanceof $Reader))
29437 reader = new $Reader(reader);
29438 return this.decode(reader, reader.uint32());
29439 };
29440
29441 /**
29442 * Verifies a WaitOperationRequest message.
29443 * @function verify
29444 * @memberof google.longrunning.WaitOperationRequest
29445 * @static
29446 * @param {Object.<string,*>} message Plain object to verify
29447 * @returns {string|null} `null` if valid, otherwise the reason why it is not
29448 */
29449 WaitOperationRequest.verify = function verify(message) {
29450 if (typeof message !== "object" || message === null)
29451 return "object expected";
29452 if (message.name != null && message.hasOwnProperty("name"))
29453 if (!$util.isString(message.name))
29454 return "name: string expected";
29455 if (message.timeout != null && message.hasOwnProperty("timeout")) {
29456 var error = $root.google.protobuf.Duration.verify(message.timeout);
29457 if (error)
29458 return "timeout." + error;
29459 }
29460 return null;
29461 };
29462
29463 /**
29464 * Creates a WaitOperationRequest message from a plain object. Also converts values to their respective internal types.
29465 * @function fromObject
29466 * @memberof google.longrunning.WaitOperationRequest
29467 * @static
29468 * @param {Object.<string,*>} object Plain object
29469 * @returns {google.longrunning.WaitOperationRequest} WaitOperationRequest
29470 */
29471 WaitOperationRequest.fromObject = function fromObject(object) {
29472 if (object instanceof $root.google.longrunning.WaitOperationRequest)
29473 return object;
29474 var message = new $root.google.longrunning.WaitOperationRequest();
29475 if (object.name != null)
29476 message.name = String(object.name);
29477 if (object.timeout != null) {
29478 if (typeof object.timeout !== "object")
29479 throw TypeError(".google.longrunning.WaitOperationRequest.timeout: object expected");
29480 message.timeout = $root.google.protobuf.Duration.fromObject(object.timeout);
29481 }
29482 return message;
29483 };
29484
29485 /**
29486 * Creates a plain object from a WaitOperationRequest message. Also converts values to other types if specified.
29487 * @function toObject
29488 * @memberof google.longrunning.WaitOperationRequest
29489 * @static
29490 * @param {google.longrunning.WaitOperationRequest} message WaitOperationRequest
29491 * @param {$protobuf.IConversionOptions} [options] Conversion options
29492 * @returns {Object.<string,*>} Plain object
29493 */
29494 WaitOperationRequest.toObject = function toObject(message, options) {
29495 if (!options)
29496 options = {};
29497 var object = {};
29498 if (options.defaults) {
29499 object.name = "";
29500 object.timeout = null;
29501 }
29502 if (message.name != null && message.hasOwnProperty("name"))
29503 object.name = message.name;
29504 if (message.timeout != null && message.hasOwnProperty("timeout"))
29505 object.timeout = $root.google.protobuf.Duration.toObject(message.timeout, options);
29506 return object;
29507 };
29508
29509 /**
29510 * Converts this WaitOperationRequest to JSON.
29511 * @function toJSON
29512 * @memberof google.longrunning.WaitOperationRequest
29513 * @instance
29514 * @returns {Object.<string,*>} JSON object
29515 */
29516 WaitOperationRequest.prototype.toJSON = function toJSON() {
29517 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
29518 };
29519
29520 return WaitOperationRequest;
29521 })();
29522
29523 longrunning.OperationInfo = (function() {
29524
29525 /**
29526 * Properties of an OperationInfo.
29527 * @memberof google.longrunning
29528 * @interface IOperationInfo
29529 * @property {string|null} [responseType] OperationInfo responseType
29530 * @property {string|null} [metadataType] OperationInfo metadataType
29531 */
29532
29533 /**
29534 * Constructs a new OperationInfo.
29535 * @memberof google.longrunning
29536 * @classdesc Represents an OperationInfo.
29537 * @implements IOperationInfo
29538 * @constructor
29539 * @param {google.longrunning.IOperationInfo=} [properties] Properties to set
29540 */
29541 function OperationInfo(properties) {
29542 if (properties)
29543 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
29544 if (properties[keys[i]] != null)
29545 this[keys[i]] = properties[keys[i]];
29546 }
29547
29548 /**
29549 * OperationInfo responseType.
29550 * @member {string} responseType
29551 * @memberof google.longrunning.OperationInfo
29552 * @instance
29553 */
29554 OperationInfo.prototype.responseType = "";
29555
29556 /**
29557 * OperationInfo metadataType.
29558 * @member {string} metadataType
29559 * @memberof google.longrunning.OperationInfo
29560 * @instance
29561 */
29562 OperationInfo.prototype.metadataType = "";
29563
29564 /**
29565 * Creates a new OperationInfo instance using the specified properties.
29566 * @function create
29567 * @memberof google.longrunning.OperationInfo
29568 * @static
29569 * @param {google.longrunning.IOperationInfo=} [properties] Properties to set
29570 * @returns {google.longrunning.OperationInfo} OperationInfo instance
29571 */
29572 OperationInfo.create = function create(properties) {
29573 return new OperationInfo(properties);
29574 };
29575
29576 /**
29577 * Encodes the specified OperationInfo message. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages.
29578 * @function encode
29579 * @memberof google.longrunning.OperationInfo
29580 * @static
29581 * @param {google.longrunning.IOperationInfo} message OperationInfo message or plain object to encode
29582 * @param {$protobuf.Writer} [writer] Writer to encode to
29583 * @returns {$protobuf.Writer} Writer
29584 */
29585 OperationInfo.encode = function encode(message, writer) {
29586 if (!writer)
29587 writer = $Writer.create();
29588 if (message.responseType != null && Object.hasOwnProperty.call(message, "responseType"))
29589 writer.uint32(/* id 1, wireType 2 =*/10).string(message.responseType);
29590 if (message.metadataType != null && Object.hasOwnProperty.call(message, "metadataType"))
29591 writer.uint32(/* id 2, wireType 2 =*/18).string(message.metadataType);
29592 return writer;
29593 };
29594
29595 /**
29596 * Encodes the specified OperationInfo message, length delimited. Does not implicitly {@link google.longrunning.OperationInfo.verify|verify} messages.
29597 * @function encodeDelimited
29598 * @memberof google.longrunning.OperationInfo
29599 * @static
29600 * @param {google.longrunning.IOperationInfo} message OperationInfo message or plain object to encode
29601 * @param {$protobuf.Writer} [writer] Writer to encode to
29602 * @returns {$protobuf.Writer} Writer
29603 */
29604 OperationInfo.encodeDelimited = function encodeDelimited(message, writer) {
29605 return this.encode(message, writer).ldelim();
29606 };
29607
29608 /**
29609 * Decodes an OperationInfo message from the specified reader or buffer.
29610 * @function decode
29611 * @memberof google.longrunning.OperationInfo
29612 * @static
29613 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29614 * @param {number} [length] Message length if known beforehand
29615 * @returns {google.longrunning.OperationInfo} OperationInfo
29616 * @throws {Error} If the payload is not a reader or valid buffer
29617 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29618 */
29619 OperationInfo.decode = function decode(reader, length) {
29620 if (!(reader instanceof $Reader))
29621 reader = $Reader.create(reader);
29622 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.longrunning.OperationInfo();
29623 while (reader.pos < end) {
29624 var tag = reader.uint32();
29625 switch (tag >>> 3) {
29626 case 1:
29627 message.responseType = reader.string();
29628 break;
29629 case 2:
29630 message.metadataType = reader.string();
29631 break;
29632 default:
29633 reader.skipType(tag & 7);
29634 break;
29635 }
29636 }
29637 return message;
29638 };
29639
29640 /**
29641 * Decodes an OperationInfo message from the specified reader or buffer, length delimited.
29642 * @function decodeDelimited
29643 * @memberof google.longrunning.OperationInfo
29644 * @static
29645 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29646 * @returns {google.longrunning.OperationInfo} OperationInfo
29647 * @throws {Error} If the payload is not a reader or valid buffer
29648 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29649 */
29650 OperationInfo.decodeDelimited = function decodeDelimited(reader) {
29651 if (!(reader instanceof $Reader))
29652 reader = new $Reader(reader);
29653 return this.decode(reader, reader.uint32());
29654 };
29655
29656 /**
29657 * Verifies an OperationInfo message.
29658 * @function verify
29659 * @memberof google.longrunning.OperationInfo
29660 * @static
29661 * @param {Object.<string,*>} message Plain object to verify
29662 * @returns {string|null} `null` if valid, otherwise the reason why it is not
29663 */
29664 OperationInfo.verify = function verify(message) {
29665 if (typeof message !== "object" || message === null)
29666 return "object expected";
29667 if (message.responseType != null && message.hasOwnProperty("responseType"))
29668 if (!$util.isString(message.responseType))
29669 return "responseType: string expected";
29670 if (message.metadataType != null && message.hasOwnProperty("metadataType"))
29671 if (!$util.isString(message.metadataType))
29672 return "metadataType: string expected";
29673 return null;
29674 };
29675
29676 /**
29677 * Creates an OperationInfo message from a plain object. Also converts values to their respective internal types.
29678 * @function fromObject
29679 * @memberof google.longrunning.OperationInfo
29680 * @static
29681 * @param {Object.<string,*>} object Plain object
29682 * @returns {google.longrunning.OperationInfo} OperationInfo
29683 */
29684 OperationInfo.fromObject = function fromObject(object) {
29685 if (object instanceof $root.google.longrunning.OperationInfo)
29686 return object;
29687 var message = new $root.google.longrunning.OperationInfo();
29688 if (object.responseType != null)
29689 message.responseType = String(object.responseType);
29690 if (object.metadataType != null)
29691 message.metadataType = String(object.metadataType);
29692 return message;
29693 };
29694
29695 /**
29696 * Creates a plain object from an OperationInfo message. Also converts values to other types if specified.
29697 * @function toObject
29698 * @memberof google.longrunning.OperationInfo
29699 * @static
29700 * @param {google.longrunning.OperationInfo} message OperationInfo
29701 * @param {$protobuf.IConversionOptions} [options] Conversion options
29702 * @returns {Object.<string,*>} Plain object
29703 */
29704 OperationInfo.toObject = function toObject(message, options) {
29705 if (!options)
29706 options = {};
29707 var object = {};
29708 if (options.defaults) {
29709 object.responseType = "";
29710 object.metadataType = "";
29711 }
29712 if (message.responseType != null && message.hasOwnProperty("responseType"))
29713 object.responseType = message.responseType;
29714 if (message.metadataType != null && message.hasOwnProperty("metadataType"))
29715 object.metadataType = message.metadataType;
29716 return object;
29717 };
29718
29719 /**
29720 * Converts this OperationInfo to JSON.
29721 * @function toJSON
29722 * @memberof google.longrunning.OperationInfo
29723 * @instance
29724 * @returns {Object.<string,*>} JSON object
29725 */
29726 OperationInfo.prototype.toJSON = function toJSON() {
29727 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
29728 };
29729
29730 return OperationInfo;
29731 })();
29732
29733 return longrunning;
29734 })();
29735
29736 google.rpc = (function() {
29737
29738 /**
29739 * Namespace rpc.
29740 * @memberof google
29741 * @namespace
29742 */
29743 var rpc = {};
29744
29745 rpc.Status = (function() {
29746
29747 /**
29748 * Properties of a Status.
29749 * @memberof google.rpc
29750 * @interface IStatus
29751 * @property {number|null} [code] Status code
29752 * @property {string|null} [message] Status message
29753 * @property {Array.<google.protobuf.IAny>|null} [details] Status details
29754 */
29755
29756 /**
29757 * Constructs a new Status.
29758 * @memberof google.rpc
29759 * @classdesc Represents a Status.
29760 * @implements IStatus
29761 * @constructor
29762 * @param {google.rpc.IStatus=} [properties] Properties to set
29763 */
29764 function Status(properties) {
29765 this.details = [];
29766 if (properties)
29767 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
29768 if (properties[keys[i]] != null)
29769 this[keys[i]] = properties[keys[i]];
29770 }
29771
29772 /**
29773 * Status code.
29774 * @member {number} code
29775 * @memberof google.rpc.Status
29776 * @instance
29777 */
29778 Status.prototype.code = 0;
29779
29780 /**
29781 * Status message.
29782 * @member {string} message
29783 * @memberof google.rpc.Status
29784 * @instance
29785 */
29786 Status.prototype.message = "";
29787
29788 /**
29789 * Status details.
29790 * @member {Array.<google.protobuf.IAny>} details
29791 * @memberof google.rpc.Status
29792 * @instance
29793 */
29794 Status.prototype.details = $util.emptyArray;
29795
29796 /**
29797 * Creates a new Status instance using the specified properties.
29798 * @function create
29799 * @memberof google.rpc.Status
29800 * @static
29801 * @param {google.rpc.IStatus=} [properties] Properties to set
29802 * @returns {google.rpc.Status} Status instance
29803 */
29804 Status.create = function create(properties) {
29805 return new Status(properties);
29806 };
29807
29808 /**
29809 * Encodes the specified Status message. Does not implicitly {@link google.rpc.Status.verify|verify} messages.
29810 * @function encode
29811 * @memberof google.rpc.Status
29812 * @static
29813 * @param {google.rpc.IStatus} message Status message or plain object to encode
29814 * @param {$protobuf.Writer} [writer] Writer to encode to
29815 * @returns {$protobuf.Writer} Writer
29816 */
29817 Status.encode = function encode(message, writer) {
29818 if (!writer)
29819 writer = $Writer.create();
29820 if (message.code != null && Object.hasOwnProperty.call(message, "code"))
29821 writer.uint32(/* id 1, wireType 0 =*/8).int32(message.code);
29822 if (message.message != null && Object.hasOwnProperty.call(message, "message"))
29823 writer.uint32(/* id 2, wireType 2 =*/18).string(message.message);
29824 if (message.details != null && message.details.length)
29825 for (var i = 0; i < message.details.length; ++i)
29826 $root.google.protobuf.Any.encode(message.details[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim();
29827 return writer;
29828 };
29829
29830 /**
29831 * Encodes the specified Status message, length delimited. Does not implicitly {@link google.rpc.Status.verify|verify} messages.
29832 * @function encodeDelimited
29833 * @memberof google.rpc.Status
29834 * @static
29835 * @param {google.rpc.IStatus} message Status message or plain object to encode
29836 * @param {$protobuf.Writer} [writer] Writer to encode to
29837 * @returns {$protobuf.Writer} Writer
29838 */
29839 Status.encodeDelimited = function encodeDelimited(message, writer) {
29840 return this.encode(message, writer).ldelim();
29841 };
29842
29843 /**
29844 * Decodes a Status message from the specified reader or buffer.
29845 * @function decode
29846 * @memberof google.rpc.Status
29847 * @static
29848 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29849 * @param {number} [length] Message length if known beforehand
29850 * @returns {google.rpc.Status} Status
29851 * @throws {Error} If the payload is not a reader or valid buffer
29852 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29853 */
29854 Status.decode = function decode(reader, length) {
29855 if (!(reader instanceof $Reader))
29856 reader = $Reader.create(reader);
29857 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.rpc.Status();
29858 while (reader.pos < end) {
29859 var tag = reader.uint32();
29860 switch (tag >>> 3) {
29861 case 1:
29862 message.code = reader.int32();
29863 break;
29864 case 2:
29865 message.message = reader.string();
29866 break;
29867 case 3:
29868 if (!(message.details && message.details.length))
29869 message.details = [];
29870 message.details.push($root.google.protobuf.Any.decode(reader, reader.uint32()));
29871 break;
29872 default:
29873 reader.skipType(tag & 7);
29874 break;
29875 }
29876 }
29877 return message;
29878 };
29879
29880 /**
29881 * Decodes a Status message from the specified reader or buffer, length delimited.
29882 * @function decodeDelimited
29883 * @memberof google.rpc.Status
29884 * @static
29885 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
29886 * @returns {google.rpc.Status} Status
29887 * @throws {Error} If the payload is not a reader or valid buffer
29888 * @throws {$protobuf.util.ProtocolError} If required fields are missing
29889 */
29890 Status.decodeDelimited = function decodeDelimited(reader) {
29891 if (!(reader instanceof $Reader))
29892 reader = new $Reader(reader);
29893 return this.decode(reader, reader.uint32());
29894 };
29895
29896 /**
29897 * Verifies a Status message.
29898 * @function verify
29899 * @memberof google.rpc.Status
29900 * @static
29901 * @param {Object.<string,*>} message Plain object to verify
29902 * @returns {string|null} `null` if valid, otherwise the reason why it is not
29903 */
29904 Status.verify = function verify(message) {
29905 if (typeof message !== "object" || message === null)
29906 return "object expected";
29907 if (message.code != null && message.hasOwnProperty("code"))
29908 if (!$util.isInteger(message.code))
29909 return "code: integer expected";
29910 if (message.message != null && message.hasOwnProperty("message"))
29911 if (!$util.isString(message.message))
29912 return "message: string expected";
29913 if (message.details != null && message.hasOwnProperty("details")) {
29914 if (!Array.isArray(message.details))
29915 return "details: array expected";
29916 for (var i = 0; i < message.details.length; ++i) {
29917 var error = $root.google.protobuf.Any.verify(message.details[i]);
29918 if (error)
29919 return "details." + error;
29920 }
29921 }
29922 return null;
29923 };
29924
29925 /**
29926 * Creates a Status message from a plain object. Also converts values to their respective internal types.
29927 * @function fromObject
29928 * @memberof google.rpc.Status
29929 * @static
29930 * @param {Object.<string,*>} object Plain object
29931 * @returns {google.rpc.Status} Status
29932 */
29933 Status.fromObject = function fromObject(object) {
29934 if (object instanceof $root.google.rpc.Status)
29935 return object;
29936 var message = new $root.google.rpc.Status();
29937 if (object.code != null)
29938 message.code = object.code | 0;
29939 if (object.message != null)
29940 message.message = String(object.message);
29941 if (object.details) {
29942 if (!Array.isArray(object.details))
29943 throw TypeError(".google.rpc.Status.details: array expected");
29944 message.details = [];
29945 for (var i = 0; i < object.details.length; ++i) {
29946 if (typeof object.details[i] !== "object")
29947 throw TypeError(".google.rpc.Status.details: object expected");
29948 message.details[i] = $root.google.protobuf.Any.fromObject(object.details[i]);
29949 }
29950 }
29951 return message;
29952 };
29953
29954 /**
29955 * Creates a plain object from a Status message. Also converts values to other types if specified.
29956 * @function toObject
29957 * @memberof google.rpc.Status
29958 * @static
29959 * @param {google.rpc.Status} message Status
29960 * @param {$protobuf.IConversionOptions} [options] Conversion options
29961 * @returns {Object.<string,*>} Plain object
29962 */
29963 Status.toObject = function toObject(message, options) {
29964 if (!options)
29965 options = {};
29966 var object = {};
29967 if (options.arrays || options.defaults)
29968 object.details = [];
29969 if (options.defaults) {
29970 object.code = 0;
29971 object.message = "";
29972 }
29973 if (message.code != null && message.hasOwnProperty("code"))
29974 object.code = message.code;
29975 if (message.message != null && message.hasOwnProperty("message"))
29976 object.message = message.message;
29977 if (message.details && message.details.length) {
29978 object.details = [];
29979 for (var j = 0; j < message.details.length; ++j)
29980 object.details[j] = $root.google.protobuf.Any.toObject(message.details[j], options);
29981 }
29982 return object;
29983 };
29984
29985 /**
29986 * Converts this Status to JSON.
29987 * @function toJSON
29988 * @memberof google.rpc.Status
29989 * @instance
29990 * @returns {Object.<string,*>} JSON object
29991 */
29992 Status.prototype.toJSON = function toJSON() {
29993 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
29994 };
29995
29996 return Status;
29997 })();
29998
29999 return rpc;
30000 })();
30001
30002 google.type = (function() {
30003
30004 /**
30005 * Namespace type.
30006 * @memberof google
30007 * @namespace
30008 */
30009 var type = {};
30010
30011 type.LatLng = (function() {
30012
30013 /**
30014 * Properties of a LatLng.
30015 * @memberof google.type
30016 * @interface ILatLng
30017 * @property {number|null} [latitude] LatLng latitude
30018 * @property {number|null} [longitude] LatLng longitude
30019 */
30020
30021 /**
30022 * Constructs a new LatLng.
30023 * @memberof google.type
30024 * @classdesc Represents a LatLng.
30025 * @implements ILatLng
30026 * @constructor
30027 * @param {google.type.ILatLng=} [properties] Properties to set
30028 */
30029 function LatLng(properties) {
30030 if (properties)
30031 for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
30032 if (properties[keys[i]] != null)
30033 this[keys[i]] = properties[keys[i]];
30034 }
30035
30036 /**
30037 * LatLng latitude.
30038 * @member {number} latitude
30039 * @memberof google.type.LatLng
30040 * @instance
30041 */
30042 LatLng.prototype.latitude = 0;
30043
30044 /**
30045 * LatLng longitude.
30046 * @member {number} longitude
30047 * @memberof google.type.LatLng
30048 * @instance
30049 */
30050 LatLng.prototype.longitude = 0;
30051
30052 /**
30053 * Creates a new LatLng instance using the specified properties.
30054 * @function create
30055 * @memberof google.type.LatLng
30056 * @static
30057 * @param {google.type.ILatLng=} [properties] Properties to set
30058 * @returns {google.type.LatLng} LatLng instance
30059 */
30060 LatLng.create = function create(properties) {
30061 return new LatLng(properties);
30062 };
30063
30064 /**
30065 * Encodes the specified LatLng message. Does not implicitly {@link google.type.LatLng.verify|verify} messages.
30066 * @function encode
30067 * @memberof google.type.LatLng
30068 * @static
30069 * @param {google.type.ILatLng} message LatLng message or plain object to encode
30070 * @param {$protobuf.Writer} [writer] Writer to encode to
30071 * @returns {$protobuf.Writer} Writer
30072 */
30073 LatLng.encode = function encode(message, writer) {
30074 if (!writer)
30075 writer = $Writer.create();
30076 if (message.latitude != null && Object.hasOwnProperty.call(message, "latitude"))
30077 writer.uint32(/* id 1, wireType 1 =*/9).double(message.latitude);
30078 if (message.longitude != null && Object.hasOwnProperty.call(message, "longitude"))
30079 writer.uint32(/* id 2, wireType 1 =*/17).double(message.longitude);
30080 return writer;
30081 };
30082
30083 /**
30084 * Encodes the specified LatLng message, length delimited. Does not implicitly {@link google.type.LatLng.verify|verify} messages.
30085 * @function encodeDelimited
30086 * @memberof google.type.LatLng
30087 * @static
30088 * @param {google.type.ILatLng} message LatLng message or plain object to encode
30089 * @param {$protobuf.Writer} [writer] Writer to encode to
30090 * @returns {$protobuf.Writer} Writer
30091 */
30092 LatLng.encodeDelimited = function encodeDelimited(message, writer) {
30093 return this.encode(message, writer).ldelim();
30094 };
30095
30096 /**
30097 * Decodes a LatLng message from the specified reader or buffer.
30098 * @function decode
30099 * @memberof google.type.LatLng
30100 * @static
30101 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
30102 * @param {number} [length] Message length if known beforehand
30103 * @returns {google.type.LatLng} LatLng
30104 * @throws {Error} If the payload is not a reader or valid buffer
30105 * @throws {$protobuf.util.ProtocolError} If required fields are missing
30106 */
30107 LatLng.decode = function decode(reader, length) {
30108 if (!(reader instanceof $Reader))
30109 reader = $Reader.create(reader);
30110 var end = length === undefined ? reader.len : reader.pos + length, message = new $root.google.type.LatLng();
30111 while (reader.pos < end) {
30112 var tag = reader.uint32();
30113 switch (tag >>> 3) {
30114 case 1:
30115 message.latitude = reader.double();
30116 break;
30117 case 2:
30118 message.longitude = reader.double();
30119 break;
30120 default:
30121 reader.skipType(tag & 7);
30122 break;
30123 }
30124 }
30125 return message;
30126 };
30127
30128 /**
30129 * Decodes a LatLng message from the specified reader or buffer, length delimited.
30130 * @function decodeDelimited
30131 * @memberof google.type.LatLng
30132 * @static
30133 * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
30134 * @returns {google.type.LatLng} LatLng
30135 * @throws {Error} If the payload is not a reader or valid buffer
30136 * @throws {$protobuf.util.ProtocolError} If required fields are missing
30137 */
30138 LatLng.decodeDelimited = function decodeDelimited(reader) {
30139 if (!(reader instanceof $Reader))
30140 reader = new $Reader(reader);
30141 return this.decode(reader, reader.uint32());
30142 };
30143
30144 /**
30145 * Verifies a LatLng message.
30146 * @function verify
30147 * @memberof google.type.LatLng
30148 * @static
30149 * @param {Object.<string,*>} message Plain object to verify
30150 * @returns {string|null} `null` if valid, otherwise the reason why it is not
30151 */
30152 LatLng.verify = function verify(message) {
30153 if (typeof message !== "object" || message === null)
30154 return "object expected";
30155 if (message.latitude != null && message.hasOwnProperty("latitude"))
30156 if (typeof message.latitude !== "number")
30157 return "latitude: number expected";
30158 if (message.longitude != null && message.hasOwnProperty("longitude"))
30159 if (typeof message.longitude !== "number")
30160 return "longitude: number expected";
30161 return null;
30162 };
30163
30164 /**
30165 * Creates a LatLng message from a plain object. Also converts values to their respective internal types.
30166 * @function fromObject
30167 * @memberof google.type.LatLng
30168 * @static
30169 * @param {Object.<string,*>} object Plain object
30170 * @returns {google.type.LatLng} LatLng
30171 */
30172 LatLng.fromObject = function fromObject(object) {
30173 if (object instanceof $root.google.type.LatLng)
30174 return object;
30175 var message = new $root.google.type.LatLng();
30176 if (object.latitude != null)
30177 message.latitude = Number(object.latitude);
30178 if (object.longitude != null)
30179 message.longitude = Number(object.longitude);
30180 return message;
30181 };
30182
30183 /**
30184 * Creates a plain object from a LatLng message. Also converts values to other types if specified.
30185 * @function toObject
30186 * @memberof google.type.LatLng
30187 * @static
30188 * @param {google.type.LatLng} message LatLng
30189 * @param {$protobuf.IConversionOptions} [options] Conversion options
30190 * @returns {Object.<string,*>} Plain object
30191 */
30192 LatLng.toObject = function toObject(message, options) {
30193 if (!options)
30194 options = {};
30195 var object = {};
30196 if (options.defaults) {
30197 object.latitude = 0;
30198 object.longitude = 0;
30199 }
30200 if (message.latitude != null && message.hasOwnProperty("latitude"))
30201 object.latitude = options.json && !isFinite(message.latitude) ? String(message.latitude) : message.latitude;
30202 if (message.longitude != null && message.hasOwnProperty("longitude"))
30203 object.longitude = options.json && !isFinite(message.longitude) ? String(message.longitude) : message.longitude;
30204 return object;
30205 };
30206
30207 /**
30208 * Converts this LatLng to JSON.
30209 * @function toJSON
30210 * @memberof google.type.LatLng
30211 * @instance
30212 * @returns {Object.<string,*>} JSON object
30213 */
30214 LatLng.prototype.toJSON = function toJSON() {
30215 return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
30216 };
30217
30218 return LatLng;
30219 })();
30220
30221 return type;
30222 })();
30223
30224 return google;
30225 })();
30226
30227 return $root;
30228});