@miradorlabs/web-grpc 2.0.0 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,4 +1,4 @@
1
- // source: proto/gateway/web/v1/telemetry_gateway.proto
1
+ // source: proto/gateway/web/v1/metric_gateway.proto
2
2
  /**
3
3
  * @fileoverview
4
4
  * @enhanceable
@@ -25,13 +25,13 @@ var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/time
25
25
  goog.object.extend(proto, google_protobuf_timestamp_pb);
26
26
  var proto_gateway_web_v1_trace_gateway_pb = require('../../../../proto/gateway/web/v1/trace_gateway_pb.js');
27
27
  goog.object.extend(proto, proto_gateway_web_v1_trace_gateway_pb);
28
+ goog.exportSymbol('proto.gateway.web.v1.AbsoluteTimeRange', null, global);
29
+ goog.exportSymbol('proto.gateway.web.v1.AttributeFilter', null, global);
30
+ goog.exportSymbol('proto.gateway.web.v1.AttributeFilterOp', null, global);
28
31
  goog.exportSymbol('proto.gateway.web.v1.GaugeAggregation', null, global);
29
- goog.exportSymbol('proto.gateway.web.v1.GaugeQueryRequest', null, global);
32
+ goog.exportSymbol('proto.gateway.web.v1.GaugeQuerySpec', null, global);
30
33
  goog.exportSymbol('proto.gateway.web.v1.HistogramAggregation', null, global);
31
- goog.exportSymbol('proto.gateway.web.v1.HistogramQueryRequest', null, global);
32
- goog.exportSymbol('proto.gateway.web.v1.MetricAnalyticsEnvelope', null, global);
33
- goog.exportSymbol('proto.gateway.web.v1.MetricAnalyticsEnvelope.EventCase', null, global);
34
- goog.exportSymbol('proto.gateway.web.v1.MetricAnalyticsSnapshot', null, global);
34
+ goog.exportSymbol('proto.gateway.web.v1.HistogramQuerySpec', null, global);
35
35
  goog.exportSymbol('proto.gateway.web.v1.MetricAttribute', null, global);
36
36
  goog.exportSymbol('proto.gateway.web.v1.MetricAttributeEnvelope', null, global);
37
37
  goog.exportSymbol('proto.gateway.web.v1.MetricAttributeEnvelope.EventCase', null, global);
@@ -42,12 +42,20 @@ goog.exportSymbol('proto.gateway.web.v1.MetricCatalogEnvelope.EventCase', null,
42
42
  goog.exportSymbol('proto.gateway.web.v1.MetricCatalogSnapshot', null, global);
43
43
  goog.exportSymbol('proto.gateway.web.v1.MetricInfo', null, global);
44
44
  goog.exportSymbol('proto.gateway.web.v1.MetricKind', null, global);
45
+ goog.exportSymbol('proto.gateway.web.v1.MetricQuery', null, global);
46
+ goog.exportSymbol('proto.gateway.web.v1.MetricQuery.KindCase', null, global);
45
47
  goog.exportSymbol('proto.gateway.web.v1.MetricSeries', null, global);
46
- goog.exportSymbol('proto.gateway.web.v1.MetricSeriesBucketUpdate', null, global);
48
+ goog.exportSymbol('proto.gateway.web.v1.QueryDataEnvelope', null, global);
49
+ goog.exportSymbol('proto.gateway.web.v1.QueryDataEnvelope.EventCase', null, global);
50
+ goog.exportSymbol('proto.gateway.web.v1.QuerySeriesUpdate', null, global);
51
+ goog.exportSymbol('proto.gateway.web.v1.QuerySnapshot', null, global);
47
52
  goog.exportSymbol('proto.gateway.web.v1.StreamMetricAttributesRequest', null, global);
48
53
  goog.exportSymbol('proto.gateway.web.v1.StreamMetricsRequest', null, global);
54
+ goog.exportSymbol('proto.gateway.web.v1.StreamQueryRequest', null, global);
49
55
  goog.exportSymbol('proto.gateway.web.v1.SumAggregation', null, global);
50
- goog.exportSymbol('proto.gateway.web.v1.SumQueryRequest', null, global);
56
+ goog.exportSymbol('proto.gateway.web.v1.SumQuerySpec', null, global);
57
+ goog.exportSymbol('proto.gateway.web.v1.TimeRange', null, global);
58
+ goog.exportSymbol('proto.gateway.web.v1.TimeRange.RangeCase', null, global);
51
59
  /**
52
60
  * Generated by JsPbCodeGenerator.
53
61
  * @param {Array=} opt_data Optional initial data array, typically from a
@@ -226,16 +234,16 @@ if (goog.DEBUG && !COMPILED) {
226
234
  * @extends {jspb.Message}
227
235
  * @constructor
228
236
  */
229
- proto.gateway.web.v1.GaugeQueryRequest = function(opt_data) {
237
+ proto.gateway.web.v1.StreamQueryRequest = function(opt_data) {
230
238
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
231
239
  };
232
- goog.inherits(proto.gateway.web.v1.GaugeQueryRequest, jspb.Message);
240
+ goog.inherits(proto.gateway.web.v1.StreamQueryRequest, jspb.Message);
233
241
  if (goog.DEBUG && !COMPILED) {
234
242
  /**
235
243
  * @public
236
244
  * @override
237
245
  */
238
- proto.gateway.web.v1.GaugeQueryRequest.displayName = 'proto.gateway.web.v1.GaugeQueryRequest';
246
+ proto.gateway.web.v1.StreamQueryRequest.displayName = 'proto.gateway.web.v1.StreamQueryRequest';
239
247
  }
240
248
  /**
241
249
  * Generated by JsPbCodeGenerator.
@@ -247,16 +255,121 @@ if (goog.DEBUG && !COMPILED) {
247
255
  * @extends {jspb.Message}
248
256
  * @constructor
249
257
  */
250
- proto.gateway.web.v1.SumQueryRequest = function(opt_data) {
258
+ proto.gateway.web.v1.MetricQuery = function(opt_data) {
259
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.MetricQuery.repeatedFields_, proto.gateway.web.v1.MetricQuery.oneofGroups_);
260
+ };
261
+ goog.inherits(proto.gateway.web.v1.MetricQuery, jspb.Message);
262
+ if (goog.DEBUG && !COMPILED) {
263
+ /**
264
+ * @public
265
+ * @override
266
+ */
267
+ proto.gateway.web.v1.MetricQuery.displayName = 'proto.gateway.web.v1.MetricQuery';
268
+ }
269
+ /**
270
+ * Generated by JsPbCodeGenerator.
271
+ * @param {Array=} opt_data Optional initial data array, typically from a
272
+ * server response, or constructed directly in Javascript. The array is used
273
+ * in place and becomes part of the constructed object. It is not cloned.
274
+ * If no data is provided, the constructed object will be empty, but still
275
+ * valid.
276
+ * @extends {jspb.Message}
277
+ * @constructor
278
+ */
279
+ proto.gateway.web.v1.GaugeQuerySpec = function(opt_data) {
280
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
281
+ };
282
+ goog.inherits(proto.gateway.web.v1.GaugeQuerySpec, jspb.Message);
283
+ if (goog.DEBUG && !COMPILED) {
284
+ /**
285
+ * @public
286
+ * @override
287
+ */
288
+ proto.gateway.web.v1.GaugeQuerySpec.displayName = 'proto.gateway.web.v1.GaugeQuerySpec';
289
+ }
290
+ /**
291
+ * Generated by JsPbCodeGenerator.
292
+ * @param {Array=} opt_data Optional initial data array, typically from a
293
+ * server response, or constructed directly in Javascript. The array is used
294
+ * in place and becomes part of the constructed object. It is not cloned.
295
+ * If no data is provided, the constructed object will be empty, but still
296
+ * valid.
297
+ * @extends {jspb.Message}
298
+ * @constructor
299
+ */
300
+ proto.gateway.web.v1.SumQuerySpec = function(opt_data) {
301
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
302
+ };
303
+ goog.inherits(proto.gateway.web.v1.SumQuerySpec, jspb.Message);
304
+ if (goog.DEBUG && !COMPILED) {
305
+ /**
306
+ * @public
307
+ * @override
308
+ */
309
+ proto.gateway.web.v1.SumQuerySpec.displayName = 'proto.gateway.web.v1.SumQuerySpec';
310
+ }
311
+ /**
312
+ * Generated by JsPbCodeGenerator.
313
+ * @param {Array=} opt_data Optional initial data array, typically from a
314
+ * server response, or constructed directly in Javascript. The array is used
315
+ * in place and becomes part of the constructed object. It is not cloned.
316
+ * If no data is provided, the constructed object will be empty, but still
317
+ * valid.
318
+ * @extends {jspb.Message}
319
+ * @constructor
320
+ */
321
+ proto.gateway.web.v1.HistogramQuerySpec = function(opt_data) {
251
322
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
252
323
  };
253
- goog.inherits(proto.gateway.web.v1.SumQueryRequest, jspb.Message);
324
+ goog.inherits(proto.gateway.web.v1.HistogramQuerySpec, jspb.Message);
325
+ if (goog.DEBUG && !COMPILED) {
326
+ /**
327
+ * @public
328
+ * @override
329
+ */
330
+ proto.gateway.web.v1.HistogramQuerySpec.displayName = 'proto.gateway.web.v1.HistogramQuerySpec';
331
+ }
332
+ /**
333
+ * Generated by JsPbCodeGenerator.
334
+ * @param {Array=} opt_data Optional initial data array, typically from a
335
+ * server response, or constructed directly in Javascript. The array is used
336
+ * in place and becomes part of the constructed object. It is not cloned.
337
+ * If no data is provided, the constructed object will be empty, but still
338
+ * valid.
339
+ * @extends {jspb.Message}
340
+ * @constructor
341
+ */
342
+ proto.gateway.web.v1.AttributeFilter = function(opt_data) {
343
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.AttributeFilter.repeatedFields_, null);
344
+ };
345
+ goog.inherits(proto.gateway.web.v1.AttributeFilter, jspb.Message);
346
+ if (goog.DEBUG && !COMPILED) {
347
+ /**
348
+ * @public
349
+ * @override
350
+ */
351
+ proto.gateway.web.v1.AttributeFilter.displayName = 'proto.gateway.web.v1.AttributeFilter';
352
+ }
353
+ /**
354
+ * Generated by JsPbCodeGenerator.
355
+ * @param {Array=} opt_data Optional initial data array, typically from a
356
+ * server response, or constructed directly in Javascript. The array is used
357
+ * in place and becomes part of the constructed object. It is not cloned.
358
+ * If no data is provided, the constructed object will be empty, but still
359
+ * valid.
360
+ * @extends {jspb.Message}
361
+ * @constructor
362
+ */
363
+ proto.gateway.web.v1.TimeRange = function(opt_data) {
364
+ jspb.Message.initialize(this, opt_data, 0, -1, null, proto.gateway.web.v1.TimeRange.oneofGroups_);
365
+ };
366
+ goog.inherits(proto.gateway.web.v1.TimeRange, jspb.Message);
254
367
  if (goog.DEBUG && !COMPILED) {
255
368
  /**
256
369
  * @public
257
370
  * @override
258
371
  */
259
- proto.gateway.web.v1.SumQueryRequest.displayName = 'proto.gateway.web.v1.SumQueryRequest';
372
+ proto.gateway.web.v1.TimeRange.displayName = 'proto.gateway.web.v1.TimeRange';
260
373
  }
261
374
  /**
262
375
  * Generated by JsPbCodeGenerator.
@@ -268,16 +381,16 @@ if (goog.DEBUG && !COMPILED) {
268
381
  * @extends {jspb.Message}
269
382
  * @constructor
270
383
  */
271
- proto.gateway.web.v1.HistogramQueryRequest = function(opt_data) {
384
+ proto.gateway.web.v1.AbsoluteTimeRange = function(opt_data) {
272
385
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
273
386
  };
274
- goog.inherits(proto.gateway.web.v1.HistogramQueryRequest, jspb.Message);
387
+ goog.inherits(proto.gateway.web.v1.AbsoluteTimeRange, jspb.Message);
275
388
  if (goog.DEBUG && !COMPILED) {
276
389
  /**
277
390
  * @public
278
391
  * @override
279
392
  */
280
- proto.gateway.web.v1.HistogramQueryRequest.displayName = 'proto.gateway.web.v1.HistogramQueryRequest';
393
+ proto.gateway.web.v1.AbsoluteTimeRange.displayName = 'proto.gateway.web.v1.AbsoluteTimeRange';
281
394
  }
282
395
  /**
283
396
  * Generated by JsPbCodeGenerator.
@@ -289,16 +402,16 @@ if (goog.DEBUG && !COMPILED) {
289
402
  * @extends {jspb.Message}
290
403
  * @constructor
291
404
  */
292
- proto.gateway.web.v1.MetricAnalyticsEnvelope = function(opt_data) {
293
- jspb.Message.initialize(this, opt_data, 0, -1, null, proto.gateway.web.v1.MetricAnalyticsEnvelope.oneofGroups_);
405
+ proto.gateway.web.v1.QueryDataEnvelope = function(opt_data) {
406
+ jspb.Message.initialize(this, opt_data, 0, -1, null, proto.gateway.web.v1.QueryDataEnvelope.oneofGroups_);
294
407
  };
295
- goog.inherits(proto.gateway.web.v1.MetricAnalyticsEnvelope, jspb.Message);
408
+ goog.inherits(proto.gateway.web.v1.QueryDataEnvelope, jspb.Message);
296
409
  if (goog.DEBUG && !COMPILED) {
297
410
  /**
298
411
  * @public
299
412
  * @override
300
413
  */
301
- proto.gateway.web.v1.MetricAnalyticsEnvelope.displayName = 'proto.gateway.web.v1.MetricAnalyticsEnvelope';
414
+ proto.gateway.web.v1.QueryDataEnvelope.displayName = 'proto.gateway.web.v1.QueryDataEnvelope';
302
415
  }
303
416
  /**
304
417
  * Generated by JsPbCodeGenerator.
@@ -310,16 +423,16 @@ if (goog.DEBUG && !COMPILED) {
310
423
  * @extends {jspb.Message}
311
424
  * @constructor
312
425
  */
313
- proto.gateway.web.v1.MetricAnalyticsSnapshot = function(opt_data) {
314
- jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.MetricAnalyticsSnapshot.repeatedFields_, null);
426
+ proto.gateway.web.v1.QuerySnapshot = function(opt_data) {
427
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.QuerySnapshot.repeatedFields_, null);
315
428
  };
316
- goog.inherits(proto.gateway.web.v1.MetricAnalyticsSnapshot, jspb.Message);
429
+ goog.inherits(proto.gateway.web.v1.QuerySnapshot, jspb.Message);
317
430
  if (goog.DEBUG && !COMPILED) {
318
431
  /**
319
432
  * @public
320
433
  * @override
321
434
  */
322
- proto.gateway.web.v1.MetricAnalyticsSnapshot.displayName = 'proto.gateway.web.v1.MetricAnalyticsSnapshot';
435
+ proto.gateway.web.v1.QuerySnapshot.displayName = 'proto.gateway.web.v1.QuerySnapshot';
323
436
  }
324
437
  /**
325
438
  * Generated by JsPbCodeGenerator.
@@ -373,16 +486,16 @@ if (goog.DEBUG && !COMPILED) {
373
486
  * @extends {jspb.Message}
374
487
  * @constructor
375
488
  */
376
- proto.gateway.web.v1.MetricSeriesBucketUpdate = function(opt_data) {
489
+ proto.gateway.web.v1.QuerySeriesUpdate = function(opt_data) {
377
490
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
378
491
  };
379
- goog.inherits(proto.gateway.web.v1.MetricSeriesBucketUpdate, jspb.Message);
492
+ goog.inherits(proto.gateway.web.v1.QuerySeriesUpdate, jspb.Message);
380
493
  if (goog.DEBUG && !COMPILED) {
381
494
  /**
382
495
  * @public
383
496
  * @override
384
497
  */
385
- proto.gateway.web.v1.MetricSeriesBucketUpdate.displayName = 'proto.gateway.web.v1.MetricSeriesBucketUpdate';
498
+ proto.gateway.web.v1.QuerySeriesUpdate.displayName = 'proto.gateway.web.v1.QuerySeriesUpdate';
386
499
  }
387
500
 
388
501
 
@@ -1902,8 +2015,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
1902
2015
  * http://goto/soy-param-migration
1903
2016
  * @return {!Object}
1904
2017
  */
1905
- proto.gateway.web.v1.GaugeQueryRequest.prototype.toObject = function(opt_includeInstance) {
1906
- return proto.gateway.web.v1.GaugeQueryRequest.toObject(opt_includeInstance, this);
2018
+ proto.gateway.web.v1.StreamQueryRequest.prototype.toObject = function(opt_includeInstance) {
2019
+ return proto.gateway.web.v1.StreamQueryRequest.toObject(opt_includeInstance, this);
1907
2020
  };
1908
2021
 
1909
2022
 
@@ -1912,18 +2025,17 @@ proto.gateway.web.v1.GaugeQueryRequest.prototype.toObject = function(opt_include
1912
2025
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
1913
2026
  * the JSPB instance for transitional soy proto support:
1914
2027
  * http://goto/soy-param-migration
1915
- * @param {!proto.gateway.web.v1.GaugeQueryRequest} msg The msg instance to transform.
2028
+ * @param {!proto.gateway.web.v1.StreamQueryRequest} msg The msg instance to transform.
1916
2029
  * @return {!Object}
1917
2030
  * @suppress {unusedLocalVariables} f is only used for nested messages
1918
2031
  */
1919
- proto.gateway.web.v1.GaugeQueryRequest.toObject = function(includeInstance, msg) {
2032
+ proto.gateway.web.v1.StreamQueryRequest.toObject = function(includeInstance, msg) {
1920
2033
  var f, obj = {
1921
2034
  organizationId: jspb.Message.getFieldWithDefault(msg, 1, ""),
1922
2035
  projectId: jspb.Message.getFieldWithDefault(msg, 2, ""),
1923
- metricName: jspb.Message.getFieldWithDefault(msg, 3, ""),
1924
- aggregation: jspb.Message.getFieldWithDefault(msg, 4, 0),
1925
- timeWindow: jspb.Message.getFieldWithDefault(msg, 5, 0),
1926
- timeInterval: jspb.Message.getFieldWithDefault(msg, 6, 0)
2036
+ query: (f = msg.getQuery()) && proto.gateway.web.v1.MetricQuery.toObject(includeInstance, f),
2037
+ timeRange: (f = msg.getTimeRange()) && proto.gateway.web.v1.TimeRange.toObject(includeInstance, f),
2038
+ timeInterval: jspb.Message.getFieldWithDefault(msg, 5, 0)
1927
2039
  };
1928
2040
 
1929
2041
  if (includeInstance) {
@@ -1937,23 +2049,23 @@ timeInterval: jspb.Message.getFieldWithDefault(msg, 6, 0)
1937
2049
  /**
1938
2050
  * Deserializes binary data (in protobuf wire format).
1939
2051
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
1940
- * @return {!proto.gateway.web.v1.GaugeQueryRequest}
2052
+ * @return {!proto.gateway.web.v1.StreamQueryRequest}
1941
2053
  */
1942
- proto.gateway.web.v1.GaugeQueryRequest.deserializeBinary = function(bytes) {
2054
+ proto.gateway.web.v1.StreamQueryRequest.deserializeBinary = function(bytes) {
1943
2055
  var reader = new jspb.BinaryReader(bytes);
1944
- var msg = new proto.gateway.web.v1.GaugeQueryRequest;
1945
- return proto.gateway.web.v1.GaugeQueryRequest.deserializeBinaryFromReader(msg, reader);
2056
+ var msg = new proto.gateway.web.v1.StreamQueryRequest;
2057
+ return proto.gateway.web.v1.StreamQueryRequest.deserializeBinaryFromReader(msg, reader);
1946
2058
  };
1947
2059
 
1948
2060
 
1949
2061
  /**
1950
2062
  * Deserializes binary data (in protobuf wire format) from the
1951
2063
  * given reader into the given message object.
1952
- * @param {!proto.gateway.web.v1.GaugeQueryRequest} msg The message object to deserialize into.
2064
+ * @param {!proto.gateway.web.v1.StreamQueryRequest} msg The message object to deserialize into.
1953
2065
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
1954
- * @return {!proto.gateway.web.v1.GaugeQueryRequest}
2066
+ * @return {!proto.gateway.web.v1.StreamQueryRequest}
1955
2067
  */
1956
- proto.gateway.web.v1.GaugeQueryRequest.deserializeBinaryFromReader = function(msg, reader) {
2068
+ proto.gateway.web.v1.StreamQueryRequest.deserializeBinaryFromReader = function(msg, reader) {
1957
2069
  while (reader.nextField()) {
1958
2070
  if (reader.isEndGroup()) {
1959
2071
  break;
@@ -1969,18 +2081,16 @@ proto.gateway.web.v1.GaugeQueryRequest.deserializeBinaryFromReader = function(ms
1969
2081
  msg.setProjectId(value);
1970
2082
  break;
1971
2083
  case 3:
1972
- var value = /** @type {string} */ (reader.readString());
1973
- msg.setMetricName(value);
2084
+ var value = new proto.gateway.web.v1.MetricQuery;
2085
+ reader.readMessage(value,proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader);
2086
+ msg.setQuery(value);
1974
2087
  break;
1975
2088
  case 4:
1976
- var value = /** @type {!proto.gateway.web.v1.GaugeAggregation} */ (reader.readEnum());
1977
- msg.setAggregation(value);
2089
+ var value = new proto.gateway.web.v1.TimeRange;
2090
+ reader.readMessage(value,proto.gateway.web.v1.TimeRange.deserializeBinaryFromReader);
2091
+ msg.setTimeRange(value);
1978
2092
  break;
1979
2093
  case 5:
1980
- var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (reader.readEnum());
1981
- msg.setTimeWindow(value);
1982
- break;
1983
- case 6:
1984
2094
  var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (reader.readEnum());
1985
2095
  msg.setTimeInterval(value);
1986
2096
  break;
@@ -1997,9 +2107,9 @@ proto.gateway.web.v1.GaugeQueryRequest.deserializeBinaryFromReader = function(ms
1997
2107
  * Serializes the message to binary data (in protobuf wire format).
1998
2108
  * @return {!Uint8Array}
1999
2109
  */
2000
- proto.gateway.web.v1.GaugeQueryRequest.prototype.serializeBinary = function() {
2110
+ proto.gateway.web.v1.StreamQueryRequest.prototype.serializeBinary = function() {
2001
2111
  var writer = new jspb.BinaryWriter();
2002
- proto.gateway.web.v1.GaugeQueryRequest.serializeBinaryToWriter(this, writer);
2112
+ proto.gateway.web.v1.StreamQueryRequest.serializeBinaryToWriter(this, writer);
2003
2113
  return writer.getResultBuffer();
2004
2114
  };
2005
2115
 
@@ -2007,11 +2117,11 @@ proto.gateway.web.v1.GaugeQueryRequest.prototype.serializeBinary = function() {
2007
2117
  /**
2008
2118
  * Serializes the given message to binary data (in protobuf wire
2009
2119
  * format), writing to the given BinaryWriter.
2010
- * @param {!proto.gateway.web.v1.GaugeQueryRequest} message
2120
+ * @param {!proto.gateway.web.v1.StreamQueryRequest} message
2011
2121
  * @param {!jspb.BinaryWriter} writer
2012
2122
  * @suppress {unusedLocalVariables} f is only used for nested messages
2013
2123
  */
2014
- proto.gateway.web.v1.GaugeQueryRequest.serializeBinaryToWriter = function(message, writer) {
2124
+ proto.gateway.web.v1.StreamQueryRequest.serializeBinaryToWriter = function(message, writer) {
2015
2125
  var f = undefined;
2016
2126
  f = message.getOrganizationId();
2017
2127
  if (f.length > 0) {
@@ -2027,31 +2137,26 @@ proto.gateway.web.v1.GaugeQueryRequest.serializeBinaryToWriter = function(messag
2027
2137
  f
2028
2138
  );
2029
2139
  }
2030
- f = message.getMetricName();
2031
- if (f.length > 0) {
2032
- writer.writeString(
2140
+ f = message.getQuery();
2141
+ if (f != null) {
2142
+ writer.writeMessage(
2033
2143
  3,
2034
- f
2144
+ f,
2145
+ proto.gateway.web.v1.MetricQuery.serializeBinaryToWriter
2035
2146
  );
2036
2147
  }
2037
- f = message.getAggregation();
2038
- if (f !== 0.0) {
2039
- writer.writeEnum(
2148
+ f = message.getTimeRange();
2149
+ if (f != null) {
2150
+ writer.writeMessage(
2040
2151
  4,
2041
- f
2042
- );
2043
- }
2044
- f = message.getTimeWindow();
2045
- if (f !== 0.0) {
2046
- writer.writeEnum(
2047
- 5,
2048
- f
2152
+ f,
2153
+ proto.gateway.web.v1.TimeRange.serializeBinaryToWriter
2049
2154
  );
2050
2155
  }
2051
2156
  f = message.getTimeInterval();
2052
2157
  if (f !== 0.0) {
2053
2158
  writer.writeEnum(
2054
- 6,
2159
+ 5,
2055
2160
  f
2056
2161
  );
2057
2162
  }
@@ -2062,16 +2167,16 @@ proto.gateway.web.v1.GaugeQueryRequest.serializeBinaryToWriter = function(messag
2062
2167
  * optional string organization_id = 1;
2063
2168
  * @return {string}
2064
2169
  */
2065
- proto.gateway.web.v1.GaugeQueryRequest.prototype.getOrganizationId = function() {
2170
+ proto.gateway.web.v1.StreamQueryRequest.prototype.getOrganizationId = function() {
2066
2171
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
2067
2172
  };
2068
2173
 
2069
2174
 
2070
2175
  /**
2071
2176
  * @param {string} value
2072
- * @return {!proto.gateway.web.v1.GaugeQueryRequest} returns this
2177
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2073
2178
  */
2074
- proto.gateway.web.v1.GaugeQueryRequest.prototype.setOrganizationId = function(value) {
2179
+ proto.gateway.web.v1.StreamQueryRequest.prototype.setOrganizationId = function(value) {
2075
2180
  return jspb.Message.setProto3StringField(this, 1, value);
2076
2181
  };
2077
2182
 
@@ -2080,93 +2185,147 @@ proto.gateway.web.v1.GaugeQueryRequest.prototype.setOrganizationId = function(va
2080
2185
  * optional string project_id = 2;
2081
2186
  * @return {string}
2082
2187
  */
2083
- proto.gateway.web.v1.GaugeQueryRequest.prototype.getProjectId = function() {
2188
+ proto.gateway.web.v1.StreamQueryRequest.prototype.getProjectId = function() {
2084
2189
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
2085
2190
  };
2086
2191
 
2087
2192
 
2088
2193
  /**
2089
2194
  * @param {string} value
2090
- * @return {!proto.gateway.web.v1.GaugeQueryRequest} returns this
2195
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2091
2196
  */
2092
- proto.gateway.web.v1.GaugeQueryRequest.prototype.setProjectId = function(value) {
2197
+ proto.gateway.web.v1.StreamQueryRequest.prototype.setProjectId = function(value) {
2093
2198
  return jspb.Message.setProto3StringField(this, 2, value);
2094
2199
  };
2095
2200
 
2096
2201
 
2097
2202
  /**
2098
- * optional string metric_name = 3;
2099
- * @return {string}
2203
+ * optional MetricQuery query = 3;
2204
+ * @return {?proto.gateway.web.v1.MetricQuery}
2100
2205
  */
2101
- proto.gateway.web.v1.GaugeQueryRequest.prototype.getMetricName = function() {
2102
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
2206
+ proto.gateway.web.v1.StreamQueryRequest.prototype.getQuery = function() {
2207
+ return /** @type{?proto.gateway.web.v1.MetricQuery} */ (
2208
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricQuery, 3));
2103
2209
  };
2104
2210
 
2105
2211
 
2106
2212
  /**
2107
- * @param {string} value
2108
- * @return {!proto.gateway.web.v1.GaugeQueryRequest} returns this
2213
+ * @param {?proto.gateway.web.v1.MetricQuery|undefined} value
2214
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2215
+ */
2216
+ proto.gateway.web.v1.StreamQueryRequest.prototype.setQuery = function(value) {
2217
+ return jspb.Message.setWrapperField(this, 3, value);
2218
+ };
2219
+
2220
+
2221
+ /**
2222
+ * Clears the message field making it undefined.
2223
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2109
2224
  */
2110
- proto.gateway.web.v1.GaugeQueryRequest.prototype.setMetricName = function(value) {
2111
- return jspb.Message.setProto3StringField(this, 3, value);
2225
+ proto.gateway.web.v1.StreamQueryRequest.prototype.clearQuery = function() {
2226
+ return this.setQuery(undefined);
2112
2227
  };
2113
2228
 
2114
2229
 
2115
2230
  /**
2116
- * optional GaugeAggregation aggregation = 4;
2117
- * @return {!proto.gateway.web.v1.GaugeAggregation}
2231
+ * Returns whether this field is set.
2232
+ * @return {boolean}
2118
2233
  */
2119
- proto.gateway.web.v1.GaugeQueryRequest.prototype.getAggregation = function() {
2120
- return /** @type {!proto.gateway.web.v1.GaugeAggregation} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
2234
+ proto.gateway.web.v1.StreamQueryRequest.prototype.hasQuery = function() {
2235
+ return jspb.Message.getField(this, 3) != null;
2121
2236
  };
2122
2237
 
2123
2238
 
2124
2239
  /**
2125
- * @param {!proto.gateway.web.v1.GaugeAggregation} value
2126
- * @return {!proto.gateway.web.v1.GaugeQueryRequest} returns this
2240
+ * optional TimeRange time_range = 4;
2241
+ * @return {?proto.gateway.web.v1.TimeRange}
2127
2242
  */
2128
- proto.gateway.web.v1.GaugeQueryRequest.prototype.setAggregation = function(value) {
2129
- return jspb.Message.setProto3EnumField(this, 4, value);
2243
+ proto.gateway.web.v1.StreamQueryRequest.prototype.getTimeRange = function() {
2244
+ return /** @type{?proto.gateway.web.v1.TimeRange} */ (
2245
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.TimeRange, 4));
2130
2246
  };
2131
2247
 
2132
2248
 
2133
2249
  /**
2134
- * optional AnalyticsTimeWindow time_window = 5;
2135
- * @return {!proto.gateway.web.v1.AnalyticsTimeWindow}
2250
+ * @param {?proto.gateway.web.v1.TimeRange|undefined} value
2251
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2252
+ */
2253
+ proto.gateway.web.v1.StreamQueryRequest.prototype.setTimeRange = function(value) {
2254
+ return jspb.Message.setWrapperField(this, 4, value);
2255
+ };
2256
+
2257
+
2258
+ /**
2259
+ * Clears the message field making it undefined.
2260
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2136
2261
  */
2137
- proto.gateway.web.v1.GaugeQueryRequest.prototype.getTimeWindow = function() {
2138
- return /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
2262
+ proto.gateway.web.v1.StreamQueryRequest.prototype.clearTimeRange = function() {
2263
+ return this.setTimeRange(undefined);
2139
2264
  };
2140
2265
 
2141
2266
 
2142
2267
  /**
2143
- * @param {!proto.gateway.web.v1.AnalyticsTimeWindow} value
2144
- * @return {!proto.gateway.web.v1.GaugeQueryRequest} returns this
2268
+ * Returns whether this field is set.
2269
+ * @return {boolean}
2145
2270
  */
2146
- proto.gateway.web.v1.GaugeQueryRequest.prototype.setTimeWindow = function(value) {
2147
- return jspb.Message.setProto3EnumField(this, 5, value);
2271
+ proto.gateway.web.v1.StreamQueryRequest.prototype.hasTimeRange = function() {
2272
+ return jspb.Message.getField(this, 4) != null;
2148
2273
  };
2149
2274
 
2150
2275
 
2151
2276
  /**
2152
- * optional AnalyticsTimeInterval time_interval = 6;
2277
+ * optional AnalyticsTimeInterval time_interval = 5;
2153
2278
  * @return {!proto.gateway.web.v1.AnalyticsTimeInterval}
2154
2279
  */
2155
- proto.gateway.web.v1.GaugeQueryRequest.prototype.getTimeInterval = function() {
2156
- return /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
2280
+ proto.gateway.web.v1.StreamQueryRequest.prototype.getTimeInterval = function() {
2281
+ return /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
2157
2282
  };
2158
2283
 
2159
2284
 
2160
2285
  /**
2161
2286
  * @param {!proto.gateway.web.v1.AnalyticsTimeInterval} value
2162
- * @return {!proto.gateway.web.v1.GaugeQueryRequest} returns this
2287
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2163
2288
  */
2164
- proto.gateway.web.v1.GaugeQueryRequest.prototype.setTimeInterval = function(value) {
2165
- return jspb.Message.setProto3EnumField(this, 6, value);
2289
+ proto.gateway.web.v1.StreamQueryRequest.prototype.setTimeInterval = function(value) {
2290
+ return jspb.Message.setProto3EnumField(this, 5, value);
2166
2291
  };
2167
2292
 
2168
2293
 
2169
2294
 
2295
+ /**
2296
+ * List of repeated fields within this message type.
2297
+ * @private {!Array<number>}
2298
+ * @const
2299
+ */
2300
+ proto.gateway.web.v1.MetricQuery.repeatedFields_ = [5,6];
2301
+
2302
+ /**
2303
+ * Oneof group definitions for this message. Each group defines the field
2304
+ * numbers belonging to that group. When of these fields' value is set, all
2305
+ * other fields in the group are cleared. During deserialization, if multiple
2306
+ * fields are encountered for a group, only the last value seen will be kept.
2307
+ * @private {!Array<!Array<number>>}
2308
+ * @const
2309
+ */
2310
+ proto.gateway.web.v1.MetricQuery.oneofGroups_ = [[2,3,4]];
2311
+
2312
+ /**
2313
+ * @enum {number}
2314
+ */
2315
+ proto.gateway.web.v1.MetricQuery.KindCase = {
2316
+ KIND_NOT_SET: 0,
2317
+ GAUGE: 2,
2318
+ SUM: 3,
2319
+ HISTOGRAM: 4
2320
+ };
2321
+
2322
+ /**
2323
+ * @return {proto.gateway.web.v1.MetricQuery.KindCase}
2324
+ */
2325
+ proto.gateway.web.v1.MetricQuery.prototype.getKindCase = function() {
2326
+ return /** @type {proto.gateway.web.v1.MetricQuery.KindCase} */(jspb.Message.computeOneofCase(this, proto.gateway.web.v1.MetricQuery.oneofGroups_[0]));
2327
+ };
2328
+
2170
2329
 
2171
2330
 
2172
2331
  if (jspb.Message.GENERATE_TO_OBJECT) {
@@ -2182,8 +2341,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
2182
2341
  * http://goto/soy-param-migration
2183
2342
  * @return {!Object}
2184
2343
  */
2185
- proto.gateway.web.v1.SumQueryRequest.prototype.toObject = function(opt_includeInstance) {
2186
- return proto.gateway.web.v1.SumQueryRequest.toObject(opt_includeInstance, this);
2344
+ proto.gateway.web.v1.MetricQuery.prototype.toObject = function(opt_includeInstance) {
2345
+ return proto.gateway.web.v1.MetricQuery.toObject(opt_includeInstance, this);
2187
2346
  };
2188
2347
 
2189
2348
 
@@ -2192,18 +2351,20 @@ proto.gateway.web.v1.SumQueryRequest.prototype.toObject = function(opt_includeIn
2192
2351
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2193
2352
  * the JSPB instance for transitional soy proto support:
2194
2353
  * http://goto/soy-param-migration
2195
- * @param {!proto.gateway.web.v1.SumQueryRequest} msg The msg instance to transform.
2354
+ * @param {!proto.gateway.web.v1.MetricQuery} msg The msg instance to transform.
2196
2355
  * @return {!Object}
2197
2356
  * @suppress {unusedLocalVariables} f is only used for nested messages
2198
2357
  */
2199
- proto.gateway.web.v1.SumQueryRequest.toObject = function(includeInstance, msg) {
2358
+ proto.gateway.web.v1.MetricQuery.toObject = function(includeInstance, msg) {
2200
2359
  var f, obj = {
2201
- organizationId: jspb.Message.getFieldWithDefault(msg, 1, ""),
2202
- projectId: jspb.Message.getFieldWithDefault(msg, 2, ""),
2203
- metricName: jspb.Message.getFieldWithDefault(msg, 3, ""),
2204
- aggregation: jspb.Message.getFieldWithDefault(msg, 4, 0),
2205
- timeWindow: jspb.Message.getFieldWithDefault(msg, 5, 0),
2206
- timeInterval: jspb.Message.getFieldWithDefault(msg, 6, 0)
2360
+ metricName: jspb.Message.getFieldWithDefault(msg, 1, ""),
2361
+ gauge: (f = msg.getGauge()) && proto.gateway.web.v1.GaugeQuerySpec.toObject(includeInstance, f),
2362
+ sum: (f = msg.getSum()) && proto.gateway.web.v1.SumQuerySpec.toObject(includeInstance, f),
2363
+ histogram: (f = msg.getHistogram()) && proto.gateway.web.v1.HistogramQuerySpec.toObject(includeInstance, f),
2364
+ filtersList: jspb.Message.toObjectList(msg.getFiltersList(),
2365
+ proto.gateway.web.v1.AttributeFilter.toObject, includeInstance),
2366
+ groupByList: (f = jspb.Message.getRepeatedField(msg, 6)) == null ? undefined : f,
2367
+ groupLimit: jspb.Message.getFieldWithDefault(msg, 7, 0)
2207
2368
  };
2208
2369
 
2209
2370
  if (includeInstance) {
@@ -2217,23 +2378,23 @@ timeInterval: jspb.Message.getFieldWithDefault(msg, 6, 0)
2217
2378
  /**
2218
2379
  * Deserializes binary data (in protobuf wire format).
2219
2380
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
2220
- * @return {!proto.gateway.web.v1.SumQueryRequest}
2381
+ * @return {!proto.gateway.web.v1.MetricQuery}
2221
2382
  */
2222
- proto.gateway.web.v1.SumQueryRequest.deserializeBinary = function(bytes) {
2383
+ proto.gateway.web.v1.MetricQuery.deserializeBinary = function(bytes) {
2223
2384
  var reader = new jspb.BinaryReader(bytes);
2224
- var msg = new proto.gateway.web.v1.SumQueryRequest;
2225
- return proto.gateway.web.v1.SumQueryRequest.deserializeBinaryFromReader(msg, reader);
2385
+ var msg = new proto.gateway.web.v1.MetricQuery;
2386
+ return proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader(msg, reader);
2226
2387
  };
2227
2388
 
2228
2389
 
2229
2390
  /**
2230
2391
  * Deserializes binary data (in protobuf wire format) from the
2231
2392
  * given reader into the given message object.
2232
- * @param {!proto.gateway.web.v1.SumQueryRequest} msg The message object to deserialize into.
2393
+ * @param {!proto.gateway.web.v1.MetricQuery} msg The message object to deserialize into.
2233
2394
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2234
- * @return {!proto.gateway.web.v1.SumQueryRequest}
2395
+ * @return {!proto.gateway.web.v1.MetricQuery}
2235
2396
  */
2236
- proto.gateway.web.v1.SumQueryRequest.deserializeBinaryFromReader = function(msg, reader) {
2397
+ proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader = function(msg, reader) {
2237
2398
  while (reader.nextField()) {
2238
2399
  if (reader.isEndGroup()) {
2239
2400
  break;
@@ -2242,27 +2403,35 @@ proto.gateway.web.v1.SumQueryRequest.deserializeBinaryFromReader = function(msg,
2242
2403
  switch (field) {
2243
2404
  case 1:
2244
2405
  var value = /** @type {string} */ (reader.readString());
2245
- msg.setOrganizationId(value);
2406
+ msg.setMetricName(value);
2246
2407
  break;
2247
2408
  case 2:
2248
- var value = /** @type {string} */ (reader.readString());
2249
- msg.setProjectId(value);
2409
+ var value = new proto.gateway.web.v1.GaugeQuerySpec;
2410
+ reader.readMessage(value,proto.gateway.web.v1.GaugeQuerySpec.deserializeBinaryFromReader);
2411
+ msg.setGauge(value);
2250
2412
  break;
2251
2413
  case 3:
2252
- var value = /** @type {string} */ (reader.readString());
2253
- msg.setMetricName(value);
2414
+ var value = new proto.gateway.web.v1.SumQuerySpec;
2415
+ reader.readMessage(value,proto.gateway.web.v1.SumQuerySpec.deserializeBinaryFromReader);
2416
+ msg.setSum(value);
2254
2417
  break;
2255
2418
  case 4:
2256
- var value = /** @type {!proto.gateway.web.v1.SumAggregation} */ (reader.readEnum());
2257
- msg.setAggregation(value);
2419
+ var value = new proto.gateway.web.v1.HistogramQuerySpec;
2420
+ reader.readMessage(value,proto.gateway.web.v1.HistogramQuerySpec.deserializeBinaryFromReader);
2421
+ msg.setHistogram(value);
2258
2422
  break;
2259
2423
  case 5:
2260
- var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (reader.readEnum());
2261
- msg.setTimeWindow(value);
2424
+ var value = new proto.gateway.web.v1.AttributeFilter;
2425
+ reader.readMessage(value,proto.gateway.web.v1.AttributeFilter.deserializeBinaryFromReader);
2426
+ msg.addFilters(value);
2262
2427
  break;
2263
2428
  case 6:
2264
- var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (reader.readEnum());
2265
- msg.setTimeInterval(value);
2429
+ var value = /** @type {string} */ (reader.readString());
2430
+ msg.addGroupBy(value);
2431
+ break;
2432
+ case 7:
2433
+ var value = /** @type {number} */ (reader.readInt32());
2434
+ msg.setGroupLimit(value);
2266
2435
  break;
2267
2436
  default:
2268
2437
  reader.skipField();
@@ -2277,9 +2446,9 @@ proto.gateway.web.v1.SumQueryRequest.deserializeBinaryFromReader = function(msg,
2277
2446
  * Serializes the message to binary data (in protobuf wire format).
2278
2447
  * @return {!Uint8Array}
2279
2448
  */
2280
- proto.gateway.web.v1.SumQueryRequest.prototype.serializeBinary = function() {
2449
+ proto.gateway.web.v1.MetricQuery.prototype.serializeBinary = function() {
2281
2450
  var writer = new jspb.BinaryWriter();
2282
- proto.gateway.web.v1.SumQueryRequest.serializeBinaryToWriter(this, writer);
2451
+ proto.gateway.web.v1.MetricQuery.serializeBinaryToWriter(this, writer);
2283
2452
  return writer.getResultBuffer();
2284
2453
  };
2285
2454
 
@@ -2287,162 +2456,1148 @@ proto.gateway.web.v1.SumQueryRequest.prototype.serializeBinary = function() {
2287
2456
  /**
2288
2457
  * Serializes the given message to binary data (in protobuf wire
2289
2458
  * format), writing to the given BinaryWriter.
2290
- * @param {!proto.gateway.web.v1.SumQueryRequest} message
2459
+ * @param {!proto.gateway.web.v1.MetricQuery} message
2291
2460
  * @param {!jspb.BinaryWriter} writer
2292
2461
  * @suppress {unusedLocalVariables} f is only used for nested messages
2293
2462
  */
2294
- proto.gateway.web.v1.SumQueryRequest.serializeBinaryToWriter = function(message, writer) {
2463
+ proto.gateway.web.v1.MetricQuery.serializeBinaryToWriter = function(message, writer) {
2295
2464
  var f = undefined;
2296
- f = message.getOrganizationId();
2465
+ f = message.getMetricName();
2297
2466
  if (f.length > 0) {
2298
2467
  writer.writeString(
2299
2468
  1,
2300
2469
  f
2301
2470
  );
2302
2471
  }
2303
- f = message.getProjectId();
2304
- if (f.length > 0) {
2305
- writer.writeString(
2472
+ f = message.getGauge();
2473
+ if (f != null) {
2474
+ writer.writeMessage(
2306
2475
  2,
2307
- f
2476
+ f,
2477
+ proto.gateway.web.v1.GaugeQuerySpec.serializeBinaryToWriter
2308
2478
  );
2309
2479
  }
2310
- f = message.getMetricName();
2311
- if (f.length > 0) {
2312
- writer.writeString(
2480
+ f = message.getSum();
2481
+ if (f != null) {
2482
+ writer.writeMessage(
2313
2483
  3,
2314
- f
2484
+ f,
2485
+ proto.gateway.web.v1.SumQuerySpec.serializeBinaryToWriter
2315
2486
  );
2316
2487
  }
2317
- f = message.getAggregation();
2318
- if (f !== 0.0) {
2319
- writer.writeEnum(
2488
+ f = message.getHistogram();
2489
+ if (f != null) {
2490
+ writer.writeMessage(
2320
2491
  4,
2321
- f
2492
+ f,
2493
+ proto.gateway.web.v1.HistogramQuerySpec.serializeBinaryToWriter
2322
2494
  );
2323
2495
  }
2324
- f = message.getTimeWindow();
2325
- if (f !== 0.0) {
2326
- writer.writeEnum(
2496
+ f = message.getFiltersList();
2497
+ if (f.length > 0) {
2498
+ writer.writeRepeatedMessage(
2327
2499
  5,
2328
- f
2500
+ f,
2501
+ proto.gateway.web.v1.AttributeFilter.serializeBinaryToWriter
2329
2502
  );
2330
2503
  }
2331
- f = message.getTimeInterval();
2332
- if (f !== 0.0) {
2333
- writer.writeEnum(
2504
+ f = message.getGroupByList();
2505
+ if (f.length > 0) {
2506
+ writer.writeRepeatedString(
2334
2507
  6,
2335
2508
  f
2336
2509
  );
2337
2510
  }
2511
+ f = message.getGroupLimit();
2512
+ if (f !== 0) {
2513
+ writer.writeInt32(
2514
+ 7,
2515
+ f
2516
+ );
2517
+ }
2338
2518
  };
2339
2519
 
2340
2520
 
2341
2521
  /**
2342
- * optional string organization_id = 1;
2522
+ * optional string metric_name = 1;
2343
2523
  * @return {string}
2344
2524
  */
2345
- proto.gateway.web.v1.SumQueryRequest.prototype.getOrganizationId = function() {
2525
+ proto.gateway.web.v1.MetricQuery.prototype.getMetricName = function() {
2346
2526
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
2347
2527
  };
2348
2528
 
2349
2529
 
2350
2530
  /**
2351
2531
  * @param {string} value
2352
- * @return {!proto.gateway.web.v1.SumQueryRequest} returns this
2532
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2353
2533
  */
2354
- proto.gateway.web.v1.SumQueryRequest.prototype.setOrganizationId = function(value) {
2534
+ proto.gateway.web.v1.MetricQuery.prototype.setMetricName = function(value) {
2355
2535
  return jspb.Message.setProto3StringField(this, 1, value);
2356
2536
  };
2357
2537
 
2358
2538
 
2359
2539
  /**
2360
- * optional string project_id = 2;
2361
- * @return {string}
2540
+ * optional GaugeQuerySpec gauge = 2;
2541
+ * @return {?proto.gateway.web.v1.GaugeQuerySpec}
2362
2542
  */
2363
- proto.gateway.web.v1.SumQueryRequest.prototype.getProjectId = function() {
2364
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
2543
+ proto.gateway.web.v1.MetricQuery.prototype.getGauge = function() {
2544
+ return /** @type{?proto.gateway.web.v1.GaugeQuerySpec} */ (
2545
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.GaugeQuerySpec, 2));
2365
2546
  };
2366
2547
 
2367
2548
 
2368
2549
  /**
2369
- * @param {string} value
2370
- * @return {!proto.gateway.web.v1.SumQueryRequest} returns this
2371
- */
2372
- proto.gateway.web.v1.SumQueryRequest.prototype.setProjectId = function(value) {
2373
- return jspb.Message.setProto3StringField(this, 2, value);
2550
+ * @param {?proto.gateway.web.v1.GaugeQuerySpec|undefined} value
2551
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2552
+ */
2553
+ proto.gateway.web.v1.MetricQuery.prototype.setGauge = function(value) {
2554
+ return jspb.Message.setOneofWrapperField(this, 2, proto.gateway.web.v1.MetricQuery.oneofGroups_[0], value);
2374
2555
  };
2375
2556
 
2376
2557
 
2377
2558
  /**
2378
- * optional string metric_name = 3;
2379
- * @return {string}
2559
+ * Clears the message field making it undefined.
2560
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2380
2561
  */
2381
- proto.gateway.web.v1.SumQueryRequest.prototype.getMetricName = function() {
2382
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
2562
+ proto.gateway.web.v1.MetricQuery.prototype.clearGauge = function() {
2563
+ return this.setGauge(undefined);
2383
2564
  };
2384
2565
 
2385
2566
 
2386
2567
  /**
2387
- * @param {string} value
2388
- * @return {!proto.gateway.web.v1.SumQueryRequest} returns this
2568
+ * Returns whether this field is set.
2569
+ * @return {boolean}
2389
2570
  */
2390
- proto.gateway.web.v1.SumQueryRequest.prototype.setMetricName = function(value) {
2391
- return jspb.Message.setProto3StringField(this, 3, value);
2571
+ proto.gateway.web.v1.MetricQuery.prototype.hasGauge = function() {
2572
+ return jspb.Message.getField(this, 2) != null;
2392
2573
  };
2393
2574
 
2394
2575
 
2395
2576
  /**
2396
- * optional SumAggregation aggregation = 4;
2397
- * @return {!proto.gateway.web.v1.SumAggregation}
2577
+ * optional SumQuerySpec sum = 3;
2578
+ * @return {?proto.gateway.web.v1.SumQuerySpec}
2398
2579
  */
2399
- proto.gateway.web.v1.SumQueryRequest.prototype.getAggregation = function() {
2400
- return /** @type {!proto.gateway.web.v1.SumAggregation} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
2580
+ proto.gateway.web.v1.MetricQuery.prototype.getSum = function() {
2581
+ return /** @type{?proto.gateway.web.v1.SumQuerySpec} */ (
2582
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.SumQuerySpec, 3));
2401
2583
  };
2402
2584
 
2403
2585
 
2404
2586
  /**
2405
- * @param {!proto.gateway.web.v1.SumAggregation} value
2406
- * @return {!proto.gateway.web.v1.SumQueryRequest} returns this
2407
- */
2408
- proto.gateway.web.v1.SumQueryRequest.prototype.setAggregation = function(value) {
2409
- return jspb.Message.setProto3EnumField(this, 4, value);
2587
+ * @param {?proto.gateway.web.v1.SumQuerySpec|undefined} value
2588
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2589
+ */
2590
+ proto.gateway.web.v1.MetricQuery.prototype.setSum = function(value) {
2591
+ return jspb.Message.setOneofWrapperField(this, 3, proto.gateway.web.v1.MetricQuery.oneofGroups_[0], value);
2410
2592
  };
2411
2593
 
2412
2594
 
2413
2595
  /**
2414
- * optional AnalyticsTimeWindow time_window = 5;
2415
- * @return {!proto.gateway.web.v1.AnalyticsTimeWindow}
2596
+ * Clears the message field making it undefined.
2597
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2416
2598
  */
2417
- proto.gateway.web.v1.SumQueryRequest.prototype.getTimeWindow = function() {
2418
- return /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
2599
+ proto.gateway.web.v1.MetricQuery.prototype.clearSum = function() {
2600
+ return this.setSum(undefined);
2419
2601
  };
2420
2602
 
2421
2603
 
2422
2604
  /**
2423
- * @param {!proto.gateway.web.v1.AnalyticsTimeWindow} value
2424
- * @return {!proto.gateway.web.v1.SumQueryRequest} returns this
2605
+ * Returns whether this field is set.
2606
+ * @return {boolean}
2425
2607
  */
2426
- proto.gateway.web.v1.SumQueryRequest.prototype.setTimeWindow = function(value) {
2427
- return jspb.Message.setProto3EnumField(this, 5, value);
2608
+ proto.gateway.web.v1.MetricQuery.prototype.hasSum = function() {
2609
+ return jspb.Message.getField(this, 3) != null;
2428
2610
  };
2429
2611
 
2430
2612
 
2431
2613
  /**
2432
- * optional AnalyticsTimeInterval time_interval = 6;
2433
- * @return {!proto.gateway.web.v1.AnalyticsTimeInterval}
2614
+ * optional HistogramQuerySpec histogram = 4;
2615
+ * @return {?proto.gateway.web.v1.HistogramQuerySpec}
2434
2616
  */
2435
- proto.gateway.web.v1.SumQueryRequest.prototype.getTimeInterval = function() {
2436
- return /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
2617
+ proto.gateway.web.v1.MetricQuery.prototype.getHistogram = function() {
2618
+ return /** @type{?proto.gateway.web.v1.HistogramQuerySpec} */ (
2619
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.HistogramQuerySpec, 4));
2437
2620
  };
2438
2621
 
2439
2622
 
2440
2623
  /**
2441
- * @param {!proto.gateway.web.v1.AnalyticsTimeInterval} value
2442
- * @return {!proto.gateway.web.v1.SumQueryRequest} returns this
2624
+ * @param {?proto.gateway.web.v1.HistogramQuerySpec|undefined} value
2625
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2626
+ */
2627
+ proto.gateway.web.v1.MetricQuery.prototype.setHistogram = function(value) {
2628
+ return jspb.Message.setOneofWrapperField(this, 4, proto.gateway.web.v1.MetricQuery.oneofGroups_[0], value);
2629
+ };
2630
+
2631
+
2632
+ /**
2633
+ * Clears the message field making it undefined.
2634
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2635
+ */
2636
+ proto.gateway.web.v1.MetricQuery.prototype.clearHistogram = function() {
2637
+ return this.setHistogram(undefined);
2638
+ };
2639
+
2640
+
2641
+ /**
2642
+ * Returns whether this field is set.
2643
+ * @return {boolean}
2644
+ */
2645
+ proto.gateway.web.v1.MetricQuery.prototype.hasHistogram = function() {
2646
+ return jspb.Message.getField(this, 4) != null;
2647
+ };
2648
+
2649
+
2650
+ /**
2651
+ * repeated AttributeFilter filters = 5;
2652
+ * @return {!Array<!proto.gateway.web.v1.AttributeFilter>}
2653
+ */
2654
+ proto.gateway.web.v1.MetricQuery.prototype.getFiltersList = function() {
2655
+ return /** @type{!Array<!proto.gateway.web.v1.AttributeFilter>} */ (
2656
+ jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.AttributeFilter, 5));
2657
+ };
2658
+
2659
+
2660
+ /**
2661
+ * @param {!Array<!proto.gateway.web.v1.AttributeFilter>} value
2662
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2663
+ */
2664
+ proto.gateway.web.v1.MetricQuery.prototype.setFiltersList = function(value) {
2665
+ return jspb.Message.setRepeatedWrapperField(this, 5, value);
2666
+ };
2667
+
2668
+
2669
+ /**
2670
+ * @param {!proto.gateway.web.v1.AttributeFilter=} opt_value
2671
+ * @param {number=} opt_index
2672
+ * @return {!proto.gateway.web.v1.AttributeFilter}
2673
+ */
2674
+ proto.gateway.web.v1.MetricQuery.prototype.addFilters = function(opt_value, opt_index) {
2675
+ return jspb.Message.addToRepeatedWrapperField(this, 5, opt_value, proto.gateway.web.v1.AttributeFilter, opt_index);
2676
+ };
2677
+
2678
+
2679
+ /**
2680
+ * Clears the list making it empty but non-null.
2681
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2682
+ */
2683
+ proto.gateway.web.v1.MetricQuery.prototype.clearFiltersList = function() {
2684
+ return this.setFiltersList([]);
2685
+ };
2686
+
2687
+
2688
+ /**
2689
+ * repeated string group_by = 6;
2690
+ * @return {!Array<string>}
2691
+ */
2692
+ proto.gateway.web.v1.MetricQuery.prototype.getGroupByList = function() {
2693
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 6));
2694
+ };
2695
+
2696
+
2697
+ /**
2698
+ * @param {!Array<string>} value
2699
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2700
+ */
2701
+ proto.gateway.web.v1.MetricQuery.prototype.setGroupByList = function(value) {
2702
+ return jspb.Message.setField(this, 6, value || []);
2703
+ };
2704
+
2705
+
2706
+ /**
2707
+ * @param {string} value
2708
+ * @param {number=} opt_index
2709
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2710
+ */
2711
+ proto.gateway.web.v1.MetricQuery.prototype.addGroupBy = function(value, opt_index) {
2712
+ return jspb.Message.addToRepeatedField(this, 6, value, opt_index);
2713
+ };
2714
+
2715
+
2716
+ /**
2717
+ * Clears the list making it empty but non-null.
2718
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2719
+ */
2720
+ proto.gateway.web.v1.MetricQuery.prototype.clearGroupByList = function() {
2721
+ return this.setGroupByList([]);
2722
+ };
2723
+
2724
+
2725
+ /**
2726
+ * optional int32 group_limit = 7;
2727
+ * @return {number}
2728
+ */
2729
+ proto.gateway.web.v1.MetricQuery.prototype.getGroupLimit = function() {
2730
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));
2731
+ };
2732
+
2733
+
2734
+ /**
2735
+ * @param {number} value
2736
+ * @return {!proto.gateway.web.v1.MetricQuery} returns this
2737
+ */
2738
+ proto.gateway.web.v1.MetricQuery.prototype.setGroupLimit = function(value) {
2739
+ return jspb.Message.setProto3IntField(this, 7, value);
2740
+ };
2741
+
2742
+
2743
+
2744
+
2745
+
2746
+ if (jspb.Message.GENERATE_TO_OBJECT) {
2747
+ /**
2748
+ * Creates an object representation of this proto.
2749
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
2750
+ * Optional fields that are not set will be set to undefined.
2751
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
2752
+ * For the list of reserved names please see:
2753
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
2754
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
2755
+ * JSPB instance for transitional soy proto support:
2756
+ * http://goto/soy-param-migration
2757
+ * @return {!Object}
2758
+ */
2759
+ proto.gateway.web.v1.GaugeQuerySpec.prototype.toObject = function(opt_includeInstance) {
2760
+ return proto.gateway.web.v1.GaugeQuerySpec.toObject(opt_includeInstance, this);
2761
+ };
2762
+
2763
+
2764
+ /**
2765
+ * Static version of the {@see toObject} method.
2766
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2767
+ * the JSPB instance for transitional soy proto support:
2768
+ * http://goto/soy-param-migration
2769
+ * @param {!proto.gateway.web.v1.GaugeQuerySpec} msg The msg instance to transform.
2770
+ * @return {!Object}
2771
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2772
+ */
2773
+ proto.gateway.web.v1.GaugeQuerySpec.toObject = function(includeInstance, msg) {
2774
+ var f, obj = {
2775
+ aggregation: jspb.Message.getFieldWithDefault(msg, 1, 0)
2776
+ };
2777
+
2778
+ if (includeInstance) {
2779
+ obj.$jspbMessageInstance = msg;
2780
+ }
2781
+ return obj;
2782
+ };
2783
+ }
2784
+
2785
+
2786
+ /**
2787
+ * Deserializes binary data (in protobuf wire format).
2788
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
2789
+ * @return {!proto.gateway.web.v1.GaugeQuerySpec}
2790
+ */
2791
+ proto.gateway.web.v1.GaugeQuerySpec.deserializeBinary = function(bytes) {
2792
+ var reader = new jspb.BinaryReader(bytes);
2793
+ var msg = new proto.gateway.web.v1.GaugeQuerySpec;
2794
+ return proto.gateway.web.v1.GaugeQuerySpec.deserializeBinaryFromReader(msg, reader);
2795
+ };
2796
+
2797
+
2798
+ /**
2799
+ * Deserializes binary data (in protobuf wire format) from the
2800
+ * given reader into the given message object.
2801
+ * @param {!proto.gateway.web.v1.GaugeQuerySpec} msg The message object to deserialize into.
2802
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2803
+ * @return {!proto.gateway.web.v1.GaugeQuerySpec}
2804
+ */
2805
+ proto.gateway.web.v1.GaugeQuerySpec.deserializeBinaryFromReader = function(msg, reader) {
2806
+ while (reader.nextField()) {
2807
+ if (reader.isEndGroup()) {
2808
+ break;
2809
+ }
2810
+ var field = reader.getFieldNumber();
2811
+ switch (field) {
2812
+ case 1:
2813
+ var value = /** @type {!proto.gateway.web.v1.GaugeAggregation} */ (reader.readEnum());
2814
+ msg.setAggregation(value);
2815
+ break;
2816
+ default:
2817
+ reader.skipField();
2818
+ break;
2819
+ }
2820
+ }
2821
+ return msg;
2822
+ };
2823
+
2824
+
2825
+ /**
2826
+ * Serializes the message to binary data (in protobuf wire format).
2827
+ * @return {!Uint8Array}
2828
+ */
2829
+ proto.gateway.web.v1.GaugeQuerySpec.prototype.serializeBinary = function() {
2830
+ var writer = new jspb.BinaryWriter();
2831
+ proto.gateway.web.v1.GaugeQuerySpec.serializeBinaryToWriter(this, writer);
2832
+ return writer.getResultBuffer();
2833
+ };
2834
+
2835
+
2836
+ /**
2837
+ * Serializes the given message to binary data (in protobuf wire
2838
+ * format), writing to the given BinaryWriter.
2839
+ * @param {!proto.gateway.web.v1.GaugeQuerySpec} message
2840
+ * @param {!jspb.BinaryWriter} writer
2841
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2842
+ */
2843
+ proto.gateway.web.v1.GaugeQuerySpec.serializeBinaryToWriter = function(message, writer) {
2844
+ var f = undefined;
2845
+ f = message.getAggregation();
2846
+ if (f !== 0.0) {
2847
+ writer.writeEnum(
2848
+ 1,
2849
+ f
2850
+ );
2851
+ }
2852
+ };
2853
+
2854
+
2855
+ /**
2856
+ * optional GaugeAggregation aggregation = 1;
2857
+ * @return {!proto.gateway.web.v1.GaugeAggregation}
2858
+ */
2859
+ proto.gateway.web.v1.GaugeQuerySpec.prototype.getAggregation = function() {
2860
+ return /** @type {!proto.gateway.web.v1.GaugeAggregation} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
2861
+ };
2862
+
2863
+
2864
+ /**
2865
+ * @param {!proto.gateway.web.v1.GaugeAggregation} value
2866
+ * @return {!proto.gateway.web.v1.GaugeQuerySpec} returns this
2867
+ */
2868
+ proto.gateway.web.v1.GaugeQuerySpec.prototype.setAggregation = function(value) {
2869
+ return jspb.Message.setProto3EnumField(this, 1, value);
2870
+ };
2871
+
2872
+
2873
+
2874
+
2875
+
2876
+ if (jspb.Message.GENERATE_TO_OBJECT) {
2877
+ /**
2878
+ * Creates an object representation of this proto.
2879
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
2880
+ * Optional fields that are not set will be set to undefined.
2881
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
2882
+ * For the list of reserved names please see:
2883
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
2884
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
2885
+ * JSPB instance for transitional soy proto support:
2886
+ * http://goto/soy-param-migration
2887
+ * @return {!Object}
2888
+ */
2889
+ proto.gateway.web.v1.SumQuerySpec.prototype.toObject = function(opt_includeInstance) {
2890
+ return proto.gateway.web.v1.SumQuerySpec.toObject(opt_includeInstance, this);
2891
+ };
2892
+
2893
+
2894
+ /**
2895
+ * Static version of the {@see toObject} method.
2896
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2897
+ * the JSPB instance for transitional soy proto support:
2898
+ * http://goto/soy-param-migration
2899
+ * @param {!proto.gateway.web.v1.SumQuerySpec} msg The msg instance to transform.
2900
+ * @return {!Object}
2901
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2902
+ */
2903
+ proto.gateway.web.v1.SumQuerySpec.toObject = function(includeInstance, msg) {
2904
+ var f, obj = {
2905
+ aggregation: jspb.Message.getFieldWithDefault(msg, 1, 0)
2906
+ };
2907
+
2908
+ if (includeInstance) {
2909
+ obj.$jspbMessageInstance = msg;
2910
+ }
2911
+ return obj;
2912
+ };
2913
+ }
2914
+
2915
+
2916
+ /**
2917
+ * Deserializes binary data (in protobuf wire format).
2918
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
2919
+ * @return {!proto.gateway.web.v1.SumQuerySpec}
2920
+ */
2921
+ proto.gateway.web.v1.SumQuerySpec.deserializeBinary = function(bytes) {
2922
+ var reader = new jspb.BinaryReader(bytes);
2923
+ var msg = new proto.gateway.web.v1.SumQuerySpec;
2924
+ return proto.gateway.web.v1.SumQuerySpec.deserializeBinaryFromReader(msg, reader);
2925
+ };
2926
+
2927
+
2928
+ /**
2929
+ * Deserializes binary data (in protobuf wire format) from the
2930
+ * given reader into the given message object.
2931
+ * @param {!proto.gateway.web.v1.SumQuerySpec} msg The message object to deserialize into.
2932
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2933
+ * @return {!proto.gateway.web.v1.SumQuerySpec}
2934
+ */
2935
+ proto.gateway.web.v1.SumQuerySpec.deserializeBinaryFromReader = function(msg, reader) {
2936
+ while (reader.nextField()) {
2937
+ if (reader.isEndGroup()) {
2938
+ break;
2939
+ }
2940
+ var field = reader.getFieldNumber();
2941
+ switch (field) {
2942
+ case 1:
2943
+ var value = /** @type {!proto.gateway.web.v1.SumAggregation} */ (reader.readEnum());
2944
+ msg.setAggregation(value);
2945
+ break;
2946
+ default:
2947
+ reader.skipField();
2948
+ break;
2949
+ }
2950
+ }
2951
+ return msg;
2952
+ };
2953
+
2954
+
2955
+ /**
2956
+ * Serializes the message to binary data (in protobuf wire format).
2957
+ * @return {!Uint8Array}
2958
+ */
2959
+ proto.gateway.web.v1.SumQuerySpec.prototype.serializeBinary = function() {
2960
+ var writer = new jspb.BinaryWriter();
2961
+ proto.gateway.web.v1.SumQuerySpec.serializeBinaryToWriter(this, writer);
2962
+ return writer.getResultBuffer();
2963
+ };
2964
+
2965
+
2966
+ /**
2967
+ * Serializes the given message to binary data (in protobuf wire
2968
+ * format), writing to the given BinaryWriter.
2969
+ * @param {!proto.gateway.web.v1.SumQuerySpec} message
2970
+ * @param {!jspb.BinaryWriter} writer
2971
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2972
+ */
2973
+ proto.gateway.web.v1.SumQuerySpec.serializeBinaryToWriter = function(message, writer) {
2974
+ var f = undefined;
2975
+ f = message.getAggregation();
2976
+ if (f !== 0.0) {
2977
+ writer.writeEnum(
2978
+ 1,
2979
+ f
2980
+ );
2981
+ }
2982
+ };
2983
+
2984
+
2985
+ /**
2986
+ * optional SumAggregation aggregation = 1;
2987
+ * @return {!proto.gateway.web.v1.SumAggregation}
2988
+ */
2989
+ proto.gateway.web.v1.SumQuerySpec.prototype.getAggregation = function() {
2990
+ return /** @type {!proto.gateway.web.v1.SumAggregation} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
2991
+ };
2992
+
2993
+
2994
+ /**
2995
+ * @param {!proto.gateway.web.v1.SumAggregation} value
2996
+ * @return {!proto.gateway.web.v1.SumQuerySpec} returns this
2997
+ */
2998
+ proto.gateway.web.v1.SumQuerySpec.prototype.setAggregation = function(value) {
2999
+ return jspb.Message.setProto3EnumField(this, 1, value);
3000
+ };
3001
+
3002
+
3003
+
3004
+
3005
+
3006
+ if (jspb.Message.GENERATE_TO_OBJECT) {
3007
+ /**
3008
+ * Creates an object representation of this proto.
3009
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
3010
+ * Optional fields that are not set will be set to undefined.
3011
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
3012
+ * For the list of reserved names please see:
3013
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
3014
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
3015
+ * JSPB instance for transitional soy proto support:
3016
+ * http://goto/soy-param-migration
3017
+ * @return {!Object}
3018
+ */
3019
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.toObject = function(opt_includeInstance) {
3020
+ return proto.gateway.web.v1.HistogramQuerySpec.toObject(opt_includeInstance, this);
3021
+ };
3022
+
3023
+
3024
+ /**
3025
+ * Static version of the {@see toObject} method.
3026
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3027
+ * the JSPB instance for transitional soy proto support:
3028
+ * http://goto/soy-param-migration
3029
+ * @param {!proto.gateway.web.v1.HistogramQuerySpec} msg The msg instance to transform.
3030
+ * @return {!Object}
3031
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3032
+ */
3033
+ proto.gateway.web.v1.HistogramQuerySpec.toObject = function(includeInstance, msg) {
3034
+ var f, obj = {
3035
+ aggregation: jspb.Message.getFieldWithDefault(msg, 1, 0),
3036
+ quantile: jspb.Message.getFloatingPointFieldWithDefault(msg, 2, 0.0)
3037
+ };
3038
+
3039
+ if (includeInstance) {
3040
+ obj.$jspbMessageInstance = msg;
3041
+ }
3042
+ return obj;
3043
+ };
3044
+ }
3045
+
3046
+
3047
+ /**
3048
+ * Deserializes binary data (in protobuf wire format).
3049
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
3050
+ * @return {!proto.gateway.web.v1.HistogramQuerySpec}
3051
+ */
3052
+ proto.gateway.web.v1.HistogramQuerySpec.deserializeBinary = function(bytes) {
3053
+ var reader = new jspb.BinaryReader(bytes);
3054
+ var msg = new proto.gateway.web.v1.HistogramQuerySpec;
3055
+ return proto.gateway.web.v1.HistogramQuerySpec.deserializeBinaryFromReader(msg, reader);
3056
+ };
3057
+
3058
+
3059
+ /**
3060
+ * Deserializes binary data (in protobuf wire format) from the
3061
+ * given reader into the given message object.
3062
+ * @param {!proto.gateway.web.v1.HistogramQuerySpec} msg The message object to deserialize into.
3063
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3064
+ * @return {!proto.gateway.web.v1.HistogramQuerySpec}
3065
+ */
3066
+ proto.gateway.web.v1.HistogramQuerySpec.deserializeBinaryFromReader = function(msg, reader) {
3067
+ while (reader.nextField()) {
3068
+ if (reader.isEndGroup()) {
3069
+ break;
3070
+ }
3071
+ var field = reader.getFieldNumber();
3072
+ switch (field) {
3073
+ case 1:
3074
+ var value = /** @type {!proto.gateway.web.v1.HistogramAggregation} */ (reader.readEnum());
3075
+ msg.setAggregation(value);
3076
+ break;
3077
+ case 2:
3078
+ var value = /** @type {number} */ (reader.readDouble());
3079
+ msg.setQuantile(value);
3080
+ break;
3081
+ default:
3082
+ reader.skipField();
3083
+ break;
3084
+ }
3085
+ }
3086
+ return msg;
3087
+ };
3088
+
3089
+
3090
+ /**
3091
+ * Serializes the message to binary data (in protobuf wire format).
3092
+ * @return {!Uint8Array}
3093
+ */
3094
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.serializeBinary = function() {
3095
+ var writer = new jspb.BinaryWriter();
3096
+ proto.gateway.web.v1.HistogramQuerySpec.serializeBinaryToWriter(this, writer);
3097
+ return writer.getResultBuffer();
3098
+ };
3099
+
3100
+
3101
+ /**
3102
+ * Serializes the given message to binary data (in protobuf wire
3103
+ * format), writing to the given BinaryWriter.
3104
+ * @param {!proto.gateway.web.v1.HistogramQuerySpec} message
3105
+ * @param {!jspb.BinaryWriter} writer
3106
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3107
+ */
3108
+ proto.gateway.web.v1.HistogramQuerySpec.serializeBinaryToWriter = function(message, writer) {
3109
+ var f = undefined;
3110
+ f = message.getAggregation();
3111
+ if (f !== 0.0) {
3112
+ writer.writeEnum(
3113
+ 1,
3114
+ f
3115
+ );
3116
+ }
3117
+ f = message.getQuantile();
3118
+ if (f !== 0.0) {
3119
+ writer.writeDouble(
3120
+ 2,
3121
+ f
3122
+ );
3123
+ }
3124
+ };
3125
+
3126
+
3127
+ /**
3128
+ * optional HistogramAggregation aggregation = 1;
3129
+ * @return {!proto.gateway.web.v1.HistogramAggregation}
3130
+ */
3131
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.getAggregation = function() {
3132
+ return /** @type {!proto.gateway.web.v1.HistogramAggregation} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
3133
+ };
3134
+
3135
+
3136
+ /**
3137
+ * @param {!proto.gateway.web.v1.HistogramAggregation} value
3138
+ * @return {!proto.gateway.web.v1.HistogramQuerySpec} returns this
3139
+ */
3140
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.setAggregation = function(value) {
3141
+ return jspb.Message.setProto3EnumField(this, 1, value);
3142
+ };
3143
+
3144
+
3145
+ /**
3146
+ * optional double quantile = 2;
3147
+ * @return {number}
3148
+ */
3149
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.getQuantile = function() {
3150
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 2, 0.0));
3151
+ };
3152
+
3153
+
3154
+ /**
3155
+ * @param {number} value
3156
+ * @return {!proto.gateway.web.v1.HistogramQuerySpec} returns this
3157
+ */
3158
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.setQuantile = function(value) {
3159
+ return jspb.Message.setProto3FloatField(this, 2, value);
3160
+ };
3161
+
3162
+
3163
+
3164
+ /**
3165
+ * List of repeated fields within this message type.
3166
+ * @private {!Array<number>}
3167
+ * @const
3168
+ */
3169
+ proto.gateway.web.v1.AttributeFilter.repeatedFields_ = [3];
3170
+
3171
+
3172
+
3173
+ if (jspb.Message.GENERATE_TO_OBJECT) {
3174
+ /**
3175
+ * Creates an object representation of this proto.
3176
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
3177
+ * Optional fields that are not set will be set to undefined.
3178
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
3179
+ * For the list of reserved names please see:
3180
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
3181
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
3182
+ * JSPB instance for transitional soy proto support:
3183
+ * http://goto/soy-param-migration
3184
+ * @return {!Object}
3185
+ */
3186
+ proto.gateway.web.v1.AttributeFilter.prototype.toObject = function(opt_includeInstance) {
3187
+ return proto.gateway.web.v1.AttributeFilter.toObject(opt_includeInstance, this);
3188
+ };
3189
+
3190
+
3191
+ /**
3192
+ * Static version of the {@see toObject} method.
3193
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3194
+ * the JSPB instance for transitional soy proto support:
3195
+ * http://goto/soy-param-migration
3196
+ * @param {!proto.gateway.web.v1.AttributeFilter} msg The msg instance to transform.
3197
+ * @return {!Object}
3198
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3199
+ */
3200
+ proto.gateway.web.v1.AttributeFilter.toObject = function(includeInstance, msg) {
3201
+ var f, obj = {
3202
+ key: jspb.Message.getFieldWithDefault(msg, 1, ""),
3203
+ op: jspb.Message.getFieldWithDefault(msg, 2, 0),
3204
+ valuesList: (f = jspb.Message.getRepeatedField(msg, 3)) == null ? undefined : f
3205
+ };
3206
+
3207
+ if (includeInstance) {
3208
+ obj.$jspbMessageInstance = msg;
3209
+ }
3210
+ return obj;
3211
+ };
3212
+ }
3213
+
3214
+
3215
+ /**
3216
+ * Deserializes binary data (in protobuf wire format).
3217
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
3218
+ * @return {!proto.gateway.web.v1.AttributeFilter}
3219
+ */
3220
+ proto.gateway.web.v1.AttributeFilter.deserializeBinary = function(bytes) {
3221
+ var reader = new jspb.BinaryReader(bytes);
3222
+ var msg = new proto.gateway.web.v1.AttributeFilter;
3223
+ return proto.gateway.web.v1.AttributeFilter.deserializeBinaryFromReader(msg, reader);
3224
+ };
3225
+
3226
+
3227
+ /**
3228
+ * Deserializes binary data (in protobuf wire format) from the
3229
+ * given reader into the given message object.
3230
+ * @param {!proto.gateway.web.v1.AttributeFilter} msg The message object to deserialize into.
3231
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3232
+ * @return {!proto.gateway.web.v1.AttributeFilter}
3233
+ */
3234
+ proto.gateway.web.v1.AttributeFilter.deserializeBinaryFromReader = function(msg, reader) {
3235
+ while (reader.nextField()) {
3236
+ if (reader.isEndGroup()) {
3237
+ break;
3238
+ }
3239
+ var field = reader.getFieldNumber();
3240
+ switch (field) {
3241
+ case 1:
3242
+ var value = /** @type {string} */ (reader.readString());
3243
+ msg.setKey(value);
3244
+ break;
3245
+ case 2:
3246
+ var value = /** @type {!proto.gateway.web.v1.AttributeFilterOp} */ (reader.readEnum());
3247
+ msg.setOp(value);
3248
+ break;
3249
+ case 3:
3250
+ var value = /** @type {string} */ (reader.readString());
3251
+ msg.addValues(value);
3252
+ break;
3253
+ default:
3254
+ reader.skipField();
3255
+ break;
3256
+ }
3257
+ }
3258
+ return msg;
3259
+ };
3260
+
3261
+
3262
+ /**
3263
+ * Serializes the message to binary data (in protobuf wire format).
3264
+ * @return {!Uint8Array}
3265
+ */
3266
+ proto.gateway.web.v1.AttributeFilter.prototype.serializeBinary = function() {
3267
+ var writer = new jspb.BinaryWriter();
3268
+ proto.gateway.web.v1.AttributeFilter.serializeBinaryToWriter(this, writer);
3269
+ return writer.getResultBuffer();
3270
+ };
3271
+
3272
+
3273
+ /**
3274
+ * Serializes the given message to binary data (in protobuf wire
3275
+ * format), writing to the given BinaryWriter.
3276
+ * @param {!proto.gateway.web.v1.AttributeFilter} message
3277
+ * @param {!jspb.BinaryWriter} writer
3278
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3279
+ */
3280
+ proto.gateway.web.v1.AttributeFilter.serializeBinaryToWriter = function(message, writer) {
3281
+ var f = undefined;
3282
+ f = message.getKey();
3283
+ if (f.length > 0) {
3284
+ writer.writeString(
3285
+ 1,
3286
+ f
3287
+ );
3288
+ }
3289
+ f = message.getOp();
3290
+ if (f !== 0.0) {
3291
+ writer.writeEnum(
3292
+ 2,
3293
+ f
3294
+ );
3295
+ }
3296
+ f = message.getValuesList();
3297
+ if (f.length > 0) {
3298
+ writer.writeRepeatedString(
3299
+ 3,
3300
+ f
3301
+ );
3302
+ }
3303
+ };
3304
+
3305
+
3306
+ /**
3307
+ * optional string key = 1;
3308
+ * @return {string}
3309
+ */
3310
+ proto.gateway.web.v1.AttributeFilter.prototype.getKey = function() {
3311
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
3312
+ };
3313
+
3314
+
3315
+ /**
3316
+ * @param {string} value
3317
+ * @return {!proto.gateway.web.v1.AttributeFilter} returns this
3318
+ */
3319
+ proto.gateway.web.v1.AttributeFilter.prototype.setKey = function(value) {
3320
+ return jspb.Message.setProto3StringField(this, 1, value);
3321
+ };
3322
+
3323
+
3324
+ /**
3325
+ * optional AttributeFilterOp op = 2;
3326
+ * @return {!proto.gateway.web.v1.AttributeFilterOp}
3327
+ */
3328
+ proto.gateway.web.v1.AttributeFilter.prototype.getOp = function() {
3329
+ return /** @type {!proto.gateway.web.v1.AttributeFilterOp} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
3330
+ };
3331
+
3332
+
3333
+ /**
3334
+ * @param {!proto.gateway.web.v1.AttributeFilterOp} value
3335
+ * @return {!proto.gateway.web.v1.AttributeFilter} returns this
3336
+ */
3337
+ proto.gateway.web.v1.AttributeFilter.prototype.setOp = function(value) {
3338
+ return jspb.Message.setProto3EnumField(this, 2, value);
3339
+ };
3340
+
3341
+
3342
+ /**
3343
+ * repeated string values = 3;
3344
+ * @return {!Array<string>}
3345
+ */
3346
+ proto.gateway.web.v1.AttributeFilter.prototype.getValuesList = function() {
3347
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 3));
3348
+ };
3349
+
3350
+
3351
+ /**
3352
+ * @param {!Array<string>} value
3353
+ * @return {!proto.gateway.web.v1.AttributeFilter} returns this
3354
+ */
3355
+ proto.gateway.web.v1.AttributeFilter.prototype.setValuesList = function(value) {
3356
+ return jspb.Message.setField(this, 3, value || []);
3357
+ };
3358
+
3359
+
3360
+ /**
3361
+ * @param {string} value
3362
+ * @param {number=} opt_index
3363
+ * @return {!proto.gateway.web.v1.AttributeFilter} returns this
3364
+ */
3365
+ proto.gateway.web.v1.AttributeFilter.prototype.addValues = function(value, opt_index) {
3366
+ return jspb.Message.addToRepeatedField(this, 3, value, opt_index);
3367
+ };
3368
+
3369
+
3370
+ /**
3371
+ * Clears the list making it empty but non-null.
3372
+ * @return {!proto.gateway.web.v1.AttributeFilter} returns this
3373
+ */
3374
+ proto.gateway.web.v1.AttributeFilter.prototype.clearValuesList = function() {
3375
+ return this.setValuesList([]);
3376
+ };
3377
+
3378
+
3379
+
3380
+ /**
3381
+ * Oneof group definitions for this message. Each group defines the field
3382
+ * numbers belonging to that group. When of these fields' value is set, all
3383
+ * other fields in the group are cleared. During deserialization, if multiple
3384
+ * fields are encountered for a group, only the last value seen will be kept.
3385
+ * @private {!Array<!Array<number>>}
3386
+ * @const
3387
+ */
3388
+ proto.gateway.web.v1.TimeRange.oneofGroups_ = [[1,2]];
3389
+
3390
+ /**
3391
+ * @enum {number}
3392
+ */
3393
+ proto.gateway.web.v1.TimeRange.RangeCase = {
3394
+ RANGE_NOT_SET: 0,
3395
+ WINDOW: 1,
3396
+ ABSOLUTE: 2
3397
+ };
3398
+
3399
+ /**
3400
+ * @return {proto.gateway.web.v1.TimeRange.RangeCase}
3401
+ */
3402
+ proto.gateway.web.v1.TimeRange.prototype.getRangeCase = function() {
3403
+ return /** @type {proto.gateway.web.v1.TimeRange.RangeCase} */(jspb.Message.computeOneofCase(this, proto.gateway.web.v1.TimeRange.oneofGroups_[0]));
3404
+ };
3405
+
3406
+
3407
+
3408
+ if (jspb.Message.GENERATE_TO_OBJECT) {
3409
+ /**
3410
+ * Creates an object representation of this proto.
3411
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
3412
+ * Optional fields that are not set will be set to undefined.
3413
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
3414
+ * For the list of reserved names please see:
3415
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
3416
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
3417
+ * JSPB instance for transitional soy proto support:
3418
+ * http://goto/soy-param-migration
3419
+ * @return {!Object}
3420
+ */
3421
+ proto.gateway.web.v1.TimeRange.prototype.toObject = function(opt_includeInstance) {
3422
+ return proto.gateway.web.v1.TimeRange.toObject(opt_includeInstance, this);
3423
+ };
3424
+
3425
+
3426
+ /**
3427
+ * Static version of the {@see toObject} method.
3428
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3429
+ * the JSPB instance for transitional soy proto support:
3430
+ * http://goto/soy-param-migration
3431
+ * @param {!proto.gateway.web.v1.TimeRange} msg The msg instance to transform.
3432
+ * @return {!Object}
3433
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3434
+ */
3435
+ proto.gateway.web.v1.TimeRange.toObject = function(includeInstance, msg) {
3436
+ var f, obj = {
3437
+ window: (f = jspb.Message.getField(msg, 1)) == null ? undefined : f,
3438
+ absolute: (f = msg.getAbsolute()) && proto.gateway.web.v1.AbsoluteTimeRange.toObject(includeInstance, f)
3439
+ };
3440
+
3441
+ if (includeInstance) {
3442
+ obj.$jspbMessageInstance = msg;
3443
+ }
3444
+ return obj;
3445
+ };
3446
+ }
3447
+
3448
+
3449
+ /**
3450
+ * Deserializes binary data (in protobuf wire format).
3451
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
3452
+ * @return {!proto.gateway.web.v1.TimeRange}
3453
+ */
3454
+ proto.gateway.web.v1.TimeRange.deserializeBinary = function(bytes) {
3455
+ var reader = new jspb.BinaryReader(bytes);
3456
+ var msg = new proto.gateway.web.v1.TimeRange;
3457
+ return proto.gateway.web.v1.TimeRange.deserializeBinaryFromReader(msg, reader);
3458
+ };
3459
+
3460
+
3461
+ /**
3462
+ * Deserializes binary data (in protobuf wire format) from the
3463
+ * given reader into the given message object.
3464
+ * @param {!proto.gateway.web.v1.TimeRange} msg The message object to deserialize into.
3465
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3466
+ * @return {!proto.gateway.web.v1.TimeRange}
3467
+ */
3468
+ proto.gateway.web.v1.TimeRange.deserializeBinaryFromReader = function(msg, reader) {
3469
+ while (reader.nextField()) {
3470
+ if (reader.isEndGroup()) {
3471
+ break;
3472
+ }
3473
+ var field = reader.getFieldNumber();
3474
+ switch (field) {
3475
+ case 1:
3476
+ var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (reader.readEnum());
3477
+ msg.setWindow(value);
3478
+ break;
3479
+ case 2:
3480
+ var value = new proto.gateway.web.v1.AbsoluteTimeRange;
3481
+ reader.readMessage(value,proto.gateway.web.v1.AbsoluteTimeRange.deserializeBinaryFromReader);
3482
+ msg.setAbsolute(value);
3483
+ break;
3484
+ default:
3485
+ reader.skipField();
3486
+ break;
3487
+ }
3488
+ }
3489
+ return msg;
3490
+ };
3491
+
3492
+
3493
+ /**
3494
+ * Serializes the message to binary data (in protobuf wire format).
3495
+ * @return {!Uint8Array}
3496
+ */
3497
+ proto.gateway.web.v1.TimeRange.prototype.serializeBinary = function() {
3498
+ var writer = new jspb.BinaryWriter();
3499
+ proto.gateway.web.v1.TimeRange.serializeBinaryToWriter(this, writer);
3500
+ return writer.getResultBuffer();
3501
+ };
3502
+
3503
+
3504
+ /**
3505
+ * Serializes the given message to binary data (in protobuf wire
3506
+ * format), writing to the given BinaryWriter.
3507
+ * @param {!proto.gateway.web.v1.TimeRange} message
3508
+ * @param {!jspb.BinaryWriter} writer
3509
+ * @suppress {unusedLocalVariables} f is only used for nested messages
3510
+ */
3511
+ proto.gateway.web.v1.TimeRange.serializeBinaryToWriter = function(message, writer) {
3512
+ var f = undefined;
3513
+ f = /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (jspb.Message.getField(message, 1));
3514
+ if (f != null) {
3515
+ writer.writeEnum(
3516
+ 1,
3517
+ f
3518
+ );
3519
+ }
3520
+ f = message.getAbsolute();
3521
+ if (f != null) {
3522
+ writer.writeMessage(
3523
+ 2,
3524
+ f,
3525
+ proto.gateway.web.v1.AbsoluteTimeRange.serializeBinaryToWriter
3526
+ );
3527
+ }
3528
+ };
3529
+
3530
+
3531
+ /**
3532
+ * optional AnalyticsTimeWindow window = 1;
3533
+ * @return {!proto.gateway.web.v1.AnalyticsTimeWindow}
3534
+ */
3535
+ proto.gateway.web.v1.TimeRange.prototype.getWindow = function() {
3536
+ return /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
3537
+ };
3538
+
3539
+
3540
+ /**
3541
+ * @param {!proto.gateway.web.v1.AnalyticsTimeWindow} value
3542
+ * @return {!proto.gateway.web.v1.TimeRange} returns this
3543
+ */
3544
+ proto.gateway.web.v1.TimeRange.prototype.setWindow = function(value) {
3545
+ return jspb.Message.setOneofField(this, 1, proto.gateway.web.v1.TimeRange.oneofGroups_[0], value);
3546
+ };
3547
+
3548
+
3549
+ /**
3550
+ * Clears the field making it undefined.
3551
+ * @return {!proto.gateway.web.v1.TimeRange} returns this
3552
+ */
3553
+ proto.gateway.web.v1.TimeRange.prototype.clearWindow = function() {
3554
+ return jspb.Message.setOneofField(this, 1, proto.gateway.web.v1.TimeRange.oneofGroups_[0], undefined);
3555
+ };
3556
+
3557
+
3558
+ /**
3559
+ * Returns whether this field is set.
3560
+ * @return {boolean}
3561
+ */
3562
+ proto.gateway.web.v1.TimeRange.prototype.hasWindow = function() {
3563
+ return jspb.Message.getField(this, 1) != null;
3564
+ };
3565
+
3566
+
3567
+ /**
3568
+ * optional AbsoluteTimeRange absolute = 2;
3569
+ * @return {?proto.gateway.web.v1.AbsoluteTimeRange}
2443
3570
  */
2444
- proto.gateway.web.v1.SumQueryRequest.prototype.setTimeInterval = function(value) {
2445
- return jspb.Message.setProto3EnumField(this, 6, value);
3571
+ proto.gateway.web.v1.TimeRange.prototype.getAbsolute = function() {
3572
+ return /** @type{?proto.gateway.web.v1.AbsoluteTimeRange} */ (
3573
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.AbsoluteTimeRange, 2));
3574
+ };
3575
+
3576
+
3577
+ /**
3578
+ * @param {?proto.gateway.web.v1.AbsoluteTimeRange|undefined} value
3579
+ * @return {!proto.gateway.web.v1.TimeRange} returns this
3580
+ */
3581
+ proto.gateway.web.v1.TimeRange.prototype.setAbsolute = function(value) {
3582
+ return jspb.Message.setOneofWrapperField(this, 2, proto.gateway.web.v1.TimeRange.oneofGroups_[0], value);
3583
+ };
3584
+
3585
+
3586
+ /**
3587
+ * Clears the message field making it undefined.
3588
+ * @return {!proto.gateway.web.v1.TimeRange} returns this
3589
+ */
3590
+ proto.gateway.web.v1.TimeRange.prototype.clearAbsolute = function() {
3591
+ return this.setAbsolute(undefined);
3592
+ };
3593
+
3594
+
3595
+ /**
3596
+ * Returns whether this field is set.
3597
+ * @return {boolean}
3598
+ */
3599
+ proto.gateway.web.v1.TimeRange.prototype.hasAbsolute = function() {
3600
+ return jspb.Message.getField(this, 2) != null;
2446
3601
  };
2447
3602
 
2448
3603
 
@@ -2462,8 +3617,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
2462
3617
  * http://goto/soy-param-migration
2463
3618
  * @return {!Object}
2464
3619
  */
2465
- proto.gateway.web.v1.HistogramQueryRequest.prototype.toObject = function(opt_includeInstance) {
2466
- return proto.gateway.web.v1.HistogramQueryRequest.toObject(opt_includeInstance, this);
3620
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.toObject = function(opt_includeInstance) {
3621
+ return proto.gateway.web.v1.AbsoluteTimeRange.toObject(opt_includeInstance, this);
2467
3622
  };
2468
3623
 
2469
3624
 
@@ -2472,19 +3627,14 @@ proto.gateway.web.v1.HistogramQueryRequest.prototype.toObject = function(opt_inc
2472
3627
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2473
3628
  * the JSPB instance for transitional soy proto support:
2474
3629
  * http://goto/soy-param-migration
2475
- * @param {!proto.gateway.web.v1.HistogramQueryRequest} msg The msg instance to transform.
3630
+ * @param {!proto.gateway.web.v1.AbsoluteTimeRange} msg The msg instance to transform.
2476
3631
  * @return {!Object}
2477
3632
  * @suppress {unusedLocalVariables} f is only used for nested messages
2478
3633
  */
2479
- proto.gateway.web.v1.HistogramQueryRequest.toObject = function(includeInstance, msg) {
3634
+ proto.gateway.web.v1.AbsoluteTimeRange.toObject = function(includeInstance, msg) {
2480
3635
  var f, obj = {
2481
- organizationId: jspb.Message.getFieldWithDefault(msg, 1, ""),
2482
- projectId: jspb.Message.getFieldWithDefault(msg, 2, ""),
2483
- metricName: jspb.Message.getFieldWithDefault(msg, 3, ""),
2484
- aggregation: jspb.Message.getFieldWithDefault(msg, 4, 0),
2485
- quantile: jspb.Message.getFloatingPointFieldWithDefault(msg, 5, 0.0),
2486
- timeWindow: jspb.Message.getFieldWithDefault(msg, 6, 0),
2487
- timeInterval: jspb.Message.getFieldWithDefault(msg, 7, 0)
3636
+ start: (f = msg.getStart()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
3637
+ end: (f = msg.getEnd()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f)
2488
3638
  };
2489
3639
 
2490
3640
  if (includeInstance) {
@@ -2498,23 +3648,23 @@ timeInterval: jspb.Message.getFieldWithDefault(msg, 7, 0)
2498
3648
  /**
2499
3649
  * Deserializes binary data (in protobuf wire format).
2500
3650
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
2501
- * @return {!proto.gateway.web.v1.HistogramQueryRequest}
3651
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange}
2502
3652
  */
2503
- proto.gateway.web.v1.HistogramQueryRequest.deserializeBinary = function(bytes) {
3653
+ proto.gateway.web.v1.AbsoluteTimeRange.deserializeBinary = function(bytes) {
2504
3654
  var reader = new jspb.BinaryReader(bytes);
2505
- var msg = new proto.gateway.web.v1.HistogramQueryRequest;
2506
- return proto.gateway.web.v1.HistogramQueryRequest.deserializeBinaryFromReader(msg, reader);
3655
+ var msg = new proto.gateway.web.v1.AbsoluteTimeRange;
3656
+ return proto.gateway.web.v1.AbsoluteTimeRange.deserializeBinaryFromReader(msg, reader);
2507
3657
  };
2508
3658
 
2509
3659
 
2510
3660
  /**
2511
3661
  * Deserializes binary data (in protobuf wire format) from the
2512
3662
  * given reader into the given message object.
2513
- * @param {!proto.gateway.web.v1.HistogramQueryRequest} msg The message object to deserialize into.
3663
+ * @param {!proto.gateway.web.v1.AbsoluteTimeRange} msg The message object to deserialize into.
2514
3664
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2515
- * @return {!proto.gateway.web.v1.HistogramQueryRequest}
3665
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange}
2516
3666
  */
2517
- proto.gateway.web.v1.HistogramQueryRequest.deserializeBinaryFromReader = function(msg, reader) {
3667
+ proto.gateway.web.v1.AbsoluteTimeRange.deserializeBinaryFromReader = function(msg, reader) {
2518
3668
  while (reader.nextField()) {
2519
3669
  if (reader.isEndGroup()) {
2520
3670
  break;
@@ -2522,32 +3672,14 @@ proto.gateway.web.v1.HistogramQueryRequest.deserializeBinaryFromReader = functio
2522
3672
  var field = reader.getFieldNumber();
2523
3673
  switch (field) {
2524
3674
  case 1:
2525
- var value = /** @type {string} */ (reader.readString());
2526
- msg.setOrganizationId(value);
3675
+ var value = new google_protobuf_timestamp_pb.Timestamp;
3676
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3677
+ msg.setStart(value);
2527
3678
  break;
2528
3679
  case 2:
2529
- var value = /** @type {string} */ (reader.readString());
2530
- msg.setProjectId(value);
2531
- break;
2532
- case 3:
2533
- var value = /** @type {string} */ (reader.readString());
2534
- msg.setMetricName(value);
2535
- break;
2536
- case 4:
2537
- var value = /** @type {!proto.gateway.web.v1.HistogramAggregation} */ (reader.readEnum());
2538
- msg.setAggregation(value);
2539
- break;
2540
- case 5:
2541
- var value = /** @type {number} */ (reader.readDouble());
2542
- msg.setQuantile(value);
2543
- break;
2544
- case 6:
2545
- var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (reader.readEnum());
2546
- msg.setTimeWindow(value);
2547
- break;
2548
- case 7:
2549
- var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (reader.readEnum());
2550
- msg.setTimeInterval(value);
3680
+ var value = new google_protobuf_timestamp_pb.Timestamp;
3681
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3682
+ msg.setEnd(value);
2551
3683
  break;
2552
3684
  default:
2553
3685
  reader.skipField();
@@ -2562,9 +3694,9 @@ proto.gateway.web.v1.HistogramQueryRequest.deserializeBinaryFromReader = functio
2562
3694
  * Serializes the message to binary data (in protobuf wire format).
2563
3695
  * @return {!Uint8Array}
2564
3696
  */
2565
- proto.gateway.web.v1.HistogramQueryRequest.prototype.serializeBinary = function() {
3697
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.serializeBinary = function() {
2566
3698
  var writer = new jspb.BinaryWriter();
2567
- proto.gateway.web.v1.HistogramQueryRequest.serializeBinaryToWriter(this, writer);
3699
+ proto.gateway.web.v1.AbsoluteTimeRange.serializeBinaryToWriter(this, writer);
2568
3700
  return writer.getResultBuffer();
2569
3701
  };
2570
3702
 
@@ -2572,187 +3704,102 @@ proto.gateway.web.v1.HistogramQueryRequest.prototype.serializeBinary = function(
2572
3704
  /**
2573
3705
  * Serializes the given message to binary data (in protobuf wire
2574
3706
  * format), writing to the given BinaryWriter.
2575
- * @param {!proto.gateway.web.v1.HistogramQueryRequest} message
3707
+ * @param {!proto.gateway.web.v1.AbsoluteTimeRange} message
2576
3708
  * @param {!jspb.BinaryWriter} writer
2577
3709
  * @suppress {unusedLocalVariables} f is only used for nested messages
2578
3710
  */
2579
- proto.gateway.web.v1.HistogramQueryRequest.serializeBinaryToWriter = function(message, writer) {
3711
+ proto.gateway.web.v1.AbsoluteTimeRange.serializeBinaryToWriter = function(message, writer) {
2580
3712
  var f = undefined;
2581
- f = message.getOrganizationId();
2582
- if (f.length > 0) {
2583
- writer.writeString(
3713
+ f = message.getStart();
3714
+ if (f != null) {
3715
+ writer.writeMessage(
2584
3716
  1,
2585
- f
3717
+ f,
3718
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
2586
3719
  );
2587
3720
  }
2588
- f = message.getProjectId();
2589
- if (f.length > 0) {
2590
- writer.writeString(
3721
+ f = message.getEnd();
3722
+ if (f != null) {
3723
+ writer.writeMessage(
2591
3724
  2,
2592
- f
2593
- );
2594
- }
2595
- f = message.getMetricName();
2596
- if (f.length > 0) {
2597
- writer.writeString(
2598
- 3,
2599
- f
2600
- );
2601
- }
2602
- f = message.getAggregation();
2603
- if (f !== 0.0) {
2604
- writer.writeEnum(
2605
- 4,
2606
- f
2607
- );
2608
- }
2609
- f = message.getQuantile();
2610
- if (f !== 0.0) {
2611
- writer.writeDouble(
2612
- 5,
2613
- f
2614
- );
2615
- }
2616
- f = message.getTimeWindow();
2617
- if (f !== 0.0) {
2618
- writer.writeEnum(
2619
- 6,
2620
- f
2621
- );
2622
- }
2623
- f = message.getTimeInterval();
2624
- if (f !== 0.0) {
2625
- writer.writeEnum(
2626
- 7,
2627
- f
3725
+ f,
3726
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
2628
3727
  );
2629
3728
  }
2630
3729
  };
2631
3730
 
2632
3731
 
2633
3732
  /**
2634
- * optional string organization_id = 1;
2635
- * @return {string}
2636
- */
2637
- proto.gateway.web.v1.HistogramQueryRequest.prototype.getOrganizationId = function() {
2638
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
2639
- };
2640
-
2641
-
2642
- /**
2643
- * @param {string} value
2644
- * @return {!proto.gateway.web.v1.HistogramQueryRequest} returns this
2645
- */
2646
- proto.gateway.web.v1.HistogramQueryRequest.prototype.setOrganizationId = function(value) {
2647
- return jspb.Message.setProto3StringField(this, 1, value);
2648
- };
2649
-
2650
-
2651
- /**
2652
- * optional string project_id = 2;
2653
- * @return {string}
2654
- */
2655
- proto.gateway.web.v1.HistogramQueryRequest.prototype.getProjectId = function() {
2656
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
2657
- };
2658
-
2659
-
2660
- /**
2661
- * @param {string} value
2662
- * @return {!proto.gateway.web.v1.HistogramQueryRequest} returns this
2663
- */
2664
- proto.gateway.web.v1.HistogramQueryRequest.prototype.setProjectId = function(value) {
2665
- return jspb.Message.setProto3StringField(this, 2, value);
2666
- };
2667
-
2668
-
2669
- /**
2670
- * optional string metric_name = 3;
2671
- * @return {string}
2672
- */
2673
- proto.gateway.web.v1.HistogramQueryRequest.prototype.getMetricName = function() {
2674
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
2675
- };
2676
-
2677
-
2678
- /**
2679
- * @param {string} value
2680
- * @return {!proto.gateway.web.v1.HistogramQueryRequest} returns this
2681
- */
2682
- proto.gateway.web.v1.HistogramQueryRequest.prototype.setMetricName = function(value) {
2683
- return jspb.Message.setProto3StringField(this, 3, value);
2684
- };
2685
-
2686
-
2687
- /**
2688
- * optional HistogramAggregation aggregation = 4;
2689
- * @return {!proto.gateway.web.v1.HistogramAggregation}
3733
+ * optional google.protobuf.Timestamp start = 1;
3734
+ * @return {?proto.google.protobuf.Timestamp}
2690
3735
  */
2691
- proto.gateway.web.v1.HistogramQueryRequest.prototype.getAggregation = function() {
2692
- return /** @type {!proto.gateway.web.v1.HistogramAggregation} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
3736
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.getStart = function() {
3737
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
3738
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 1));
2693
3739
  };
2694
3740
 
2695
3741
 
2696
3742
  /**
2697
- * @param {!proto.gateway.web.v1.HistogramAggregation} value
2698
- * @return {!proto.gateway.web.v1.HistogramQueryRequest} returns this
2699
- */
2700
- proto.gateway.web.v1.HistogramQueryRequest.prototype.setAggregation = function(value) {
2701
- return jspb.Message.setProto3EnumField(this, 4, value);
3743
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
3744
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange} returns this
3745
+ */
3746
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.setStart = function(value) {
3747
+ return jspb.Message.setWrapperField(this, 1, value);
2702
3748
  };
2703
3749
 
2704
3750
 
2705
3751
  /**
2706
- * optional double quantile = 5;
2707
- * @return {number}
3752
+ * Clears the message field making it undefined.
3753
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange} returns this
2708
3754
  */
2709
- proto.gateway.web.v1.HistogramQueryRequest.prototype.getQuantile = function() {
2710
- return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 5, 0.0));
3755
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.clearStart = function() {
3756
+ return this.setStart(undefined);
2711
3757
  };
2712
3758
 
2713
3759
 
2714
3760
  /**
2715
- * @param {number} value
2716
- * @return {!proto.gateway.web.v1.HistogramQueryRequest} returns this
3761
+ * Returns whether this field is set.
3762
+ * @return {boolean}
2717
3763
  */
2718
- proto.gateway.web.v1.HistogramQueryRequest.prototype.setQuantile = function(value) {
2719
- return jspb.Message.setProto3FloatField(this, 5, value);
3764
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.hasStart = function() {
3765
+ return jspb.Message.getField(this, 1) != null;
2720
3766
  };
2721
3767
 
2722
3768
 
2723
3769
  /**
2724
- * optional AnalyticsTimeWindow time_window = 6;
2725
- * @return {!proto.gateway.web.v1.AnalyticsTimeWindow}
3770
+ * optional google.protobuf.Timestamp end = 2;
3771
+ * @return {?proto.google.protobuf.Timestamp}
2726
3772
  */
2727
- proto.gateway.web.v1.HistogramQueryRequest.prototype.getTimeWindow = function() {
2728
- return /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
3773
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.getEnd = function() {
3774
+ return /** @type{?proto.google.protobuf.Timestamp} */ (
3775
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 2));
2729
3776
  };
2730
3777
 
2731
3778
 
2732
3779
  /**
2733
- * @param {!proto.gateway.web.v1.AnalyticsTimeWindow} value
2734
- * @return {!proto.gateway.web.v1.HistogramQueryRequest} returns this
2735
- */
2736
- proto.gateway.web.v1.HistogramQueryRequest.prototype.setTimeWindow = function(value) {
2737
- return jspb.Message.setProto3EnumField(this, 6, value);
3780
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
3781
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange} returns this
3782
+ */
3783
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.setEnd = function(value) {
3784
+ return jspb.Message.setWrapperField(this, 2, value);
2738
3785
  };
2739
3786
 
2740
3787
 
2741
3788
  /**
2742
- * optional AnalyticsTimeInterval time_interval = 7;
2743
- * @return {!proto.gateway.web.v1.AnalyticsTimeInterval}
3789
+ * Clears the message field making it undefined.
3790
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange} returns this
2744
3791
  */
2745
- proto.gateway.web.v1.HistogramQueryRequest.prototype.getTimeInterval = function() {
2746
- return /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (jspb.Message.getFieldWithDefault(this, 7, 0));
3792
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.clearEnd = function() {
3793
+ return this.setEnd(undefined);
2747
3794
  };
2748
3795
 
2749
3796
 
2750
3797
  /**
2751
- * @param {!proto.gateway.web.v1.AnalyticsTimeInterval} value
2752
- * @return {!proto.gateway.web.v1.HistogramQueryRequest} returns this
3798
+ * Returns whether this field is set.
3799
+ * @return {boolean}
2753
3800
  */
2754
- proto.gateway.web.v1.HistogramQueryRequest.prototype.setTimeInterval = function(value) {
2755
- return jspb.Message.setProto3EnumField(this, 7, value);
3801
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.hasEnd = function() {
3802
+ return jspb.Message.getField(this, 2) != null;
2756
3803
  };
2757
3804
 
2758
3805
 
@@ -2765,22 +3812,22 @@ proto.gateway.web.v1.HistogramQueryRequest.prototype.setTimeInterval = function(
2765
3812
  * @private {!Array<!Array<number>>}
2766
3813
  * @const
2767
3814
  */
2768
- proto.gateway.web.v1.MetricAnalyticsEnvelope.oneofGroups_ = [[1,2]];
3815
+ proto.gateway.web.v1.QueryDataEnvelope.oneofGroups_ = [[1,2]];
2769
3816
 
2770
3817
  /**
2771
3818
  * @enum {number}
2772
3819
  */
2773
- proto.gateway.web.v1.MetricAnalyticsEnvelope.EventCase = {
3820
+ proto.gateway.web.v1.QueryDataEnvelope.EventCase = {
2774
3821
  EVENT_NOT_SET: 0,
2775
3822
  SNAPSHOT: 1,
2776
- BUCKET_UPDATE: 2
3823
+ UPDATE: 2
2777
3824
  };
2778
3825
 
2779
3826
  /**
2780
- * @return {proto.gateway.web.v1.MetricAnalyticsEnvelope.EventCase}
3827
+ * @return {proto.gateway.web.v1.QueryDataEnvelope.EventCase}
2781
3828
  */
2782
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.getEventCase = function() {
2783
- return /** @type {proto.gateway.web.v1.MetricAnalyticsEnvelope.EventCase} */(jspb.Message.computeOneofCase(this, proto.gateway.web.v1.MetricAnalyticsEnvelope.oneofGroups_[0]));
3829
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.getEventCase = function() {
3830
+ return /** @type {proto.gateway.web.v1.QueryDataEnvelope.EventCase} */(jspb.Message.computeOneofCase(this, proto.gateway.web.v1.QueryDataEnvelope.oneofGroups_[0]));
2784
3831
  };
2785
3832
 
2786
3833
 
@@ -2798,8 +3845,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
2798
3845
  * http://goto/soy-param-migration
2799
3846
  * @return {!Object}
2800
3847
  */
2801
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.toObject = function(opt_includeInstance) {
2802
- return proto.gateway.web.v1.MetricAnalyticsEnvelope.toObject(opt_includeInstance, this);
3848
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.toObject = function(opt_includeInstance) {
3849
+ return proto.gateway.web.v1.QueryDataEnvelope.toObject(opt_includeInstance, this);
2803
3850
  };
2804
3851
 
2805
3852
 
@@ -2808,14 +3855,14 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.toObject = function(opt_i
2808
3855
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2809
3856
  * the JSPB instance for transitional soy proto support:
2810
3857
  * http://goto/soy-param-migration
2811
- * @param {!proto.gateway.web.v1.MetricAnalyticsEnvelope} msg The msg instance to transform.
3858
+ * @param {!proto.gateway.web.v1.QueryDataEnvelope} msg The msg instance to transform.
2812
3859
  * @return {!Object}
2813
3860
  * @suppress {unusedLocalVariables} f is only used for nested messages
2814
3861
  */
2815
- proto.gateway.web.v1.MetricAnalyticsEnvelope.toObject = function(includeInstance, msg) {
3862
+ proto.gateway.web.v1.QueryDataEnvelope.toObject = function(includeInstance, msg) {
2816
3863
  var f, obj = {
2817
- snapshot: (f = msg.getSnapshot()) && proto.gateway.web.v1.MetricAnalyticsSnapshot.toObject(includeInstance, f),
2818
- bucketUpdate: (f = msg.getBucketUpdate()) && proto.gateway.web.v1.MetricSeriesBucketUpdate.toObject(includeInstance, f)
3864
+ snapshot: (f = msg.getSnapshot()) && proto.gateway.web.v1.QuerySnapshot.toObject(includeInstance, f),
3865
+ update: (f = msg.getUpdate()) && proto.gateway.web.v1.QuerySeriesUpdate.toObject(includeInstance, f)
2819
3866
  };
2820
3867
 
2821
3868
  if (includeInstance) {
@@ -2829,23 +3876,23 @@ bucketUpdate: (f = msg.getBucketUpdate()) && proto.gateway.web.v1.MetricSeriesBu
2829
3876
  /**
2830
3877
  * Deserializes binary data (in protobuf wire format).
2831
3878
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
2832
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope}
3879
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope}
2833
3880
  */
2834
- proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinary = function(bytes) {
3881
+ proto.gateway.web.v1.QueryDataEnvelope.deserializeBinary = function(bytes) {
2835
3882
  var reader = new jspb.BinaryReader(bytes);
2836
- var msg = new proto.gateway.web.v1.MetricAnalyticsEnvelope;
2837
- return proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinaryFromReader(msg, reader);
3883
+ var msg = new proto.gateway.web.v1.QueryDataEnvelope;
3884
+ return proto.gateway.web.v1.QueryDataEnvelope.deserializeBinaryFromReader(msg, reader);
2838
3885
  };
2839
3886
 
2840
3887
 
2841
3888
  /**
2842
3889
  * Deserializes binary data (in protobuf wire format) from the
2843
3890
  * given reader into the given message object.
2844
- * @param {!proto.gateway.web.v1.MetricAnalyticsEnvelope} msg The message object to deserialize into.
3891
+ * @param {!proto.gateway.web.v1.QueryDataEnvelope} msg The message object to deserialize into.
2845
3892
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2846
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope}
3893
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope}
2847
3894
  */
2848
- proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinaryFromReader = function(msg, reader) {
3895
+ proto.gateway.web.v1.QueryDataEnvelope.deserializeBinaryFromReader = function(msg, reader) {
2849
3896
  while (reader.nextField()) {
2850
3897
  if (reader.isEndGroup()) {
2851
3898
  break;
@@ -2853,14 +3900,14 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinaryFromReader = funct
2853
3900
  var field = reader.getFieldNumber();
2854
3901
  switch (field) {
2855
3902
  case 1:
2856
- var value = new proto.gateway.web.v1.MetricAnalyticsSnapshot;
2857
- reader.readMessage(value,proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader);
3903
+ var value = new proto.gateway.web.v1.QuerySnapshot;
3904
+ reader.readMessage(value,proto.gateway.web.v1.QuerySnapshot.deserializeBinaryFromReader);
2858
3905
  msg.setSnapshot(value);
2859
3906
  break;
2860
3907
  case 2:
2861
- var value = new proto.gateway.web.v1.MetricSeriesBucketUpdate;
2862
- reader.readMessage(value,proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader);
2863
- msg.setBucketUpdate(value);
3908
+ var value = new proto.gateway.web.v1.QuerySeriesUpdate;
3909
+ reader.readMessage(value,proto.gateway.web.v1.QuerySeriesUpdate.deserializeBinaryFromReader);
3910
+ msg.setUpdate(value);
2864
3911
  break;
2865
3912
  default:
2866
3913
  reader.skipField();
@@ -2875,9 +3922,9 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinaryFromReader = funct
2875
3922
  * Serializes the message to binary data (in protobuf wire format).
2876
3923
  * @return {!Uint8Array}
2877
3924
  */
2878
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.serializeBinary = function() {
3925
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.serializeBinary = function() {
2879
3926
  var writer = new jspb.BinaryWriter();
2880
- proto.gateway.web.v1.MetricAnalyticsEnvelope.serializeBinaryToWriter(this, writer);
3927
+ proto.gateway.web.v1.QueryDataEnvelope.serializeBinaryToWriter(this, writer);
2881
3928
  return writer.getResultBuffer();
2882
3929
  };
2883
3930
 
@@ -2885,55 +3932,55 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.serializeBinary = functio
2885
3932
  /**
2886
3933
  * Serializes the given message to binary data (in protobuf wire
2887
3934
  * format), writing to the given BinaryWriter.
2888
- * @param {!proto.gateway.web.v1.MetricAnalyticsEnvelope} message
3935
+ * @param {!proto.gateway.web.v1.QueryDataEnvelope} message
2889
3936
  * @param {!jspb.BinaryWriter} writer
2890
3937
  * @suppress {unusedLocalVariables} f is only used for nested messages
2891
3938
  */
2892
- proto.gateway.web.v1.MetricAnalyticsEnvelope.serializeBinaryToWriter = function(message, writer) {
3939
+ proto.gateway.web.v1.QueryDataEnvelope.serializeBinaryToWriter = function(message, writer) {
2893
3940
  var f = undefined;
2894
3941
  f = message.getSnapshot();
2895
3942
  if (f != null) {
2896
3943
  writer.writeMessage(
2897
3944
  1,
2898
3945
  f,
2899
- proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter
3946
+ proto.gateway.web.v1.QuerySnapshot.serializeBinaryToWriter
2900
3947
  );
2901
3948
  }
2902
- f = message.getBucketUpdate();
3949
+ f = message.getUpdate();
2903
3950
  if (f != null) {
2904
3951
  writer.writeMessage(
2905
3952
  2,
2906
3953
  f,
2907
- proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter
3954
+ proto.gateway.web.v1.QuerySeriesUpdate.serializeBinaryToWriter
2908
3955
  );
2909
3956
  }
2910
3957
  };
2911
3958
 
2912
3959
 
2913
3960
  /**
2914
- * optional MetricAnalyticsSnapshot snapshot = 1;
2915
- * @return {?proto.gateway.web.v1.MetricAnalyticsSnapshot}
3961
+ * optional QuerySnapshot snapshot = 1;
3962
+ * @return {?proto.gateway.web.v1.QuerySnapshot}
2916
3963
  */
2917
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.getSnapshot = function() {
2918
- return /** @type{?proto.gateway.web.v1.MetricAnalyticsSnapshot} */ (
2919
- jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricAnalyticsSnapshot, 1));
3964
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.getSnapshot = function() {
3965
+ return /** @type{?proto.gateway.web.v1.QuerySnapshot} */ (
3966
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.QuerySnapshot, 1));
2920
3967
  };
2921
3968
 
2922
3969
 
2923
3970
  /**
2924
- * @param {?proto.gateway.web.v1.MetricAnalyticsSnapshot|undefined} value
2925
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope} returns this
3971
+ * @param {?proto.gateway.web.v1.QuerySnapshot|undefined} value
3972
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope} returns this
2926
3973
  */
2927
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.setSnapshot = function(value) {
2928
- return jspb.Message.setOneofWrapperField(this, 1, proto.gateway.web.v1.MetricAnalyticsEnvelope.oneofGroups_[0], value);
3974
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.setSnapshot = function(value) {
3975
+ return jspb.Message.setOneofWrapperField(this, 1, proto.gateway.web.v1.QueryDataEnvelope.oneofGroups_[0], value);
2929
3976
  };
2930
3977
 
2931
3978
 
2932
3979
  /**
2933
3980
  * Clears the message field making it undefined.
2934
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope} returns this
3981
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope} returns this
2935
3982
  */
2936
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.clearSnapshot = function() {
3983
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.clearSnapshot = function() {
2937
3984
  return this.setSnapshot(undefined);
2938
3985
  };
2939
3986
 
@@ -2942,36 +3989,36 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.clearSnapshot = function(
2942
3989
  * Returns whether this field is set.
2943
3990
  * @return {boolean}
2944
3991
  */
2945
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.hasSnapshot = function() {
3992
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.hasSnapshot = function() {
2946
3993
  return jspb.Message.getField(this, 1) != null;
2947
3994
  };
2948
3995
 
2949
3996
 
2950
3997
  /**
2951
- * optional MetricSeriesBucketUpdate bucket_update = 2;
2952
- * @return {?proto.gateway.web.v1.MetricSeriesBucketUpdate}
3998
+ * optional QuerySeriesUpdate update = 2;
3999
+ * @return {?proto.gateway.web.v1.QuerySeriesUpdate}
2953
4000
  */
2954
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.getBucketUpdate = function() {
2955
- return /** @type{?proto.gateway.web.v1.MetricSeriesBucketUpdate} */ (
2956
- jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricSeriesBucketUpdate, 2));
4001
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.getUpdate = function() {
4002
+ return /** @type{?proto.gateway.web.v1.QuerySeriesUpdate} */ (
4003
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.QuerySeriesUpdate, 2));
2957
4004
  };
2958
4005
 
2959
4006
 
2960
4007
  /**
2961
- * @param {?proto.gateway.web.v1.MetricSeriesBucketUpdate|undefined} value
2962
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope} returns this
4008
+ * @param {?proto.gateway.web.v1.QuerySeriesUpdate|undefined} value
4009
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope} returns this
2963
4010
  */
2964
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.setBucketUpdate = function(value) {
2965
- return jspb.Message.setOneofWrapperField(this, 2, proto.gateway.web.v1.MetricAnalyticsEnvelope.oneofGroups_[0], value);
4011
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.setUpdate = function(value) {
4012
+ return jspb.Message.setOneofWrapperField(this, 2, proto.gateway.web.v1.QueryDataEnvelope.oneofGroups_[0], value);
2966
4013
  };
2967
4014
 
2968
4015
 
2969
4016
  /**
2970
4017
  * Clears the message field making it undefined.
2971
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope} returns this
4018
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope} returns this
2972
4019
  */
2973
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.clearBucketUpdate = function() {
2974
- return this.setBucketUpdate(undefined);
4020
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.clearUpdate = function() {
4021
+ return this.setUpdate(undefined);
2975
4022
  };
2976
4023
 
2977
4024
 
@@ -2979,7 +4026,7 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.clearBucketUpdate = funct
2979
4026
  * Returns whether this field is set.
2980
4027
  * @return {boolean}
2981
4028
  */
2982
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.hasBucketUpdate = function() {
4029
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.hasUpdate = function() {
2983
4030
  return jspb.Message.getField(this, 2) != null;
2984
4031
  };
2985
4032
 
@@ -2990,7 +4037,7 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.hasBucketUpdate = functio
2990
4037
  * @private {!Array<number>}
2991
4038
  * @const
2992
4039
  */
2993
- proto.gateway.web.v1.MetricAnalyticsSnapshot.repeatedFields_ = [1];
4040
+ proto.gateway.web.v1.QuerySnapshot.repeatedFields_ = [1];
2994
4041
 
2995
4042
 
2996
4043
 
@@ -3007,8 +4054,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
3007
4054
  * http://goto/soy-param-migration
3008
4055
  * @return {!Object}
3009
4056
  */
3010
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.toObject = function(opt_includeInstance) {
3011
- return proto.gateway.web.v1.MetricAnalyticsSnapshot.toObject(opt_includeInstance, this);
4057
+ proto.gateway.web.v1.QuerySnapshot.prototype.toObject = function(opt_includeInstance) {
4058
+ return proto.gateway.web.v1.QuerySnapshot.toObject(opt_includeInstance, this);
3012
4059
  };
3013
4060
 
3014
4061
 
@@ -3017,16 +4064,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.toObject = function(opt_i
3017
4064
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3018
4065
  * the JSPB instance for transitional soy proto support:
3019
4066
  * http://goto/soy-param-migration
3020
- * @param {!proto.gateway.web.v1.MetricAnalyticsSnapshot} msg The msg instance to transform.
4067
+ * @param {!proto.gateway.web.v1.QuerySnapshot} msg The msg instance to transform.
3021
4068
  * @return {!Object}
3022
4069
  * @suppress {unusedLocalVariables} f is only used for nested messages
3023
4070
  */
3024
- proto.gateway.web.v1.MetricAnalyticsSnapshot.toObject = function(includeInstance, msg) {
4071
+ proto.gateway.web.v1.QuerySnapshot.toObject = function(includeInstance, msg) {
3025
4072
  var f, obj = {
3026
4073
  seriesList: jspb.Message.toObjectList(msg.getSeriesList(),
3027
4074
  proto.gateway.web.v1.MetricSeries.toObject, includeInstance),
3028
- windowStart: (f = msg.getWindowStart()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
3029
- windowEnd: (f = msg.getWindowEnd()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
4075
+ rangeStart: (f = msg.getRangeStart()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
4076
+ rangeEnd: (f = msg.getRangeEnd()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
3030
4077
  bucketSizeMs: jspb.Message.getFieldWithDefault(msg, 4, 0),
3031
4078
  expectedBucketCount: jspb.Message.getFieldWithDefault(msg, 5, 0),
3032
4079
  unit: jspb.Message.getFieldWithDefault(msg, 6, "")
@@ -3043,23 +4090,23 @@ unit: jspb.Message.getFieldWithDefault(msg, 6, "")
3043
4090
  /**
3044
4091
  * Deserializes binary data (in protobuf wire format).
3045
4092
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
3046
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot}
4093
+ * @return {!proto.gateway.web.v1.QuerySnapshot}
3047
4094
  */
3048
- proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinary = function(bytes) {
4095
+ proto.gateway.web.v1.QuerySnapshot.deserializeBinary = function(bytes) {
3049
4096
  var reader = new jspb.BinaryReader(bytes);
3050
- var msg = new proto.gateway.web.v1.MetricAnalyticsSnapshot;
3051
- return proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader(msg, reader);
4097
+ var msg = new proto.gateway.web.v1.QuerySnapshot;
4098
+ return proto.gateway.web.v1.QuerySnapshot.deserializeBinaryFromReader(msg, reader);
3052
4099
  };
3053
4100
 
3054
4101
 
3055
4102
  /**
3056
4103
  * Deserializes binary data (in protobuf wire format) from the
3057
4104
  * given reader into the given message object.
3058
- * @param {!proto.gateway.web.v1.MetricAnalyticsSnapshot} msg The message object to deserialize into.
4105
+ * @param {!proto.gateway.web.v1.QuerySnapshot} msg The message object to deserialize into.
3059
4106
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3060
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot}
4107
+ * @return {!proto.gateway.web.v1.QuerySnapshot}
3061
4108
  */
3062
- proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader = function(msg, reader) {
4109
+ proto.gateway.web.v1.QuerySnapshot.deserializeBinaryFromReader = function(msg, reader) {
3063
4110
  while (reader.nextField()) {
3064
4111
  if (reader.isEndGroup()) {
3065
4112
  break;
@@ -3074,12 +4121,12 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader = funct
3074
4121
  case 2:
3075
4122
  var value = new google_protobuf_timestamp_pb.Timestamp;
3076
4123
  reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3077
- msg.setWindowStart(value);
4124
+ msg.setRangeStart(value);
3078
4125
  break;
3079
4126
  case 3:
3080
4127
  var value = new google_protobuf_timestamp_pb.Timestamp;
3081
4128
  reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3082
- msg.setWindowEnd(value);
4129
+ msg.setRangeEnd(value);
3083
4130
  break;
3084
4131
  case 4:
3085
4132
  var value = /** @type {number} */ (reader.readInt64());
@@ -3106,9 +4153,9 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader = funct
3106
4153
  * Serializes the message to binary data (in protobuf wire format).
3107
4154
  * @return {!Uint8Array}
3108
4155
  */
3109
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.serializeBinary = function() {
4156
+ proto.gateway.web.v1.QuerySnapshot.prototype.serializeBinary = function() {
3110
4157
  var writer = new jspb.BinaryWriter();
3111
- proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter(this, writer);
4158
+ proto.gateway.web.v1.QuerySnapshot.serializeBinaryToWriter(this, writer);
3112
4159
  return writer.getResultBuffer();
3113
4160
  };
3114
4161
 
@@ -3116,11 +4163,11 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.serializeBinary = functio
3116
4163
  /**
3117
4164
  * Serializes the given message to binary data (in protobuf wire
3118
4165
  * format), writing to the given BinaryWriter.
3119
- * @param {!proto.gateway.web.v1.MetricAnalyticsSnapshot} message
4166
+ * @param {!proto.gateway.web.v1.QuerySnapshot} message
3120
4167
  * @param {!jspb.BinaryWriter} writer
3121
4168
  * @suppress {unusedLocalVariables} f is only used for nested messages
3122
4169
  */
3123
- proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter = function(message, writer) {
4170
+ proto.gateway.web.v1.QuerySnapshot.serializeBinaryToWriter = function(message, writer) {
3124
4171
  var f = undefined;
3125
4172
  f = message.getSeriesList();
3126
4173
  if (f.length > 0) {
@@ -3130,7 +4177,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter = function(
3130
4177
  proto.gateway.web.v1.MetricSeries.serializeBinaryToWriter
3131
4178
  );
3132
4179
  }
3133
- f = message.getWindowStart();
4180
+ f = message.getRangeStart();
3134
4181
  if (f != null) {
3135
4182
  writer.writeMessage(
3136
4183
  2,
@@ -3138,7 +4185,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter = function(
3138
4185
  google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
3139
4186
  );
3140
4187
  }
3141
- f = message.getWindowEnd();
4188
+ f = message.getRangeEnd();
3142
4189
  if (f != null) {
3143
4190
  writer.writeMessage(
3144
4191
  3,
@@ -3174,7 +4221,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter = function(
3174
4221
  * repeated MetricSeries series = 1;
3175
4222
  * @return {!Array<!proto.gateway.web.v1.MetricSeries>}
3176
4223
  */
3177
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getSeriesList = function() {
4224
+ proto.gateway.web.v1.QuerySnapshot.prototype.getSeriesList = function() {
3178
4225
  return /** @type{!Array<!proto.gateway.web.v1.MetricSeries>} */ (
3179
4226
  jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricSeries, 1));
3180
4227
  };
@@ -3182,9 +4229,9 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getSeriesList = function(
3182
4229
 
3183
4230
  /**
3184
4231
  * @param {!Array<!proto.gateway.web.v1.MetricSeries>} value
3185
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4232
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3186
4233
  */
3187
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setSeriesList = function(value) {
4234
+ proto.gateway.web.v1.QuerySnapshot.prototype.setSeriesList = function(value) {
3188
4235
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
3189
4236
  };
3190
4237
 
@@ -3194,25 +4241,25 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setSeriesList = function(
3194
4241
  * @param {number=} opt_index
3195
4242
  * @return {!proto.gateway.web.v1.MetricSeries}
3196
4243
  */
3197
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.addSeries = function(opt_value, opt_index) {
4244
+ proto.gateway.web.v1.QuerySnapshot.prototype.addSeries = function(opt_value, opt_index) {
3198
4245
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.gateway.web.v1.MetricSeries, opt_index);
3199
4246
  };
3200
4247
 
3201
4248
 
3202
4249
  /**
3203
4250
  * Clears the list making it empty but non-null.
3204
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4251
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3205
4252
  */
3206
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearSeriesList = function() {
4253
+ proto.gateway.web.v1.QuerySnapshot.prototype.clearSeriesList = function() {
3207
4254
  return this.setSeriesList([]);
3208
4255
  };
3209
4256
 
3210
4257
 
3211
4258
  /**
3212
- * optional google.protobuf.Timestamp window_start = 2;
4259
+ * optional google.protobuf.Timestamp range_start = 2;
3213
4260
  * @return {?proto.google.protobuf.Timestamp}
3214
4261
  */
3215
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getWindowStart = function() {
4262
+ proto.gateway.web.v1.QuerySnapshot.prototype.getRangeStart = function() {
3216
4263
  return /** @type{?proto.google.protobuf.Timestamp} */ (
3217
4264
  jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 2));
3218
4265
  };
@@ -3220,19 +4267,19 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getWindowStart = function
3220
4267
 
3221
4268
  /**
3222
4269
  * @param {?proto.google.protobuf.Timestamp|undefined} value
3223
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4270
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3224
4271
  */
3225
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setWindowStart = function(value) {
4272
+ proto.gateway.web.v1.QuerySnapshot.prototype.setRangeStart = function(value) {
3226
4273
  return jspb.Message.setWrapperField(this, 2, value);
3227
4274
  };
3228
4275
 
3229
4276
 
3230
4277
  /**
3231
4278
  * Clears the message field making it undefined.
3232
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4279
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3233
4280
  */
3234
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearWindowStart = function() {
3235
- return this.setWindowStart(undefined);
4281
+ proto.gateway.web.v1.QuerySnapshot.prototype.clearRangeStart = function() {
4282
+ return this.setRangeStart(undefined);
3236
4283
  };
3237
4284
 
3238
4285
 
@@ -3240,16 +4287,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearWindowStart = functi
3240
4287
  * Returns whether this field is set.
3241
4288
  * @return {boolean}
3242
4289
  */
3243
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.hasWindowStart = function() {
4290
+ proto.gateway.web.v1.QuerySnapshot.prototype.hasRangeStart = function() {
3244
4291
  return jspb.Message.getField(this, 2) != null;
3245
4292
  };
3246
4293
 
3247
4294
 
3248
4295
  /**
3249
- * optional google.protobuf.Timestamp window_end = 3;
4296
+ * optional google.protobuf.Timestamp range_end = 3;
3250
4297
  * @return {?proto.google.protobuf.Timestamp}
3251
4298
  */
3252
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getWindowEnd = function() {
4299
+ proto.gateway.web.v1.QuerySnapshot.prototype.getRangeEnd = function() {
3253
4300
  return /** @type{?proto.google.protobuf.Timestamp} */ (
3254
4301
  jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 3));
3255
4302
  };
@@ -3257,19 +4304,19 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getWindowEnd = function()
3257
4304
 
3258
4305
  /**
3259
4306
  * @param {?proto.google.protobuf.Timestamp|undefined} value
3260
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4307
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3261
4308
  */
3262
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setWindowEnd = function(value) {
4309
+ proto.gateway.web.v1.QuerySnapshot.prototype.setRangeEnd = function(value) {
3263
4310
  return jspb.Message.setWrapperField(this, 3, value);
3264
4311
  };
3265
4312
 
3266
4313
 
3267
4314
  /**
3268
4315
  * Clears the message field making it undefined.
3269
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4316
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3270
4317
  */
3271
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearWindowEnd = function() {
3272
- return this.setWindowEnd(undefined);
4318
+ proto.gateway.web.v1.QuerySnapshot.prototype.clearRangeEnd = function() {
4319
+ return this.setRangeEnd(undefined);
3273
4320
  };
3274
4321
 
3275
4322
 
@@ -3277,7 +4324,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearWindowEnd = function
3277
4324
  * Returns whether this field is set.
3278
4325
  * @return {boolean}
3279
4326
  */
3280
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.hasWindowEnd = function() {
4327
+ proto.gateway.web.v1.QuerySnapshot.prototype.hasRangeEnd = function() {
3281
4328
  return jspb.Message.getField(this, 3) != null;
3282
4329
  };
3283
4330
 
@@ -3286,16 +4333,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.hasWindowEnd = function()
3286
4333
  * optional int64 bucket_size_ms = 4;
3287
4334
  * @return {number}
3288
4335
  */
3289
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getBucketSizeMs = function() {
4336
+ proto.gateway.web.v1.QuerySnapshot.prototype.getBucketSizeMs = function() {
3290
4337
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
3291
4338
  };
3292
4339
 
3293
4340
 
3294
4341
  /**
3295
4342
  * @param {number} value
3296
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4343
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3297
4344
  */
3298
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setBucketSizeMs = function(value) {
4345
+ proto.gateway.web.v1.QuerySnapshot.prototype.setBucketSizeMs = function(value) {
3299
4346
  return jspb.Message.setProto3IntField(this, 4, value);
3300
4347
  };
3301
4348
 
@@ -3304,16 +4351,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setBucketSizeMs = functio
3304
4351
  * optional int32 expected_bucket_count = 5;
3305
4352
  * @return {number}
3306
4353
  */
3307
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getExpectedBucketCount = function() {
4354
+ proto.gateway.web.v1.QuerySnapshot.prototype.getExpectedBucketCount = function() {
3308
4355
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
3309
4356
  };
3310
4357
 
3311
4358
 
3312
4359
  /**
3313
4360
  * @param {number} value
3314
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4361
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3315
4362
  */
3316
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setExpectedBucketCount = function(value) {
4363
+ proto.gateway.web.v1.QuerySnapshot.prototype.setExpectedBucketCount = function(value) {
3317
4364
  return jspb.Message.setProto3IntField(this, 5, value);
3318
4365
  };
3319
4366
 
@@ -3322,16 +4369,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setExpectedBucketCount =
3322
4369
  * optional string unit = 6;
3323
4370
  * @return {string}
3324
4371
  */
3325
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getUnit = function() {
4372
+ proto.gateway.web.v1.QuerySnapshot.prototype.getUnit = function() {
3326
4373
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
3327
4374
  };
3328
4375
 
3329
4376
 
3330
4377
  /**
3331
4378
  * @param {string} value
3332
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4379
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3333
4380
  */
3334
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setUnit = function(value) {
4381
+ proto.gateway.web.v1.QuerySnapshot.prototype.setUnit = function(value) {
3335
4382
  return jspb.Message.setProto3StringField(this, 6, value);
3336
4383
  };
3337
4384
 
@@ -3342,7 +4389,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setUnit = function(value)
3342
4389
  * @private {!Array<number>}
3343
4390
  * @const
3344
4391
  */
3345
- proto.gateway.web.v1.MetricSeries.repeatedFields_ = [1];
4392
+ proto.gateway.web.v1.MetricSeries.repeatedFields_ = [2];
3346
4393
 
3347
4394
 
3348
4395
 
@@ -3375,6 +4422,7 @@ proto.gateway.web.v1.MetricSeries.prototype.toObject = function(opt_includeInsta
3375
4422
  */
3376
4423
  proto.gateway.web.v1.MetricSeries.toObject = function(includeInstance, msg) {
3377
4424
  var f, obj = {
4425
+ groupValuesMap: (f = msg.getGroupValuesMap()) ? f.toObject(includeInstance, undefined) : [],
3378
4426
  bucketsList: jspb.Message.toObjectList(msg.getBucketsList(),
3379
4427
  proto.gateway.web.v1.MetricBucket.toObject, includeInstance)
3380
4428
  };
@@ -3414,6 +4462,12 @@ proto.gateway.web.v1.MetricSeries.deserializeBinaryFromReader = function(msg, re
3414
4462
  var field = reader.getFieldNumber();
3415
4463
  switch (field) {
3416
4464
  case 1:
4465
+ var value = msg.getGroupValuesMap();
4466
+ reader.readMessage(value, function(message, reader) {
4467
+ jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
4468
+ });
4469
+ break;
4470
+ case 2:
3417
4471
  var value = new proto.gateway.web.v1.MetricBucket;
3418
4472
  reader.readMessage(value,proto.gateway.web.v1.MetricBucket.deserializeBinaryFromReader);
3419
4473
  msg.addBuckets(value);
@@ -3447,10 +4501,14 @@ proto.gateway.web.v1.MetricSeries.prototype.serializeBinary = function() {
3447
4501
  */
3448
4502
  proto.gateway.web.v1.MetricSeries.serializeBinaryToWriter = function(message, writer) {
3449
4503
  var f = undefined;
4504
+ f = message.getGroupValuesMap(true);
4505
+ if (f && f.getLength() > 0) {
4506
+ f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
4507
+ }
3450
4508
  f = message.getBucketsList();
3451
4509
  if (f.length > 0) {
3452
4510
  writer.writeRepeatedMessage(
3453
- 1,
4511
+ 2,
3454
4512
  f,
3455
4513
  proto.gateway.web.v1.MetricBucket.serializeBinaryToWriter
3456
4514
  );
@@ -3459,12 +4517,35 @@ proto.gateway.web.v1.MetricSeries.serializeBinaryToWriter = function(message, wr
3459
4517
 
3460
4518
 
3461
4519
  /**
3462
- * repeated MetricBucket buckets = 1;
4520
+ * map<string, string> group_values = 1;
4521
+ * @param {boolean=} opt_noLazyCreate Do not create the map if
4522
+ * empty, instead returning `undefined`
4523
+ * @return {!jspb.Map<string,string>}
4524
+ */
4525
+ proto.gateway.web.v1.MetricSeries.prototype.getGroupValuesMap = function(opt_noLazyCreate) {
4526
+ return /** @type {!jspb.Map<string,string>} */ (
4527
+ jspb.Message.getMapField(this, 1, opt_noLazyCreate,
4528
+ null));
4529
+ };
4530
+
4531
+
4532
+ /**
4533
+ * Clears values from the map. The map will be non-null.
4534
+ * @return {!proto.gateway.web.v1.MetricSeries} returns this
4535
+ */
4536
+ proto.gateway.web.v1.MetricSeries.prototype.clearGroupValuesMap = function() {
4537
+ this.getGroupValuesMap().clear();
4538
+ return this;
4539
+ };
4540
+
4541
+
4542
+ /**
4543
+ * repeated MetricBucket buckets = 2;
3463
4544
  * @return {!Array<!proto.gateway.web.v1.MetricBucket>}
3464
4545
  */
3465
4546
  proto.gateway.web.v1.MetricSeries.prototype.getBucketsList = function() {
3466
4547
  return /** @type{!Array<!proto.gateway.web.v1.MetricBucket>} */ (
3467
- jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricBucket, 1));
4548
+ jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricBucket, 2));
3468
4549
  };
3469
4550
 
3470
4551
 
@@ -3473,7 +4554,7 @@ proto.gateway.web.v1.MetricSeries.prototype.getBucketsList = function() {
3473
4554
  * @return {!proto.gateway.web.v1.MetricSeries} returns this
3474
4555
  */
3475
4556
  proto.gateway.web.v1.MetricSeries.prototype.setBucketsList = function(value) {
3476
- return jspb.Message.setRepeatedWrapperField(this, 1, value);
4557
+ return jspb.Message.setRepeatedWrapperField(this, 2, value);
3477
4558
  };
3478
4559
 
3479
4560
 
@@ -3483,7 +4564,7 @@ proto.gateway.web.v1.MetricSeries.prototype.setBucketsList = function(value) {
3483
4564
  * @return {!proto.gateway.web.v1.MetricBucket}
3484
4565
  */
3485
4566
  proto.gateway.web.v1.MetricSeries.prototype.addBuckets = function(opt_value, opt_index) {
3486
- return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.gateway.web.v1.MetricBucket, opt_index);
4567
+ return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.gateway.web.v1.MetricBucket, opt_index);
3487
4568
  };
3488
4569
 
3489
4570
 
@@ -3693,8 +4774,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
3693
4774
  * http://goto/soy-param-migration
3694
4775
  * @return {!Object}
3695
4776
  */
3696
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.toObject = function(opt_includeInstance) {
3697
- return proto.gateway.web.v1.MetricSeriesBucketUpdate.toObject(opt_includeInstance, this);
4777
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.toObject = function(opt_includeInstance) {
4778
+ return proto.gateway.web.v1.QuerySeriesUpdate.toObject(opt_includeInstance, this);
3698
4779
  };
3699
4780
 
3700
4781
 
@@ -3703,12 +4784,13 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.toObject = function(opt_
3703
4784
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3704
4785
  * the JSPB instance for transitional soy proto support:
3705
4786
  * http://goto/soy-param-migration
3706
- * @param {!proto.gateway.web.v1.MetricSeriesBucketUpdate} msg The msg instance to transform.
4787
+ * @param {!proto.gateway.web.v1.QuerySeriesUpdate} msg The msg instance to transform.
3707
4788
  * @return {!Object}
3708
4789
  * @suppress {unusedLocalVariables} f is only used for nested messages
3709
4790
  */
3710
- proto.gateway.web.v1.MetricSeriesBucketUpdate.toObject = function(includeInstance, msg) {
4791
+ proto.gateway.web.v1.QuerySeriesUpdate.toObject = function(includeInstance, msg) {
3711
4792
  var f, obj = {
4793
+ groupValuesMap: (f = msg.getGroupValuesMap()) ? f.toObject(includeInstance, undefined) : [],
3712
4794
  bucket: (f = msg.getBucket()) && proto.gateway.web.v1.MetricBucket.toObject(includeInstance, f),
3713
4795
  generatedAt: (f = msg.getGeneratedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f)
3714
4796
  };
@@ -3724,23 +4806,23 @@ generatedAt: (f = msg.getGeneratedAt()) && google_protobuf_timestamp_pb.Timestam
3724
4806
  /**
3725
4807
  * Deserializes binary data (in protobuf wire format).
3726
4808
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
3727
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate}
4809
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate}
3728
4810
  */
3729
- proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinary = function(bytes) {
4811
+ proto.gateway.web.v1.QuerySeriesUpdate.deserializeBinary = function(bytes) {
3730
4812
  var reader = new jspb.BinaryReader(bytes);
3731
- var msg = new proto.gateway.web.v1.MetricSeriesBucketUpdate;
3732
- return proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader(msg, reader);
4813
+ var msg = new proto.gateway.web.v1.QuerySeriesUpdate;
4814
+ return proto.gateway.web.v1.QuerySeriesUpdate.deserializeBinaryFromReader(msg, reader);
3733
4815
  };
3734
4816
 
3735
4817
 
3736
4818
  /**
3737
4819
  * Deserializes binary data (in protobuf wire format) from the
3738
4820
  * given reader into the given message object.
3739
- * @param {!proto.gateway.web.v1.MetricSeriesBucketUpdate} msg The message object to deserialize into.
4821
+ * @param {!proto.gateway.web.v1.QuerySeriesUpdate} msg The message object to deserialize into.
3740
4822
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3741
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate}
4823
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate}
3742
4824
  */
3743
- proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader = function(msg, reader) {
4825
+ proto.gateway.web.v1.QuerySeriesUpdate.deserializeBinaryFromReader = function(msg, reader) {
3744
4826
  while (reader.nextField()) {
3745
4827
  if (reader.isEndGroup()) {
3746
4828
  break;
@@ -3748,11 +4830,17 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader = func
3748
4830
  var field = reader.getFieldNumber();
3749
4831
  switch (field) {
3750
4832
  case 1:
4833
+ var value = msg.getGroupValuesMap();
4834
+ reader.readMessage(value, function(message, reader) {
4835
+ jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
4836
+ });
4837
+ break;
4838
+ case 2:
3751
4839
  var value = new proto.gateway.web.v1.MetricBucket;
3752
4840
  reader.readMessage(value,proto.gateway.web.v1.MetricBucket.deserializeBinaryFromReader);
3753
4841
  msg.setBucket(value);
3754
4842
  break;
3755
- case 2:
4843
+ case 3:
3756
4844
  var value = new google_protobuf_timestamp_pb.Timestamp;
3757
4845
  reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3758
4846
  msg.setGeneratedAt(value);
@@ -3770,9 +4858,9 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader = func
3770
4858
  * Serializes the message to binary data (in protobuf wire format).
3771
4859
  * @return {!Uint8Array}
3772
4860
  */
3773
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.serializeBinary = function() {
4861
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.serializeBinary = function() {
3774
4862
  var writer = new jspb.BinaryWriter();
3775
- proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter(this, writer);
4863
+ proto.gateway.web.v1.QuerySeriesUpdate.serializeBinaryToWriter(this, writer);
3776
4864
  return writer.getResultBuffer();
3777
4865
  };
3778
4866
 
@@ -3780,16 +4868,20 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.serializeBinary = functi
3780
4868
  /**
3781
4869
  * Serializes the given message to binary data (in protobuf wire
3782
4870
  * format), writing to the given BinaryWriter.
3783
- * @param {!proto.gateway.web.v1.MetricSeriesBucketUpdate} message
4871
+ * @param {!proto.gateway.web.v1.QuerySeriesUpdate} message
3784
4872
  * @param {!jspb.BinaryWriter} writer
3785
4873
  * @suppress {unusedLocalVariables} f is only used for nested messages
3786
4874
  */
3787
- proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter = function(message, writer) {
4875
+ proto.gateway.web.v1.QuerySeriesUpdate.serializeBinaryToWriter = function(message, writer) {
3788
4876
  var f = undefined;
4877
+ f = message.getGroupValuesMap(true);
4878
+ if (f && f.getLength() > 0) {
4879
+ f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
4880
+ }
3789
4881
  f = message.getBucket();
3790
4882
  if (f != null) {
3791
4883
  writer.writeMessage(
3792
- 1,
4884
+ 2,
3793
4885
  f,
3794
4886
  proto.gateway.web.v1.MetricBucket.serializeBinaryToWriter
3795
4887
  );
@@ -3797,7 +4889,7 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter = function
3797
4889
  f = message.getGeneratedAt();
3798
4890
  if (f != null) {
3799
4891
  writer.writeMessage(
3800
- 2,
4892
+ 3,
3801
4893
  f,
3802
4894
  google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
3803
4895
  );
@@ -3806,29 +4898,52 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter = function
3806
4898
 
3807
4899
 
3808
4900
  /**
3809
- * optional MetricBucket bucket = 1;
4901
+ * map<string, string> group_values = 1;
4902
+ * @param {boolean=} opt_noLazyCreate Do not create the map if
4903
+ * empty, instead returning `undefined`
4904
+ * @return {!jspb.Map<string,string>}
4905
+ */
4906
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.getGroupValuesMap = function(opt_noLazyCreate) {
4907
+ return /** @type {!jspb.Map<string,string>} */ (
4908
+ jspb.Message.getMapField(this, 1, opt_noLazyCreate,
4909
+ null));
4910
+ };
4911
+
4912
+
4913
+ /**
4914
+ * Clears values from the map. The map will be non-null.
4915
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
4916
+ */
4917
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.clearGroupValuesMap = function() {
4918
+ this.getGroupValuesMap().clear();
4919
+ return this;
4920
+ };
4921
+
4922
+
4923
+ /**
4924
+ * optional MetricBucket bucket = 2;
3810
4925
  * @return {?proto.gateway.web.v1.MetricBucket}
3811
4926
  */
3812
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.getBucket = function() {
4927
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.getBucket = function() {
3813
4928
  return /** @type{?proto.gateway.web.v1.MetricBucket} */ (
3814
- jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricBucket, 1));
4929
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricBucket, 2));
3815
4930
  };
3816
4931
 
3817
4932
 
3818
4933
  /**
3819
4934
  * @param {?proto.gateway.web.v1.MetricBucket|undefined} value
3820
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4935
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3821
4936
  */
3822
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.setBucket = function(value) {
3823
- return jspb.Message.setWrapperField(this, 1, value);
4937
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.setBucket = function(value) {
4938
+ return jspb.Message.setWrapperField(this, 2, value);
3824
4939
  };
3825
4940
 
3826
4941
 
3827
4942
  /**
3828
4943
  * Clears the message field making it undefined.
3829
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4944
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3830
4945
  */
3831
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearBucket = function() {
4946
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.clearBucket = function() {
3832
4947
  return this.setBucket(undefined);
3833
4948
  };
3834
4949
 
@@ -3837,35 +4952,35 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearBucket = function()
3837
4952
  * Returns whether this field is set.
3838
4953
  * @return {boolean}
3839
4954
  */
3840
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.hasBucket = function() {
3841
- return jspb.Message.getField(this, 1) != null;
4955
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.hasBucket = function() {
4956
+ return jspb.Message.getField(this, 2) != null;
3842
4957
  };
3843
4958
 
3844
4959
 
3845
4960
  /**
3846
- * optional google.protobuf.Timestamp generated_at = 2;
4961
+ * optional google.protobuf.Timestamp generated_at = 3;
3847
4962
  * @return {?proto.google.protobuf.Timestamp}
3848
4963
  */
3849
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.getGeneratedAt = function() {
4964
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.getGeneratedAt = function() {
3850
4965
  return /** @type{?proto.google.protobuf.Timestamp} */ (
3851
- jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 2));
4966
+ jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 3));
3852
4967
  };
3853
4968
 
3854
4969
 
3855
4970
  /**
3856
4971
  * @param {?proto.google.protobuf.Timestamp|undefined} value
3857
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4972
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3858
4973
  */
3859
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.setGeneratedAt = function(value) {
3860
- return jspb.Message.setWrapperField(this, 2, value);
4974
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.setGeneratedAt = function(value) {
4975
+ return jspb.Message.setWrapperField(this, 3, value);
3861
4976
  };
3862
4977
 
3863
4978
 
3864
4979
  /**
3865
4980
  * Clears the message field making it undefined.
3866
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4981
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3867
4982
  */
3868
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearGeneratedAt = function() {
4983
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.clearGeneratedAt = function() {
3869
4984
  return this.setGeneratedAt(undefined);
3870
4985
  };
3871
4986
 
@@ -3874,8 +4989,8 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearGeneratedAt = funct
3874
4989
  * Returns whether this field is set.
3875
4990
  * @return {boolean}
3876
4991
  */
3877
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.hasGeneratedAt = function() {
3878
- return jspb.Message.getField(this, 2) != null;
4992
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.hasGeneratedAt = function() {
4993
+ return jspb.Message.getField(this, 3) != null;
3879
4994
  };
3880
4995
 
3881
4996
 
@@ -3925,4 +5040,15 @@ proto.gateway.web.v1.HistogramAggregation = {
3925
5040
  HISTOGRAM_AGGREGATION_COUNT: 5
3926
5041
  };
3927
5042
 
5043
+ /**
5044
+ * @enum {number}
5045
+ */
5046
+ proto.gateway.web.v1.AttributeFilterOp = {
5047
+ ATTRIBUTE_FILTER_OP_UNSPECIFIED: 0,
5048
+ ATTRIBUTE_FILTER_OP_EQUALS: 1,
5049
+ ATTRIBUTE_FILTER_OP_NOT_EQUALS: 2,
5050
+ ATTRIBUTE_FILTER_OP_IN: 3,
5051
+ ATTRIBUTE_FILTER_OP_NOT_IN: 4
5052
+ };
5053
+
3928
5054
  goog.object.extend(exports, proto.gateway.web.v1);