@miradorlabs/web-grpc 1.3.0 → 2.1.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
@@ -23,29 +23,39 @@ var global =
23
23
 
24
24
  var google_protobuf_timestamp_pb = require('google-protobuf/google/protobuf/timestamp_pb.js');
25
25
  goog.object.extend(proto, google_protobuf_timestamp_pb);
26
- var proto_gateway_common_v1_status_pb = require('../../../../proto/gateway/common/v1/status_pb.js');
27
- goog.object.extend(proto, proto_gateway_common_v1_status_pb);
28
26
  var proto_gateway_web_v1_trace_gateway_pb = require('../../../../proto/gateway/web/v1/trace_gateway_pb.js');
29
27
  goog.object.extend(proto, proto_gateway_web_v1_trace_gateway_pb);
30
- goog.exportSymbol('proto.gateway.web.v1.ListMetricAttributesRequest', null, global);
31
- goog.exportSymbol('proto.gateway.web.v1.ListMetricAttributesResponse', null, global);
32
- goog.exportSymbol('proto.gateway.web.v1.ListMetricsRequest', null, global);
33
- goog.exportSymbol('proto.gateway.web.v1.ListMetricsResponse', null, global);
34
- goog.exportSymbol('proto.gateway.web.v1.MetricAggregation', null, global);
35
- goog.exportSymbol('proto.gateway.web.v1.MetricAnalyticsEnvelope', null, global);
36
- goog.exportSymbol('proto.gateway.web.v1.MetricAnalyticsEnvelope.EventCase', null, global);
37
- goog.exportSymbol('proto.gateway.web.v1.MetricAnalyticsSnapshot', null, global);
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);
31
+ goog.exportSymbol('proto.gateway.web.v1.GaugeAggregation', null, global);
32
+ goog.exportSymbol('proto.gateway.web.v1.GaugeQuerySpec', null, global);
33
+ goog.exportSymbol('proto.gateway.web.v1.HistogramAggregation', null, global);
34
+ goog.exportSymbol('proto.gateway.web.v1.HistogramQuerySpec', null, global);
38
35
  goog.exportSymbol('proto.gateway.web.v1.MetricAttribute', null, global);
36
+ goog.exportSymbol('proto.gateway.web.v1.MetricAttributeEnvelope', null, global);
37
+ goog.exportSymbol('proto.gateway.web.v1.MetricAttributeEnvelope.EventCase', null, global);
38
+ goog.exportSymbol('proto.gateway.web.v1.MetricAttributeSnapshot', null, global);
39
39
  goog.exportSymbol('proto.gateway.web.v1.MetricBucket', null, global);
40
- goog.exportSymbol('proto.gateway.web.v1.MetricFilter', null, global);
40
+ goog.exportSymbol('proto.gateway.web.v1.MetricCatalogEnvelope', null, global);
41
+ goog.exportSymbol('proto.gateway.web.v1.MetricCatalogEnvelope.EventCase', null, global);
42
+ goog.exportSymbol('proto.gateway.web.v1.MetricCatalogSnapshot', null, global);
41
43
  goog.exportSymbol('proto.gateway.web.v1.MetricInfo', null, global);
42
44
  goog.exportSymbol('proto.gateway.web.v1.MetricKind', null, global);
43
45
  goog.exportSymbol('proto.gateway.web.v1.MetricQuery', null, global);
46
+ goog.exportSymbol('proto.gateway.web.v1.MetricQuery.KindCase', null, global);
44
47
  goog.exportSymbol('proto.gateway.web.v1.MetricSeries', null, global);
45
- goog.exportSymbol('proto.gateway.web.v1.MetricSeriesBucketUpdate', null, global);
46
- goog.exportSymbol('proto.gateway.web.v1.QueryMetricsRequest', null, global);
47
- goog.exportSymbol('proto.gateway.web.v1.QueryMetricsResponse', null, global);
48
- goog.exportSymbol('proto.gateway.web.v1.StreamMetricAnalyticsRequest', 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);
52
+ goog.exportSymbol('proto.gateway.web.v1.StreamMetricAttributesRequest', null, global);
53
+ goog.exportSymbol('proto.gateway.web.v1.StreamMetricsRequest', null, global);
54
+ goog.exportSymbol('proto.gateway.web.v1.StreamQueryRequest', null, global);
55
+ goog.exportSymbol('proto.gateway.web.v1.SumAggregation', 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);
49
59
  /**
50
60
  * Generated by JsPbCodeGenerator.
51
61
  * @param {Array=} opt_data Optional initial data array, typically from a
@@ -56,16 +66,16 @@ goog.exportSymbol('proto.gateway.web.v1.StreamMetricAnalyticsRequest', null, glo
56
66
  * @extends {jspb.Message}
57
67
  * @constructor
58
68
  */
59
- proto.gateway.web.v1.ListMetricsRequest = function(opt_data) {
69
+ proto.gateway.web.v1.StreamMetricsRequest = function(opt_data) {
60
70
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
61
71
  };
62
- goog.inherits(proto.gateway.web.v1.ListMetricsRequest, jspb.Message);
72
+ goog.inherits(proto.gateway.web.v1.StreamMetricsRequest, jspb.Message);
63
73
  if (goog.DEBUG && !COMPILED) {
64
74
  /**
65
75
  * @public
66
76
  * @override
67
77
  */
68
- proto.gateway.web.v1.ListMetricsRequest.displayName = 'proto.gateway.web.v1.ListMetricsRequest';
78
+ proto.gateway.web.v1.StreamMetricsRequest.displayName = 'proto.gateway.web.v1.StreamMetricsRequest';
69
79
  }
70
80
  /**
71
81
  * Generated by JsPbCodeGenerator.
@@ -77,16 +87,37 @@ if (goog.DEBUG && !COMPILED) {
77
87
  * @extends {jspb.Message}
78
88
  * @constructor
79
89
  */
80
- proto.gateway.web.v1.ListMetricsResponse = function(opt_data) {
81
- jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.ListMetricsResponse.repeatedFields_, null);
90
+ proto.gateway.web.v1.MetricCatalogEnvelope = function(opt_data) {
91
+ jspb.Message.initialize(this, opt_data, 0, -1, null, proto.gateway.web.v1.MetricCatalogEnvelope.oneofGroups_);
82
92
  };
83
- goog.inherits(proto.gateway.web.v1.ListMetricsResponse, jspb.Message);
93
+ goog.inherits(proto.gateway.web.v1.MetricCatalogEnvelope, jspb.Message);
84
94
  if (goog.DEBUG && !COMPILED) {
85
95
  /**
86
96
  * @public
87
97
  * @override
88
98
  */
89
- proto.gateway.web.v1.ListMetricsResponse.displayName = 'proto.gateway.web.v1.ListMetricsResponse';
99
+ proto.gateway.web.v1.MetricCatalogEnvelope.displayName = 'proto.gateway.web.v1.MetricCatalogEnvelope';
100
+ }
101
+ /**
102
+ * Generated by JsPbCodeGenerator.
103
+ * @param {Array=} opt_data Optional initial data array, typically from a
104
+ * server response, or constructed directly in Javascript. The array is used
105
+ * in place and becomes part of the constructed object. It is not cloned.
106
+ * If no data is provided, the constructed object will be empty, but still
107
+ * valid.
108
+ * @extends {jspb.Message}
109
+ * @constructor
110
+ */
111
+ proto.gateway.web.v1.MetricCatalogSnapshot = function(opt_data) {
112
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.MetricCatalogSnapshot.repeatedFields_, null);
113
+ };
114
+ goog.inherits(proto.gateway.web.v1.MetricCatalogSnapshot, jspb.Message);
115
+ if (goog.DEBUG && !COMPILED) {
116
+ /**
117
+ * @public
118
+ * @override
119
+ */
120
+ proto.gateway.web.v1.MetricCatalogSnapshot.displayName = 'proto.gateway.web.v1.MetricCatalogSnapshot';
90
121
  }
91
122
  /**
92
123
  * Generated by JsPbCodeGenerator.
@@ -119,16 +150,37 @@ if (goog.DEBUG && !COMPILED) {
119
150
  * @extends {jspb.Message}
120
151
  * @constructor
121
152
  */
122
- proto.gateway.web.v1.ListMetricAttributesRequest = function(opt_data) {
153
+ proto.gateway.web.v1.StreamMetricAttributesRequest = function(opt_data) {
123
154
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
124
155
  };
125
- goog.inherits(proto.gateway.web.v1.ListMetricAttributesRequest, jspb.Message);
156
+ goog.inherits(proto.gateway.web.v1.StreamMetricAttributesRequest, jspb.Message);
157
+ if (goog.DEBUG && !COMPILED) {
158
+ /**
159
+ * @public
160
+ * @override
161
+ */
162
+ proto.gateway.web.v1.StreamMetricAttributesRequest.displayName = 'proto.gateway.web.v1.StreamMetricAttributesRequest';
163
+ }
164
+ /**
165
+ * Generated by JsPbCodeGenerator.
166
+ * @param {Array=} opt_data Optional initial data array, typically from a
167
+ * server response, or constructed directly in Javascript. The array is used
168
+ * in place and becomes part of the constructed object. It is not cloned.
169
+ * If no data is provided, the constructed object will be empty, but still
170
+ * valid.
171
+ * @extends {jspb.Message}
172
+ * @constructor
173
+ */
174
+ proto.gateway.web.v1.MetricAttributeEnvelope = function(opt_data) {
175
+ jspb.Message.initialize(this, opt_data, 0, -1, null, proto.gateway.web.v1.MetricAttributeEnvelope.oneofGroups_);
176
+ };
177
+ goog.inherits(proto.gateway.web.v1.MetricAttributeEnvelope, jspb.Message);
126
178
  if (goog.DEBUG && !COMPILED) {
127
179
  /**
128
180
  * @public
129
181
  * @override
130
182
  */
131
- proto.gateway.web.v1.ListMetricAttributesRequest.displayName = 'proto.gateway.web.v1.ListMetricAttributesRequest';
183
+ proto.gateway.web.v1.MetricAttributeEnvelope.displayName = 'proto.gateway.web.v1.MetricAttributeEnvelope';
132
184
  }
133
185
  /**
134
186
  * Generated by JsPbCodeGenerator.
@@ -140,16 +192,16 @@ if (goog.DEBUG && !COMPILED) {
140
192
  * @extends {jspb.Message}
141
193
  * @constructor
142
194
  */
143
- proto.gateway.web.v1.ListMetricAttributesResponse = function(opt_data) {
144
- jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.ListMetricAttributesResponse.repeatedFields_, null);
195
+ proto.gateway.web.v1.MetricAttributeSnapshot = function(opt_data) {
196
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.MetricAttributeSnapshot.repeatedFields_, null);
145
197
  };
146
- goog.inherits(proto.gateway.web.v1.ListMetricAttributesResponse, jspb.Message);
198
+ goog.inherits(proto.gateway.web.v1.MetricAttributeSnapshot, jspb.Message);
147
199
  if (goog.DEBUG && !COMPILED) {
148
200
  /**
149
201
  * @public
150
202
  * @override
151
203
  */
152
- proto.gateway.web.v1.ListMetricAttributesResponse.displayName = 'proto.gateway.web.v1.ListMetricAttributesResponse';
204
+ proto.gateway.web.v1.MetricAttributeSnapshot.displayName = 'proto.gateway.web.v1.MetricAttributeSnapshot';
153
205
  }
154
206
  /**
155
207
  * Generated by JsPbCodeGenerator.
@@ -172,6 +224,27 @@ if (goog.DEBUG && !COMPILED) {
172
224
  */
173
225
  proto.gateway.web.v1.MetricAttribute.displayName = 'proto.gateway.web.v1.MetricAttribute';
174
226
  }
227
+ /**
228
+ * Generated by JsPbCodeGenerator.
229
+ * @param {Array=} opt_data Optional initial data array, typically from a
230
+ * server response, or constructed directly in Javascript. The array is used
231
+ * in place and becomes part of the constructed object. It is not cloned.
232
+ * If no data is provided, the constructed object will be empty, but still
233
+ * valid.
234
+ * @extends {jspb.Message}
235
+ * @constructor
236
+ */
237
+ proto.gateway.web.v1.StreamQueryRequest = function(opt_data) {
238
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
239
+ };
240
+ goog.inherits(proto.gateway.web.v1.StreamQueryRequest, jspb.Message);
241
+ if (goog.DEBUG && !COMPILED) {
242
+ /**
243
+ * @public
244
+ * @override
245
+ */
246
+ proto.gateway.web.v1.StreamQueryRequest.displayName = 'proto.gateway.web.v1.StreamQueryRequest';
247
+ }
175
248
  /**
176
249
  * Generated by JsPbCodeGenerator.
177
250
  * @param {Array=} opt_data Optional initial data array, typically from a
@@ -183,7 +256,7 @@ if (goog.DEBUG && !COMPILED) {
183
256
  * @constructor
184
257
  */
185
258
  proto.gateway.web.v1.MetricQuery = function(opt_data) {
186
- jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.MetricQuery.repeatedFields_, null);
259
+ jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.MetricQuery.repeatedFields_, proto.gateway.web.v1.MetricQuery.oneofGroups_);
187
260
  };
188
261
  goog.inherits(proto.gateway.web.v1.MetricQuery, jspb.Message);
189
262
  if (goog.DEBUG && !COMPILED) {
@@ -203,16 +276,16 @@ if (goog.DEBUG && !COMPILED) {
203
276
  * @extends {jspb.Message}
204
277
  * @constructor
205
278
  */
206
- proto.gateway.web.v1.MetricFilter = function(opt_data) {
207
- jspb.Message.initialize(this, opt_data, 0, -1, proto.gateway.web.v1.MetricFilter.repeatedFields_, null);
279
+ proto.gateway.web.v1.GaugeQuerySpec = function(opt_data) {
280
+ jspb.Message.initialize(this, opt_data, 0, -1, null, null);
208
281
  };
209
- goog.inherits(proto.gateway.web.v1.MetricFilter, jspb.Message);
282
+ goog.inherits(proto.gateway.web.v1.GaugeQuerySpec, jspb.Message);
210
283
  if (goog.DEBUG && !COMPILED) {
211
284
  /**
212
285
  * @public
213
286
  * @override
214
287
  */
215
- proto.gateway.web.v1.MetricFilter.displayName = 'proto.gateway.web.v1.MetricFilter';
288
+ proto.gateway.web.v1.GaugeQuerySpec.displayName = 'proto.gateway.web.v1.GaugeQuerySpec';
216
289
  }
217
290
  /**
218
291
  * Generated by JsPbCodeGenerator.
@@ -224,16 +297,16 @@ if (goog.DEBUG && !COMPILED) {
224
297
  * @extends {jspb.Message}
225
298
  * @constructor
226
299
  */
227
- proto.gateway.web.v1.QueryMetricsRequest = function(opt_data) {
300
+ proto.gateway.web.v1.SumQuerySpec = function(opt_data) {
228
301
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
229
302
  };
230
- goog.inherits(proto.gateway.web.v1.QueryMetricsRequest, jspb.Message);
303
+ goog.inherits(proto.gateway.web.v1.SumQuerySpec, jspb.Message);
231
304
  if (goog.DEBUG && !COMPILED) {
232
305
  /**
233
306
  * @public
234
307
  * @override
235
308
  */
236
- proto.gateway.web.v1.QueryMetricsRequest.displayName = 'proto.gateway.web.v1.QueryMetricsRequest';
309
+ proto.gateway.web.v1.SumQuerySpec.displayName = 'proto.gateway.web.v1.SumQuerySpec';
237
310
  }
238
311
  /**
239
312
  * Generated by JsPbCodeGenerator.
@@ -245,16 +318,58 @@ if (goog.DEBUG && !COMPILED) {
245
318
  * @extends {jspb.Message}
246
319
  * @constructor
247
320
  */
248
- proto.gateway.web.v1.QueryMetricsResponse = function(opt_data) {
321
+ proto.gateway.web.v1.HistogramQuerySpec = function(opt_data) {
249
322
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
250
323
  };
251
- goog.inherits(proto.gateway.web.v1.QueryMetricsResponse, 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);
252
367
  if (goog.DEBUG && !COMPILED) {
253
368
  /**
254
369
  * @public
255
370
  * @override
256
371
  */
257
- proto.gateway.web.v1.QueryMetricsResponse.displayName = 'proto.gateway.web.v1.QueryMetricsResponse';
372
+ proto.gateway.web.v1.TimeRange.displayName = 'proto.gateway.web.v1.TimeRange';
258
373
  }
259
374
  /**
260
375
  * Generated by JsPbCodeGenerator.
@@ -266,16 +381,16 @@ if (goog.DEBUG && !COMPILED) {
266
381
  * @extends {jspb.Message}
267
382
  * @constructor
268
383
  */
269
- proto.gateway.web.v1.StreamMetricAnalyticsRequest = function(opt_data) {
384
+ proto.gateway.web.v1.AbsoluteTimeRange = function(opt_data) {
270
385
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
271
386
  };
272
- goog.inherits(proto.gateway.web.v1.StreamMetricAnalyticsRequest, jspb.Message);
387
+ goog.inherits(proto.gateway.web.v1.AbsoluteTimeRange, jspb.Message);
273
388
  if (goog.DEBUG && !COMPILED) {
274
389
  /**
275
390
  * @public
276
391
  * @override
277
392
  */
278
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.displayName = 'proto.gateway.web.v1.StreamMetricAnalyticsRequest';
393
+ proto.gateway.web.v1.AbsoluteTimeRange.displayName = 'proto.gateway.web.v1.AbsoluteTimeRange';
279
394
  }
280
395
  /**
281
396
  * Generated by JsPbCodeGenerator.
@@ -287,16 +402,16 @@ if (goog.DEBUG && !COMPILED) {
287
402
  * @extends {jspb.Message}
288
403
  * @constructor
289
404
  */
290
- proto.gateway.web.v1.MetricAnalyticsEnvelope = function(opt_data) {
291
- 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_);
292
407
  };
293
- goog.inherits(proto.gateway.web.v1.MetricAnalyticsEnvelope, jspb.Message);
408
+ goog.inherits(proto.gateway.web.v1.QueryDataEnvelope, jspb.Message);
294
409
  if (goog.DEBUG && !COMPILED) {
295
410
  /**
296
411
  * @public
297
412
  * @override
298
413
  */
299
- proto.gateway.web.v1.MetricAnalyticsEnvelope.displayName = 'proto.gateway.web.v1.MetricAnalyticsEnvelope';
414
+ proto.gateway.web.v1.QueryDataEnvelope.displayName = 'proto.gateway.web.v1.QueryDataEnvelope';
300
415
  }
301
416
  /**
302
417
  * Generated by JsPbCodeGenerator.
@@ -308,16 +423,16 @@ if (goog.DEBUG && !COMPILED) {
308
423
  * @extends {jspb.Message}
309
424
  * @constructor
310
425
  */
311
- proto.gateway.web.v1.MetricAnalyticsSnapshot = function(opt_data) {
312
- 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);
313
428
  };
314
- goog.inherits(proto.gateway.web.v1.MetricAnalyticsSnapshot, jspb.Message);
429
+ goog.inherits(proto.gateway.web.v1.QuerySnapshot, jspb.Message);
315
430
  if (goog.DEBUG && !COMPILED) {
316
431
  /**
317
432
  * @public
318
433
  * @override
319
434
  */
320
- proto.gateway.web.v1.MetricAnalyticsSnapshot.displayName = 'proto.gateway.web.v1.MetricAnalyticsSnapshot';
435
+ proto.gateway.web.v1.QuerySnapshot.displayName = 'proto.gateway.web.v1.QuerySnapshot';
321
436
  }
322
437
  /**
323
438
  * Generated by JsPbCodeGenerator.
@@ -371,16 +486,16 @@ if (goog.DEBUG && !COMPILED) {
371
486
  * @extends {jspb.Message}
372
487
  * @constructor
373
488
  */
374
- proto.gateway.web.v1.MetricSeriesBucketUpdate = function(opt_data) {
489
+ proto.gateway.web.v1.QuerySeriesUpdate = function(opt_data) {
375
490
  jspb.Message.initialize(this, opt_data, 0, -1, null, null);
376
491
  };
377
- goog.inherits(proto.gateway.web.v1.MetricSeriesBucketUpdate, jspb.Message);
492
+ goog.inherits(proto.gateway.web.v1.QuerySeriesUpdate, jspb.Message);
378
493
  if (goog.DEBUG && !COMPILED) {
379
494
  /**
380
495
  * @public
381
496
  * @override
382
497
  */
383
- proto.gateway.web.v1.MetricSeriesBucketUpdate.displayName = 'proto.gateway.web.v1.MetricSeriesBucketUpdate';
498
+ proto.gateway.web.v1.QuerySeriesUpdate.displayName = 'proto.gateway.web.v1.QuerySeriesUpdate';
384
499
  }
385
500
 
386
501
 
@@ -398,8 +513,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
398
513
  * http://goto/soy-param-migration
399
514
  * @return {!Object}
400
515
  */
401
- proto.gateway.web.v1.ListMetricsRequest.prototype.toObject = function(opt_includeInstance) {
402
- return proto.gateway.web.v1.ListMetricsRequest.toObject(opt_includeInstance, this);
516
+ proto.gateway.web.v1.StreamMetricsRequest.prototype.toObject = function(opt_includeInstance) {
517
+ return proto.gateway.web.v1.StreamMetricsRequest.toObject(opt_includeInstance, this);
403
518
  };
404
519
 
405
520
 
@@ -408,14 +523,14 @@ proto.gateway.web.v1.ListMetricsRequest.prototype.toObject = function(opt_includ
408
523
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
409
524
  * the JSPB instance for transitional soy proto support:
410
525
  * http://goto/soy-param-migration
411
- * @param {!proto.gateway.web.v1.ListMetricsRequest} msg The msg instance to transform.
526
+ * @param {!proto.gateway.web.v1.StreamMetricsRequest} msg The msg instance to transform.
412
527
  * @return {!Object}
413
528
  * @suppress {unusedLocalVariables} f is only used for nested messages
414
529
  */
415
- proto.gateway.web.v1.ListMetricsRequest.toObject = function(includeInstance, msg) {
530
+ proto.gateway.web.v1.StreamMetricsRequest.toObject = function(includeInstance, msg) {
416
531
  var f, obj = {
417
- projectId: jspb.Message.getFieldWithDefault(msg, 1, ""),
418
- organizationId: jspb.Message.getFieldWithDefault(msg, 2, "")
532
+ organizationId: jspb.Message.getFieldWithDefault(msg, 1, ""),
533
+ projectId: jspb.Message.getFieldWithDefault(msg, 2, "")
419
534
  };
420
535
 
421
536
  if (includeInstance) {
@@ -429,23 +544,23 @@ organizationId: jspb.Message.getFieldWithDefault(msg, 2, "")
429
544
  /**
430
545
  * Deserializes binary data (in protobuf wire format).
431
546
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
432
- * @return {!proto.gateway.web.v1.ListMetricsRequest}
547
+ * @return {!proto.gateway.web.v1.StreamMetricsRequest}
433
548
  */
434
- proto.gateway.web.v1.ListMetricsRequest.deserializeBinary = function(bytes) {
549
+ proto.gateway.web.v1.StreamMetricsRequest.deserializeBinary = function(bytes) {
435
550
  var reader = new jspb.BinaryReader(bytes);
436
- var msg = new proto.gateway.web.v1.ListMetricsRequest;
437
- return proto.gateway.web.v1.ListMetricsRequest.deserializeBinaryFromReader(msg, reader);
551
+ var msg = new proto.gateway.web.v1.StreamMetricsRequest;
552
+ return proto.gateway.web.v1.StreamMetricsRequest.deserializeBinaryFromReader(msg, reader);
438
553
  };
439
554
 
440
555
 
441
556
  /**
442
557
  * Deserializes binary data (in protobuf wire format) from the
443
558
  * given reader into the given message object.
444
- * @param {!proto.gateway.web.v1.ListMetricsRequest} msg The message object to deserialize into.
559
+ * @param {!proto.gateway.web.v1.StreamMetricsRequest} msg The message object to deserialize into.
445
560
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
446
- * @return {!proto.gateway.web.v1.ListMetricsRequest}
561
+ * @return {!proto.gateway.web.v1.StreamMetricsRequest}
447
562
  */
448
- proto.gateway.web.v1.ListMetricsRequest.deserializeBinaryFromReader = function(msg, reader) {
563
+ proto.gateway.web.v1.StreamMetricsRequest.deserializeBinaryFromReader = function(msg, reader) {
449
564
  while (reader.nextField()) {
450
565
  if (reader.isEndGroup()) {
451
566
  break;
@@ -454,11 +569,11 @@ proto.gateway.web.v1.ListMetricsRequest.deserializeBinaryFromReader = function(m
454
569
  switch (field) {
455
570
  case 1:
456
571
  var value = /** @type {string} */ (reader.readString());
457
- msg.setProjectId(value);
572
+ msg.setOrganizationId(value);
458
573
  break;
459
574
  case 2:
460
575
  var value = /** @type {string} */ (reader.readString());
461
- msg.setOrganizationId(value);
576
+ msg.setProjectId(value);
462
577
  break;
463
578
  default:
464
579
  reader.skipField();
@@ -473,9 +588,9 @@ proto.gateway.web.v1.ListMetricsRequest.deserializeBinaryFromReader = function(m
473
588
  * Serializes the message to binary data (in protobuf wire format).
474
589
  * @return {!Uint8Array}
475
590
  */
476
- proto.gateway.web.v1.ListMetricsRequest.prototype.serializeBinary = function() {
591
+ proto.gateway.web.v1.StreamMetricsRequest.prototype.serializeBinary = function() {
477
592
  var writer = new jspb.BinaryWriter();
478
- proto.gateway.web.v1.ListMetricsRequest.serializeBinaryToWriter(this, writer);
593
+ proto.gateway.web.v1.StreamMetricsRequest.serializeBinaryToWriter(this, writer);
479
594
  return writer.getResultBuffer();
480
595
  };
481
596
 
@@ -483,20 +598,20 @@ proto.gateway.web.v1.ListMetricsRequest.prototype.serializeBinary = function() {
483
598
  /**
484
599
  * Serializes the given message to binary data (in protobuf wire
485
600
  * format), writing to the given BinaryWriter.
486
- * @param {!proto.gateway.web.v1.ListMetricsRequest} message
601
+ * @param {!proto.gateway.web.v1.StreamMetricsRequest} message
487
602
  * @param {!jspb.BinaryWriter} writer
488
603
  * @suppress {unusedLocalVariables} f is only used for nested messages
489
604
  */
490
- proto.gateway.web.v1.ListMetricsRequest.serializeBinaryToWriter = function(message, writer) {
605
+ proto.gateway.web.v1.StreamMetricsRequest.serializeBinaryToWriter = function(message, writer) {
491
606
  var f = undefined;
492
- f = message.getProjectId();
607
+ f = message.getOrganizationId();
493
608
  if (f.length > 0) {
494
609
  writer.writeString(
495
610
  1,
496
611
  f
497
612
  );
498
613
  }
499
- f = message.getOrganizationId();
614
+ f = message.getProjectId();
500
615
  if (f.length > 0) {
501
616
  writer.writeString(
502
617
  2,
@@ -507,48 +622,67 @@ proto.gateway.web.v1.ListMetricsRequest.serializeBinaryToWriter = function(messa
507
622
 
508
623
 
509
624
  /**
510
- * optional string project_id = 1;
625
+ * optional string organization_id = 1;
511
626
  * @return {string}
512
627
  */
513
- proto.gateway.web.v1.ListMetricsRequest.prototype.getProjectId = function() {
628
+ proto.gateway.web.v1.StreamMetricsRequest.prototype.getOrganizationId = function() {
514
629
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
515
630
  };
516
631
 
517
632
 
518
633
  /**
519
634
  * @param {string} value
520
- * @return {!proto.gateway.web.v1.ListMetricsRequest} returns this
635
+ * @return {!proto.gateway.web.v1.StreamMetricsRequest} returns this
521
636
  */
522
- proto.gateway.web.v1.ListMetricsRequest.prototype.setProjectId = function(value) {
637
+ proto.gateway.web.v1.StreamMetricsRequest.prototype.setOrganizationId = function(value) {
523
638
  return jspb.Message.setProto3StringField(this, 1, value);
524
639
  };
525
640
 
526
641
 
527
642
  /**
528
- * optional string organization_id = 2;
643
+ * optional string project_id = 2;
529
644
  * @return {string}
530
645
  */
531
- proto.gateway.web.v1.ListMetricsRequest.prototype.getOrganizationId = function() {
646
+ proto.gateway.web.v1.StreamMetricsRequest.prototype.getProjectId = function() {
532
647
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
533
648
  };
534
649
 
535
650
 
536
651
  /**
537
652
  * @param {string} value
538
- * @return {!proto.gateway.web.v1.ListMetricsRequest} returns this
653
+ * @return {!proto.gateway.web.v1.StreamMetricsRequest} returns this
539
654
  */
540
- proto.gateway.web.v1.ListMetricsRequest.prototype.setOrganizationId = function(value) {
655
+ proto.gateway.web.v1.StreamMetricsRequest.prototype.setProjectId = function(value) {
541
656
  return jspb.Message.setProto3StringField(this, 2, value);
542
657
  };
543
658
 
544
659
 
545
660
 
546
661
  /**
547
- * List of repeated fields within this message type.
548
- * @private {!Array<number>}
662
+ * Oneof group definitions for this message. Each group defines the field
663
+ * numbers belonging to that group. When of these fields' value is set, all
664
+ * other fields in the group are cleared. During deserialization, if multiple
665
+ * fields are encountered for a group, only the last value seen will be kept.
666
+ * @private {!Array<!Array<number>>}
549
667
  * @const
550
668
  */
551
- proto.gateway.web.v1.ListMetricsResponse.repeatedFields_ = [2];
669
+ proto.gateway.web.v1.MetricCatalogEnvelope.oneofGroups_ = [[1,2]];
670
+
671
+ /**
672
+ * @enum {number}
673
+ */
674
+ proto.gateway.web.v1.MetricCatalogEnvelope.EventCase = {
675
+ EVENT_NOT_SET: 0,
676
+ SNAPSHOT: 1,
677
+ ADDED: 2
678
+ };
679
+
680
+ /**
681
+ * @return {proto.gateway.web.v1.MetricCatalogEnvelope.EventCase}
682
+ */
683
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.getEventCase = function() {
684
+ return /** @type {proto.gateway.web.v1.MetricCatalogEnvelope.EventCase} */(jspb.Message.computeOneofCase(this, proto.gateway.web.v1.MetricCatalogEnvelope.oneofGroups_[0]));
685
+ };
552
686
 
553
687
 
554
688
 
@@ -565,8 +699,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
565
699
  * http://goto/soy-param-migration
566
700
  * @return {!Object}
567
701
  */
568
- proto.gateway.web.v1.ListMetricsResponse.prototype.toObject = function(opt_includeInstance) {
569
- return proto.gateway.web.v1.ListMetricsResponse.toObject(opt_includeInstance, this);
702
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.toObject = function(opt_includeInstance) {
703
+ return proto.gateway.web.v1.MetricCatalogEnvelope.toObject(opt_includeInstance, this);
570
704
  };
571
705
 
572
706
 
@@ -575,15 +709,14 @@ proto.gateway.web.v1.ListMetricsResponse.prototype.toObject = function(opt_inclu
575
709
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
576
710
  * the JSPB instance for transitional soy proto support:
577
711
  * http://goto/soy-param-migration
578
- * @param {!proto.gateway.web.v1.ListMetricsResponse} msg The msg instance to transform.
712
+ * @param {!proto.gateway.web.v1.MetricCatalogEnvelope} msg The msg instance to transform.
579
713
  * @return {!Object}
580
714
  * @suppress {unusedLocalVariables} f is only used for nested messages
581
715
  */
582
- proto.gateway.web.v1.ListMetricsResponse.toObject = function(includeInstance, msg) {
716
+ proto.gateway.web.v1.MetricCatalogEnvelope.toObject = function(includeInstance, msg) {
583
717
  var f, obj = {
584
- status: (f = msg.getStatus()) && proto_gateway_common_v1_status_pb.ResponseStatus.toObject(includeInstance, f),
585
- metricsList: jspb.Message.toObjectList(msg.getMetricsList(),
586
- proto.gateway.web.v1.MetricInfo.toObject, includeInstance)
718
+ snapshot: (f = msg.getSnapshot()) && proto.gateway.web.v1.MetricCatalogSnapshot.toObject(includeInstance, f),
719
+ added: (f = msg.getAdded()) && proto.gateway.web.v1.MetricInfo.toObject(includeInstance, f)
587
720
  };
588
721
 
589
722
  if (includeInstance) {
@@ -597,23 +730,23 @@ metricsList: jspb.Message.toObjectList(msg.getMetricsList(),
597
730
  /**
598
731
  * Deserializes binary data (in protobuf wire format).
599
732
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
600
- * @return {!proto.gateway.web.v1.ListMetricsResponse}
733
+ * @return {!proto.gateway.web.v1.MetricCatalogEnvelope}
601
734
  */
602
- proto.gateway.web.v1.ListMetricsResponse.deserializeBinary = function(bytes) {
735
+ proto.gateway.web.v1.MetricCatalogEnvelope.deserializeBinary = function(bytes) {
603
736
  var reader = new jspb.BinaryReader(bytes);
604
- var msg = new proto.gateway.web.v1.ListMetricsResponse;
605
- return proto.gateway.web.v1.ListMetricsResponse.deserializeBinaryFromReader(msg, reader);
737
+ var msg = new proto.gateway.web.v1.MetricCatalogEnvelope;
738
+ return proto.gateway.web.v1.MetricCatalogEnvelope.deserializeBinaryFromReader(msg, reader);
606
739
  };
607
740
 
608
741
 
609
742
  /**
610
743
  * Deserializes binary data (in protobuf wire format) from the
611
744
  * given reader into the given message object.
612
- * @param {!proto.gateway.web.v1.ListMetricsResponse} msg The message object to deserialize into.
745
+ * @param {!proto.gateway.web.v1.MetricCatalogEnvelope} msg The message object to deserialize into.
613
746
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
614
- * @return {!proto.gateway.web.v1.ListMetricsResponse}
747
+ * @return {!proto.gateway.web.v1.MetricCatalogEnvelope}
615
748
  */
616
- proto.gateway.web.v1.ListMetricsResponse.deserializeBinaryFromReader = function(msg, reader) {
749
+ proto.gateway.web.v1.MetricCatalogEnvelope.deserializeBinaryFromReader = function(msg, reader) {
617
750
  while (reader.nextField()) {
618
751
  if (reader.isEndGroup()) {
619
752
  break;
@@ -621,14 +754,14 @@ proto.gateway.web.v1.ListMetricsResponse.deserializeBinaryFromReader = function(
621
754
  var field = reader.getFieldNumber();
622
755
  switch (field) {
623
756
  case 1:
624
- var value = new proto_gateway_common_v1_status_pb.ResponseStatus;
625
- reader.readMessage(value,proto_gateway_common_v1_status_pb.ResponseStatus.deserializeBinaryFromReader);
626
- msg.setStatus(value);
757
+ var value = new proto.gateway.web.v1.MetricCatalogSnapshot;
758
+ reader.readMessage(value,proto.gateway.web.v1.MetricCatalogSnapshot.deserializeBinaryFromReader);
759
+ msg.setSnapshot(value);
627
760
  break;
628
761
  case 2:
629
762
  var value = new proto.gateway.web.v1.MetricInfo;
630
763
  reader.readMessage(value,proto.gateway.web.v1.MetricInfo.deserializeBinaryFromReader);
631
- msg.addMetrics(value);
764
+ msg.setAdded(value);
632
765
  break;
633
766
  default:
634
767
  reader.skipField();
@@ -643,9 +776,9 @@ proto.gateway.web.v1.ListMetricsResponse.deserializeBinaryFromReader = function(
643
776
  * Serializes the message to binary data (in protobuf wire format).
644
777
  * @return {!Uint8Array}
645
778
  */
646
- proto.gateway.web.v1.ListMetricsResponse.prototype.serializeBinary = function() {
779
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.serializeBinary = function() {
647
780
  var writer = new jspb.BinaryWriter();
648
- proto.gateway.web.v1.ListMetricsResponse.serializeBinaryToWriter(this, writer);
781
+ proto.gateway.web.v1.MetricCatalogEnvelope.serializeBinaryToWriter(this, writer);
649
782
  return writer.getResultBuffer();
650
783
  };
651
784
 
@@ -653,23 +786,23 @@ proto.gateway.web.v1.ListMetricsResponse.prototype.serializeBinary = function()
653
786
  /**
654
787
  * Serializes the given message to binary data (in protobuf wire
655
788
  * format), writing to the given BinaryWriter.
656
- * @param {!proto.gateway.web.v1.ListMetricsResponse} message
789
+ * @param {!proto.gateway.web.v1.MetricCatalogEnvelope} message
657
790
  * @param {!jspb.BinaryWriter} writer
658
791
  * @suppress {unusedLocalVariables} f is only used for nested messages
659
792
  */
660
- proto.gateway.web.v1.ListMetricsResponse.serializeBinaryToWriter = function(message, writer) {
793
+ proto.gateway.web.v1.MetricCatalogEnvelope.serializeBinaryToWriter = function(message, writer) {
661
794
  var f = undefined;
662
- f = message.getStatus();
795
+ f = message.getSnapshot();
663
796
  if (f != null) {
664
797
  writer.writeMessage(
665
798
  1,
666
799
  f,
667
- proto_gateway_common_v1_status_pb.ResponseStatus.serializeBinaryToWriter
800
+ proto.gateway.web.v1.MetricCatalogSnapshot.serializeBinaryToWriter
668
801
  );
669
802
  }
670
- f = message.getMetricsList();
671
- if (f.length > 0) {
672
- writer.writeRepeatedMessage(
803
+ f = message.getAdded();
804
+ if (f != null) {
805
+ writer.writeMessage(
673
806
  2,
674
807
  f,
675
808
  proto.gateway.web.v1.MetricInfo.serializeBinaryToWriter
@@ -679,30 +812,30 @@ proto.gateway.web.v1.ListMetricsResponse.serializeBinaryToWriter = function(mess
679
812
 
680
813
 
681
814
  /**
682
- * optional gateway.common.v1.ResponseStatus status = 1;
683
- * @return {?proto.gateway.common.v1.ResponseStatus}
815
+ * optional MetricCatalogSnapshot snapshot = 1;
816
+ * @return {?proto.gateway.web.v1.MetricCatalogSnapshot}
684
817
  */
685
- proto.gateway.web.v1.ListMetricsResponse.prototype.getStatus = function() {
686
- return /** @type{?proto.gateway.common.v1.ResponseStatus} */ (
687
- jspb.Message.getWrapperField(this, proto_gateway_common_v1_status_pb.ResponseStatus, 1));
818
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.getSnapshot = function() {
819
+ return /** @type{?proto.gateway.web.v1.MetricCatalogSnapshot} */ (
820
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricCatalogSnapshot, 1));
688
821
  };
689
822
 
690
823
 
691
824
  /**
692
- * @param {?proto.gateway.common.v1.ResponseStatus|undefined} value
693
- * @return {!proto.gateway.web.v1.ListMetricsResponse} returns this
825
+ * @param {?proto.gateway.web.v1.MetricCatalogSnapshot|undefined} value
826
+ * @return {!proto.gateway.web.v1.MetricCatalogEnvelope} returns this
694
827
  */
695
- proto.gateway.web.v1.ListMetricsResponse.prototype.setStatus = function(value) {
696
- return jspb.Message.setWrapperField(this, 1, value);
828
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.setSnapshot = function(value) {
829
+ return jspb.Message.setOneofWrapperField(this, 1, proto.gateway.web.v1.MetricCatalogEnvelope.oneofGroups_[0], value);
697
830
  };
698
831
 
699
832
 
700
833
  /**
701
834
  * Clears the message field making it undefined.
702
- * @return {!proto.gateway.web.v1.ListMetricsResponse} returns this
835
+ * @return {!proto.gateway.web.v1.MetricCatalogEnvelope} returns this
703
836
  */
704
- proto.gateway.web.v1.ListMetricsResponse.prototype.clearStatus = function() {
705
- return this.setStatus(undefined);
837
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.clearSnapshot = function() {
838
+ return this.setSnapshot(undefined);
706
839
  };
707
840
 
708
841
 
@@ -710,50 +843,56 @@ proto.gateway.web.v1.ListMetricsResponse.prototype.clearStatus = function() {
710
843
  * Returns whether this field is set.
711
844
  * @return {boolean}
712
845
  */
713
- proto.gateway.web.v1.ListMetricsResponse.prototype.hasStatus = function() {
846
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.hasSnapshot = function() {
714
847
  return jspb.Message.getField(this, 1) != null;
715
848
  };
716
849
 
717
850
 
718
851
  /**
719
- * repeated MetricInfo metrics = 2;
720
- * @return {!Array<!proto.gateway.web.v1.MetricInfo>}
852
+ * optional MetricInfo added = 2;
853
+ * @return {?proto.gateway.web.v1.MetricInfo}
721
854
  */
722
- proto.gateway.web.v1.ListMetricsResponse.prototype.getMetricsList = function() {
723
- return /** @type{!Array<!proto.gateway.web.v1.MetricInfo>} */ (
724
- jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricInfo, 2));
855
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.getAdded = function() {
856
+ return /** @type{?proto.gateway.web.v1.MetricInfo} */ (
857
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricInfo, 2));
725
858
  };
726
859
 
727
860
 
728
861
  /**
729
- * @param {!Array<!proto.gateway.web.v1.MetricInfo>} value
730
- * @return {!proto.gateway.web.v1.ListMetricsResponse} returns this
862
+ * @param {?proto.gateway.web.v1.MetricInfo|undefined} value
863
+ * @return {!proto.gateway.web.v1.MetricCatalogEnvelope} returns this
731
864
  */
732
- proto.gateway.web.v1.ListMetricsResponse.prototype.setMetricsList = function(value) {
733
- return jspb.Message.setRepeatedWrapperField(this, 2, value);
865
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.setAdded = function(value) {
866
+ return jspb.Message.setOneofWrapperField(this, 2, proto.gateway.web.v1.MetricCatalogEnvelope.oneofGroups_[0], value);
734
867
  };
735
868
 
736
869
 
737
870
  /**
738
- * @param {!proto.gateway.web.v1.MetricInfo=} opt_value
739
- * @param {number=} opt_index
740
- * @return {!proto.gateway.web.v1.MetricInfo}
871
+ * Clears the message field making it undefined.
872
+ * @return {!proto.gateway.web.v1.MetricCatalogEnvelope} returns this
741
873
  */
742
- proto.gateway.web.v1.ListMetricsResponse.prototype.addMetrics = function(opt_value, opt_index) {
743
- return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.gateway.web.v1.MetricInfo, opt_index);
874
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.clearAdded = function() {
875
+ return this.setAdded(undefined);
744
876
  };
745
877
 
746
878
 
747
879
  /**
748
- * Clears the list making it empty but non-null.
749
- * @return {!proto.gateway.web.v1.ListMetricsResponse} returns this
880
+ * Returns whether this field is set.
881
+ * @return {boolean}
750
882
  */
751
- proto.gateway.web.v1.ListMetricsResponse.prototype.clearMetricsList = function() {
752
- return this.setMetricsList([]);
883
+ proto.gateway.web.v1.MetricCatalogEnvelope.prototype.hasAdded = function() {
884
+ return jspb.Message.getField(this, 2) != null;
753
885
  };
754
886
 
755
887
 
756
888
 
889
+ /**
890
+ * List of repeated fields within this message type.
891
+ * @private {!Array<number>}
892
+ * @const
893
+ */
894
+ proto.gateway.web.v1.MetricCatalogSnapshot.repeatedFields_ = [1];
895
+
757
896
 
758
897
 
759
898
  if (jspb.Message.GENERATE_TO_OBJECT) {
@@ -769,8 +908,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
769
908
  * http://goto/soy-param-migration
770
909
  * @return {!Object}
771
910
  */
772
- proto.gateway.web.v1.MetricInfo.prototype.toObject = function(opt_includeInstance) {
773
- return proto.gateway.web.v1.MetricInfo.toObject(opt_includeInstance, this);
911
+ proto.gateway.web.v1.MetricCatalogSnapshot.prototype.toObject = function(opt_includeInstance) {
912
+ return proto.gateway.web.v1.MetricCatalogSnapshot.toObject(opt_includeInstance, this);
774
913
  };
775
914
 
776
915
 
@@ -779,15 +918,14 @@ proto.gateway.web.v1.MetricInfo.prototype.toObject = function(opt_includeInstanc
779
918
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
780
919
  * the JSPB instance for transitional soy proto support:
781
920
  * http://goto/soy-param-migration
782
- * @param {!proto.gateway.web.v1.MetricInfo} msg The msg instance to transform.
921
+ * @param {!proto.gateway.web.v1.MetricCatalogSnapshot} msg The msg instance to transform.
783
922
  * @return {!Object}
784
923
  * @suppress {unusedLocalVariables} f is only used for nested messages
785
924
  */
786
- proto.gateway.web.v1.MetricInfo.toObject = function(includeInstance, msg) {
925
+ proto.gateway.web.v1.MetricCatalogSnapshot.toObject = function(includeInstance, msg) {
787
926
  var f, obj = {
788
- name: jspb.Message.getFieldWithDefault(msg, 1, ""),
789
- unit: jspb.Message.getFieldWithDefault(msg, 2, ""),
790
- kind: jspb.Message.getFieldWithDefault(msg, 3, 0)
927
+ metricsList: jspb.Message.toObjectList(msg.getMetricsList(),
928
+ proto.gateway.web.v1.MetricInfo.toObject, includeInstance)
791
929
  };
792
930
 
793
931
  if (includeInstance) {
@@ -801,23 +939,23 @@ kind: jspb.Message.getFieldWithDefault(msg, 3, 0)
801
939
  /**
802
940
  * Deserializes binary data (in protobuf wire format).
803
941
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
804
- * @return {!proto.gateway.web.v1.MetricInfo}
942
+ * @return {!proto.gateway.web.v1.MetricCatalogSnapshot}
805
943
  */
806
- proto.gateway.web.v1.MetricInfo.deserializeBinary = function(bytes) {
944
+ proto.gateway.web.v1.MetricCatalogSnapshot.deserializeBinary = function(bytes) {
807
945
  var reader = new jspb.BinaryReader(bytes);
808
- var msg = new proto.gateway.web.v1.MetricInfo;
809
- return proto.gateway.web.v1.MetricInfo.deserializeBinaryFromReader(msg, reader);
946
+ var msg = new proto.gateway.web.v1.MetricCatalogSnapshot;
947
+ return proto.gateway.web.v1.MetricCatalogSnapshot.deserializeBinaryFromReader(msg, reader);
810
948
  };
811
949
 
812
950
 
813
951
  /**
814
952
  * Deserializes binary data (in protobuf wire format) from the
815
953
  * given reader into the given message object.
816
- * @param {!proto.gateway.web.v1.MetricInfo} msg The message object to deserialize into.
954
+ * @param {!proto.gateway.web.v1.MetricCatalogSnapshot} msg The message object to deserialize into.
817
955
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
818
- * @return {!proto.gateway.web.v1.MetricInfo}
956
+ * @return {!proto.gateway.web.v1.MetricCatalogSnapshot}
819
957
  */
820
- proto.gateway.web.v1.MetricInfo.deserializeBinaryFromReader = function(msg, reader) {
958
+ proto.gateway.web.v1.MetricCatalogSnapshot.deserializeBinaryFromReader = function(msg, reader) {
821
959
  while (reader.nextField()) {
822
960
  if (reader.isEndGroup()) {
823
961
  break;
@@ -825,16 +963,9 @@ proto.gateway.web.v1.MetricInfo.deserializeBinaryFromReader = function(msg, read
825
963
  var field = reader.getFieldNumber();
826
964
  switch (field) {
827
965
  case 1:
828
- var value = /** @type {string} */ (reader.readString());
829
- msg.setName(value);
830
- break;
831
- case 2:
832
- var value = /** @type {string} */ (reader.readString());
833
- msg.setUnit(value);
834
- break;
835
- case 3:
836
- var value = /** @type {!proto.gateway.web.v1.MetricKind} */ (reader.readEnum());
837
- msg.setKind(value);
966
+ var value = new proto.gateway.web.v1.MetricInfo;
967
+ reader.readMessage(value,proto.gateway.web.v1.MetricInfo.deserializeBinaryFromReader);
968
+ msg.addMetrics(value);
838
969
  break;
839
970
  default:
840
971
  reader.skipField();
@@ -849,9 +980,9 @@ proto.gateway.web.v1.MetricInfo.deserializeBinaryFromReader = function(msg, read
849
980
  * Serializes the message to binary data (in protobuf wire format).
850
981
  * @return {!Uint8Array}
851
982
  */
852
- proto.gateway.web.v1.MetricInfo.prototype.serializeBinary = function() {
983
+ proto.gateway.web.v1.MetricCatalogSnapshot.prototype.serializeBinary = function() {
853
984
  var writer = new jspb.BinaryWriter();
854
- proto.gateway.web.v1.MetricInfo.serializeBinaryToWriter(this, writer);
985
+ proto.gateway.web.v1.MetricCatalogSnapshot.serializeBinaryToWriter(this, writer);
855
986
  return writer.getResultBuffer();
856
987
  };
857
988
 
@@ -859,87 +990,58 @@ proto.gateway.web.v1.MetricInfo.prototype.serializeBinary = function() {
859
990
  /**
860
991
  * Serializes the given message to binary data (in protobuf wire
861
992
  * format), writing to the given BinaryWriter.
862
- * @param {!proto.gateway.web.v1.MetricInfo} message
993
+ * @param {!proto.gateway.web.v1.MetricCatalogSnapshot} message
863
994
  * @param {!jspb.BinaryWriter} writer
864
995
  * @suppress {unusedLocalVariables} f is only used for nested messages
865
996
  */
866
- proto.gateway.web.v1.MetricInfo.serializeBinaryToWriter = function(message, writer) {
997
+ proto.gateway.web.v1.MetricCatalogSnapshot.serializeBinaryToWriter = function(message, writer) {
867
998
  var f = undefined;
868
- f = message.getName();
999
+ f = message.getMetricsList();
869
1000
  if (f.length > 0) {
870
- writer.writeString(
1001
+ writer.writeRepeatedMessage(
871
1002
  1,
872
- f
873
- );
874
- }
875
- f = message.getUnit();
876
- if (f.length > 0) {
877
- writer.writeString(
878
- 2,
879
- f
880
- );
881
- }
882
- f = message.getKind();
883
- if (f !== 0.0) {
884
- writer.writeEnum(
885
- 3,
886
- f
1003
+ f,
1004
+ proto.gateway.web.v1.MetricInfo.serializeBinaryToWriter
887
1005
  );
888
1006
  }
889
1007
  };
890
1008
 
891
1009
 
892
1010
  /**
893
- * optional string name = 1;
894
- * @return {string}
895
- */
896
- proto.gateway.web.v1.MetricInfo.prototype.getName = function() {
897
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
898
- };
899
-
900
-
901
- /**
902
- * @param {string} value
903
- * @return {!proto.gateway.web.v1.MetricInfo} returns this
904
- */
905
- proto.gateway.web.v1.MetricInfo.prototype.setName = function(value) {
906
- return jspb.Message.setProto3StringField(this, 1, value);
907
- };
908
-
909
-
910
- /**
911
- * optional string unit = 2;
912
- * @return {string}
1011
+ * repeated MetricInfo metrics = 1;
1012
+ * @return {!Array<!proto.gateway.web.v1.MetricInfo>}
913
1013
  */
914
- proto.gateway.web.v1.MetricInfo.prototype.getUnit = function() {
915
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
1014
+ proto.gateway.web.v1.MetricCatalogSnapshot.prototype.getMetricsList = function() {
1015
+ return /** @type{!Array<!proto.gateway.web.v1.MetricInfo>} */ (
1016
+ jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricInfo, 1));
916
1017
  };
917
1018
 
918
1019
 
919
1020
  /**
920
- * @param {string} value
921
- * @return {!proto.gateway.web.v1.MetricInfo} returns this
922
- */
923
- proto.gateway.web.v1.MetricInfo.prototype.setUnit = function(value) {
924
- return jspb.Message.setProto3StringField(this, 2, value);
1021
+ * @param {!Array<!proto.gateway.web.v1.MetricInfo>} value
1022
+ * @return {!proto.gateway.web.v1.MetricCatalogSnapshot} returns this
1023
+ */
1024
+ proto.gateway.web.v1.MetricCatalogSnapshot.prototype.setMetricsList = function(value) {
1025
+ return jspb.Message.setRepeatedWrapperField(this, 1, value);
925
1026
  };
926
1027
 
927
1028
 
928
1029
  /**
929
- * optional MetricKind kind = 3;
930
- * @return {!proto.gateway.web.v1.MetricKind}
1030
+ * @param {!proto.gateway.web.v1.MetricInfo=} opt_value
1031
+ * @param {number=} opt_index
1032
+ * @return {!proto.gateway.web.v1.MetricInfo}
931
1033
  */
932
- proto.gateway.web.v1.MetricInfo.prototype.getKind = function() {
933
- return /** @type {!proto.gateway.web.v1.MetricKind} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
1034
+ proto.gateway.web.v1.MetricCatalogSnapshot.prototype.addMetrics = function(opt_value, opt_index) {
1035
+ return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.gateway.web.v1.MetricInfo, opt_index);
934
1036
  };
935
1037
 
936
1038
 
937
1039
  /**
938
- * @param {!proto.gateway.web.v1.MetricKind} value
939
- * @return {!proto.gateway.web.v1.MetricInfo} returns this
1040
+ * Clears the list making it empty but non-null.
1041
+ * @return {!proto.gateway.web.v1.MetricCatalogSnapshot} returns this
940
1042
  */
941
- proto.gateway.web.v1.MetricInfo.prototype.setKind = function(value) {
942
- return jspb.Message.setProto3EnumField(this, 3, value);
1043
+ proto.gateway.web.v1.MetricCatalogSnapshot.prototype.clearMetricsList = function() {
1044
+ return this.setMetricsList([]);
943
1045
  };
944
1046
 
945
1047
 
@@ -959,8 +1061,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
959
1061
  * http://goto/soy-param-migration
960
1062
  * @return {!Object}
961
1063
  */
962
- proto.gateway.web.v1.ListMetricAttributesRequest.prototype.toObject = function(opt_includeInstance) {
963
- return proto.gateway.web.v1.ListMetricAttributesRequest.toObject(opt_includeInstance, this);
1064
+ proto.gateway.web.v1.MetricInfo.prototype.toObject = function(opt_includeInstance) {
1065
+ return proto.gateway.web.v1.MetricInfo.toObject(opt_includeInstance, this);
964
1066
  };
965
1067
 
966
1068
 
@@ -969,15 +1071,15 @@ proto.gateway.web.v1.ListMetricAttributesRequest.prototype.toObject = function(o
969
1071
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
970
1072
  * the JSPB instance for transitional soy proto support:
971
1073
  * http://goto/soy-param-migration
972
- * @param {!proto.gateway.web.v1.ListMetricAttributesRequest} msg The msg instance to transform.
1074
+ * @param {!proto.gateway.web.v1.MetricInfo} msg The msg instance to transform.
973
1075
  * @return {!Object}
974
1076
  * @suppress {unusedLocalVariables} f is only used for nested messages
975
1077
  */
976
- proto.gateway.web.v1.ListMetricAttributesRequest.toObject = function(includeInstance, msg) {
1078
+ proto.gateway.web.v1.MetricInfo.toObject = function(includeInstance, msg) {
977
1079
  var f, obj = {
978
- projectId: jspb.Message.getFieldWithDefault(msg, 1, ""),
979
- metricName: jspb.Message.getFieldWithDefault(msg, 2, ""),
980
- organizationId: jspb.Message.getFieldWithDefault(msg, 3, "")
1080
+ name: jspb.Message.getFieldWithDefault(msg, 1, ""),
1081
+ unit: jspb.Message.getFieldWithDefault(msg, 2, ""),
1082
+ kind: jspb.Message.getFieldWithDefault(msg, 3, 0)
981
1083
  };
982
1084
 
983
1085
  if (includeInstance) {
@@ -991,23 +1093,23 @@ organizationId: jspb.Message.getFieldWithDefault(msg, 3, "")
991
1093
  /**
992
1094
  * Deserializes binary data (in protobuf wire format).
993
1095
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
994
- * @return {!proto.gateway.web.v1.ListMetricAttributesRequest}
1096
+ * @return {!proto.gateway.web.v1.MetricInfo}
995
1097
  */
996
- proto.gateway.web.v1.ListMetricAttributesRequest.deserializeBinary = function(bytes) {
1098
+ proto.gateway.web.v1.MetricInfo.deserializeBinary = function(bytes) {
997
1099
  var reader = new jspb.BinaryReader(bytes);
998
- var msg = new proto.gateway.web.v1.ListMetricAttributesRequest;
999
- return proto.gateway.web.v1.ListMetricAttributesRequest.deserializeBinaryFromReader(msg, reader);
1100
+ var msg = new proto.gateway.web.v1.MetricInfo;
1101
+ return proto.gateway.web.v1.MetricInfo.deserializeBinaryFromReader(msg, reader);
1000
1102
  };
1001
1103
 
1002
1104
 
1003
1105
  /**
1004
1106
  * Deserializes binary data (in protobuf wire format) from the
1005
1107
  * given reader into the given message object.
1006
- * @param {!proto.gateway.web.v1.ListMetricAttributesRequest} msg The message object to deserialize into.
1108
+ * @param {!proto.gateway.web.v1.MetricInfo} msg The message object to deserialize into.
1007
1109
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
1008
- * @return {!proto.gateway.web.v1.ListMetricAttributesRequest}
1110
+ * @return {!proto.gateway.web.v1.MetricInfo}
1009
1111
  */
1010
- proto.gateway.web.v1.ListMetricAttributesRequest.deserializeBinaryFromReader = function(msg, reader) {
1112
+ proto.gateway.web.v1.MetricInfo.deserializeBinaryFromReader = function(msg, reader) {
1011
1113
  while (reader.nextField()) {
1012
1114
  if (reader.isEndGroup()) {
1013
1115
  break;
@@ -1016,15 +1118,15 @@ proto.gateway.web.v1.ListMetricAttributesRequest.deserializeBinaryFromReader = f
1016
1118
  switch (field) {
1017
1119
  case 1:
1018
1120
  var value = /** @type {string} */ (reader.readString());
1019
- msg.setProjectId(value);
1121
+ msg.setName(value);
1020
1122
  break;
1021
1123
  case 2:
1022
1124
  var value = /** @type {string} */ (reader.readString());
1023
- msg.setMetricName(value);
1125
+ msg.setUnit(value);
1024
1126
  break;
1025
1127
  case 3:
1026
- var value = /** @type {string} */ (reader.readString());
1027
- msg.setOrganizationId(value);
1128
+ var value = /** @type {!proto.gateway.web.v1.MetricKind} */ (reader.readEnum());
1129
+ msg.setKind(value);
1028
1130
  break;
1029
1131
  default:
1030
1132
  reader.skipField();
@@ -1039,9 +1141,9 @@ proto.gateway.web.v1.ListMetricAttributesRequest.deserializeBinaryFromReader = f
1039
1141
  * Serializes the message to binary data (in protobuf wire format).
1040
1142
  * @return {!Uint8Array}
1041
1143
  */
1042
- proto.gateway.web.v1.ListMetricAttributesRequest.prototype.serializeBinary = function() {
1144
+ proto.gateway.web.v1.MetricInfo.prototype.serializeBinary = function() {
1043
1145
  var writer = new jspb.BinaryWriter();
1044
- proto.gateway.web.v1.ListMetricAttributesRequest.serializeBinaryToWriter(this, writer);
1146
+ proto.gateway.web.v1.MetricInfo.serializeBinaryToWriter(this, writer);
1045
1147
  return writer.getResultBuffer();
1046
1148
  };
1047
1149
 
@@ -1049,29 +1151,29 @@ proto.gateway.web.v1.ListMetricAttributesRequest.prototype.serializeBinary = fun
1049
1151
  /**
1050
1152
  * Serializes the given message to binary data (in protobuf wire
1051
1153
  * format), writing to the given BinaryWriter.
1052
- * @param {!proto.gateway.web.v1.ListMetricAttributesRequest} message
1154
+ * @param {!proto.gateway.web.v1.MetricInfo} message
1053
1155
  * @param {!jspb.BinaryWriter} writer
1054
1156
  * @suppress {unusedLocalVariables} f is only used for nested messages
1055
1157
  */
1056
- proto.gateway.web.v1.ListMetricAttributesRequest.serializeBinaryToWriter = function(message, writer) {
1158
+ proto.gateway.web.v1.MetricInfo.serializeBinaryToWriter = function(message, writer) {
1057
1159
  var f = undefined;
1058
- f = message.getProjectId();
1160
+ f = message.getName();
1059
1161
  if (f.length > 0) {
1060
1162
  writer.writeString(
1061
1163
  1,
1062
1164
  f
1063
1165
  );
1064
1166
  }
1065
- f = message.getMetricName();
1167
+ f = message.getUnit();
1066
1168
  if (f.length > 0) {
1067
1169
  writer.writeString(
1068
1170
  2,
1069
1171
  f
1070
1172
  );
1071
1173
  }
1072
- f = message.getOrganizationId();
1073
- if (f.length > 0) {
1074
- writer.writeString(
1174
+ f = message.getKind();
1175
+ if (f !== 0.0) {
1176
+ writer.writeEnum(
1075
1177
  3,
1076
1178
  f
1077
1179
  );
@@ -1080,67 +1182,60 @@ proto.gateway.web.v1.ListMetricAttributesRequest.serializeBinaryToWriter = funct
1080
1182
 
1081
1183
 
1082
1184
  /**
1083
- * optional string project_id = 1;
1185
+ * optional string name = 1;
1084
1186
  * @return {string}
1085
1187
  */
1086
- proto.gateway.web.v1.ListMetricAttributesRequest.prototype.getProjectId = function() {
1188
+ proto.gateway.web.v1.MetricInfo.prototype.getName = function() {
1087
1189
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
1088
1190
  };
1089
1191
 
1090
1192
 
1091
1193
  /**
1092
1194
  * @param {string} value
1093
- * @return {!proto.gateway.web.v1.ListMetricAttributesRequest} returns this
1195
+ * @return {!proto.gateway.web.v1.MetricInfo} returns this
1094
1196
  */
1095
- proto.gateway.web.v1.ListMetricAttributesRequest.prototype.setProjectId = function(value) {
1197
+ proto.gateway.web.v1.MetricInfo.prototype.setName = function(value) {
1096
1198
  return jspb.Message.setProto3StringField(this, 1, value);
1097
1199
  };
1098
1200
 
1099
1201
 
1100
1202
  /**
1101
- * optional string metric_name = 2;
1203
+ * optional string unit = 2;
1102
1204
  * @return {string}
1103
1205
  */
1104
- proto.gateway.web.v1.ListMetricAttributesRequest.prototype.getMetricName = function() {
1206
+ proto.gateway.web.v1.MetricInfo.prototype.getUnit = function() {
1105
1207
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
1106
1208
  };
1107
1209
 
1108
1210
 
1109
1211
  /**
1110
1212
  * @param {string} value
1111
- * @return {!proto.gateway.web.v1.ListMetricAttributesRequest} returns this
1213
+ * @return {!proto.gateway.web.v1.MetricInfo} returns this
1112
1214
  */
1113
- proto.gateway.web.v1.ListMetricAttributesRequest.prototype.setMetricName = function(value) {
1215
+ proto.gateway.web.v1.MetricInfo.prototype.setUnit = function(value) {
1114
1216
  return jspb.Message.setProto3StringField(this, 2, value);
1115
1217
  };
1116
1218
 
1117
1219
 
1118
1220
  /**
1119
- * optional string organization_id = 3;
1120
- * @return {string}
1221
+ * optional MetricKind kind = 3;
1222
+ * @return {!proto.gateway.web.v1.MetricKind}
1121
1223
  */
1122
- proto.gateway.web.v1.ListMetricAttributesRequest.prototype.getOrganizationId = function() {
1123
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
1224
+ proto.gateway.web.v1.MetricInfo.prototype.getKind = function() {
1225
+ return /** @type {!proto.gateway.web.v1.MetricKind} */ (jspb.Message.getFieldWithDefault(this, 3, 0));
1124
1226
  };
1125
1227
 
1126
1228
 
1127
1229
  /**
1128
- * @param {string} value
1129
- * @return {!proto.gateway.web.v1.ListMetricAttributesRequest} returns this
1230
+ * @param {!proto.gateway.web.v1.MetricKind} value
1231
+ * @return {!proto.gateway.web.v1.MetricInfo} returns this
1130
1232
  */
1131
- proto.gateway.web.v1.ListMetricAttributesRequest.prototype.setOrganizationId = function(value) {
1132
- return jspb.Message.setProto3StringField(this, 3, value);
1233
+ proto.gateway.web.v1.MetricInfo.prototype.setKind = function(value) {
1234
+ return jspb.Message.setProto3EnumField(this, 3, value);
1133
1235
  };
1134
1236
 
1135
1237
 
1136
1238
 
1137
- /**
1138
- * List of repeated fields within this message type.
1139
- * @private {!Array<number>}
1140
- * @const
1141
- */
1142
- proto.gateway.web.v1.ListMetricAttributesResponse.repeatedFields_ = [2];
1143
-
1144
1239
 
1145
1240
 
1146
1241
  if (jspb.Message.GENERATE_TO_OBJECT) {
@@ -1156,8 +1251,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
1156
1251
  * http://goto/soy-param-migration
1157
1252
  * @return {!Object}
1158
1253
  */
1159
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.toObject = function(opt_includeInstance) {
1160
- return proto.gateway.web.v1.ListMetricAttributesResponse.toObject(opt_includeInstance, this);
1254
+ proto.gateway.web.v1.StreamMetricAttributesRequest.prototype.toObject = function(opt_includeInstance) {
1255
+ return proto.gateway.web.v1.StreamMetricAttributesRequest.toObject(opt_includeInstance, this);
1161
1256
  };
1162
1257
 
1163
1258
 
@@ -1166,15 +1261,15 @@ proto.gateway.web.v1.ListMetricAttributesResponse.prototype.toObject = function(
1166
1261
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
1167
1262
  * the JSPB instance for transitional soy proto support:
1168
1263
  * http://goto/soy-param-migration
1169
- * @param {!proto.gateway.web.v1.ListMetricAttributesResponse} msg The msg instance to transform.
1264
+ * @param {!proto.gateway.web.v1.StreamMetricAttributesRequest} msg The msg instance to transform.
1170
1265
  * @return {!Object}
1171
1266
  * @suppress {unusedLocalVariables} f is only used for nested messages
1172
1267
  */
1173
- proto.gateway.web.v1.ListMetricAttributesResponse.toObject = function(includeInstance, msg) {
1268
+ proto.gateway.web.v1.StreamMetricAttributesRequest.toObject = function(includeInstance, msg) {
1174
1269
  var f, obj = {
1175
- status: (f = msg.getStatus()) && proto_gateway_common_v1_status_pb.ResponseStatus.toObject(includeInstance, f),
1176
- attributesList: jspb.Message.toObjectList(msg.getAttributesList(),
1177
- proto.gateway.web.v1.MetricAttribute.toObject, includeInstance)
1270
+ organizationId: jspb.Message.getFieldWithDefault(msg, 1, ""),
1271
+ projectId: jspb.Message.getFieldWithDefault(msg, 2, ""),
1272
+ metricName: jspb.Message.getFieldWithDefault(msg, 3, "")
1178
1273
  };
1179
1274
 
1180
1275
  if (includeInstance) {
@@ -1188,23 +1283,23 @@ attributesList: jspb.Message.toObjectList(msg.getAttributesList(),
1188
1283
  /**
1189
1284
  * Deserializes binary data (in protobuf wire format).
1190
1285
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
1191
- * @return {!proto.gateway.web.v1.ListMetricAttributesResponse}
1286
+ * @return {!proto.gateway.web.v1.StreamMetricAttributesRequest}
1192
1287
  */
1193
- proto.gateway.web.v1.ListMetricAttributesResponse.deserializeBinary = function(bytes) {
1288
+ proto.gateway.web.v1.StreamMetricAttributesRequest.deserializeBinary = function(bytes) {
1194
1289
  var reader = new jspb.BinaryReader(bytes);
1195
- var msg = new proto.gateway.web.v1.ListMetricAttributesResponse;
1196
- return proto.gateway.web.v1.ListMetricAttributesResponse.deserializeBinaryFromReader(msg, reader);
1290
+ var msg = new proto.gateway.web.v1.StreamMetricAttributesRequest;
1291
+ return proto.gateway.web.v1.StreamMetricAttributesRequest.deserializeBinaryFromReader(msg, reader);
1197
1292
  };
1198
1293
 
1199
1294
 
1200
1295
  /**
1201
1296
  * Deserializes binary data (in protobuf wire format) from the
1202
1297
  * given reader into the given message object.
1203
- * @param {!proto.gateway.web.v1.ListMetricAttributesResponse} msg The message object to deserialize into.
1298
+ * @param {!proto.gateway.web.v1.StreamMetricAttributesRequest} msg The message object to deserialize into.
1204
1299
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
1205
- * @return {!proto.gateway.web.v1.ListMetricAttributesResponse}
1300
+ * @return {!proto.gateway.web.v1.StreamMetricAttributesRequest}
1206
1301
  */
1207
- proto.gateway.web.v1.ListMetricAttributesResponse.deserializeBinaryFromReader = function(msg, reader) {
1302
+ proto.gateway.web.v1.StreamMetricAttributesRequest.deserializeBinaryFromReader = function(msg, reader) {
1208
1303
  while (reader.nextField()) {
1209
1304
  if (reader.isEndGroup()) {
1210
1305
  break;
@@ -1212,14 +1307,16 @@ proto.gateway.web.v1.ListMetricAttributesResponse.deserializeBinaryFromReader =
1212
1307
  var field = reader.getFieldNumber();
1213
1308
  switch (field) {
1214
1309
  case 1:
1215
- var value = new proto_gateway_common_v1_status_pb.ResponseStatus;
1216
- reader.readMessage(value,proto_gateway_common_v1_status_pb.ResponseStatus.deserializeBinaryFromReader);
1217
- msg.setStatus(value);
1310
+ var value = /** @type {string} */ (reader.readString());
1311
+ msg.setOrganizationId(value);
1218
1312
  break;
1219
1313
  case 2:
1220
- var value = new proto.gateway.web.v1.MetricAttribute;
1221
- reader.readMessage(value,proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader);
1222
- msg.addAttributes(value);
1314
+ var value = /** @type {string} */ (reader.readString());
1315
+ msg.setProjectId(value);
1316
+ break;
1317
+ case 3:
1318
+ var value = /** @type {string} */ (reader.readString());
1319
+ msg.setMetricName(value);
1223
1320
  break;
1224
1321
  default:
1225
1322
  reader.skipField();
@@ -1234,9 +1331,9 @@ proto.gateway.web.v1.ListMetricAttributesResponse.deserializeBinaryFromReader =
1234
1331
  * Serializes the message to binary data (in protobuf wire format).
1235
1332
  * @return {!Uint8Array}
1236
1333
  */
1237
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.serializeBinary = function() {
1334
+ proto.gateway.web.v1.StreamMetricAttributesRequest.prototype.serializeBinary = function() {
1238
1335
  var writer = new jspb.BinaryWriter();
1239
- proto.gateway.web.v1.ListMetricAttributesResponse.serializeBinaryToWriter(this, writer);
1336
+ proto.gateway.web.v1.StreamMetricAttributesRequest.serializeBinaryToWriter(this, writer);
1240
1337
  return writer.getResultBuffer();
1241
1338
  };
1242
1339
 
@@ -1244,113 +1341,116 @@ proto.gateway.web.v1.ListMetricAttributesResponse.prototype.serializeBinary = fu
1244
1341
  /**
1245
1342
  * Serializes the given message to binary data (in protobuf wire
1246
1343
  * format), writing to the given BinaryWriter.
1247
- * @param {!proto.gateway.web.v1.ListMetricAttributesResponse} message
1344
+ * @param {!proto.gateway.web.v1.StreamMetricAttributesRequest} message
1248
1345
  * @param {!jspb.BinaryWriter} writer
1249
1346
  * @suppress {unusedLocalVariables} f is only used for nested messages
1250
1347
  */
1251
- proto.gateway.web.v1.ListMetricAttributesResponse.serializeBinaryToWriter = function(message, writer) {
1348
+ proto.gateway.web.v1.StreamMetricAttributesRequest.serializeBinaryToWriter = function(message, writer) {
1252
1349
  var f = undefined;
1253
- f = message.getStatus();
1254
- if (f != null) {
1255
- writer.writeMessage(
1350
+ f = message.getOrganizationId();
1351
+ if (f.length > 0) {
1352
+ writer.writeString(
1256
1353
  1,
1257
- f,
1258
- proto_gateway_common_v1_status_pb.ResponseStatus.serializeBinaryToWriter
1354
+ f
1259
1355
  );
1260
1356
  }
1261
- f = message.getAttributesList();
1357
+ f = message.getProjectId();
1262
1358
  if (f.length > 0) {
1263
- writer.writeRepeatedMessage(
1359
+ writer.writeString(
1264
1360
  2,
1265
- f,
1266
- proto.gateway.web.v1.MetricAttribute.serializeBinaryToWriter
1361
+ f
1362
+ );
1363
+ }
1364
+ f = message.getMetricName();
1365
+ if (f.length > 0) {
1366
+ writer.writeString(
1367
+ 3,
1368
+ f
1267
1369
  );
1268
1370
  }
1269
1371
  };
1270
1372
 
1271
1373
 
1272
1374
  /**
1273
- * optional gateway.common.v1.ResponseStatus status = 1;
1274
- * @return {?proto.gateway.common.v1.ResponseStatus}
1375
+ * optional string organization_id = 1;
1376
+ * @return {string}
1275
1377
  */
1276
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.getStatus = function() {
1277
- return /** @type{?proto.gateway.common.v1.ResponseStatus} */ (
1278
- jspb.Message.getWrapperField(this, proto_gateway_common_v1_status_pb.ResponseStatus, 1));
1378
+ proto.gateway.web.v1.StreamMetricAttributesRequest.prototype.getOrganizationId = function() {
1379
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
1279
1380
  };
1280
1381
 
1281
1382
 
1282
1383
  /**
1283
- * @param {?proto.gateway.common.v1.ResponseStatus|undefined} value
1284
- * @return {!proto.gateway.web.v1.ListMetricAttributesResponse} returns this
1285
- */
1286
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.setStatus = function(value) {
1287
- return jspb.Message.setWrapperField(this, 1, value);
1384
+ * @param {string} value
1385
+ * @return {!proto.gateway.web.v1.StreamMetricAttributesRequest} returns this
1386
+ */
1387
+ proto.gateway.web.v1.StreamMetricAttributesRequest.prototype.setOrganizationId = function(value) {
1388
+ return jspb.Message.setProto3StringField(this, 1, value);
1288
1389
  };
1289
1390
 
1290
1391
 
1291
1392
  /**
1292
- * Clears the message field making it undefined.
1293
- * @return {!proto.gateway.web.v1.ListMetricAttributesResponse} returns this
1393
+ * optional string project_id = 2;
1394
+ * @return {string}
1294
1395
  */
1295
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.clearStatus = function() {
1296
- return this.setStatus(undefined);
1396
+ proto.gateway.web.v1.StreamMetricAttributesRequest.prototype.getProjectId = function() {
1397
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
1297
1398
  };
1298
1399
 
1299
1400
 
1300
1401
  /**
1301
- * Returns whether this field is set.
1302
- * @return {boolean}
1402
+ * @param {string} value
1403
+ * @return {!proto.gateway.web.v1.StreamMetricAttributesRequest} returns this
1303
1404
  */
1304
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.hasStatus = function() {
1305
- return jspb.Message.getField(this, 1) != null;
1405
+ proto.gateway.web.v1.StreamMetricAttributesRequest.prototype.setProjectId = function(value) {
1406
+ return jspb.Message.setProto3StringField(this, 2, value);
1306
1407
  };
1307
1408
 
1308
1409
 
1309
1410
  /**
1310
- * repeated MetricAttribute attributes = 2;
1311
- * @return {!Array<!proto.gateway.web.v1.MetricAttribute>}
1411
+ * optional string metric_name = 3;
1412
+ * @return {string}
1312
1413
  */
1313
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.getAttributesList = function() {
1314
- return /** @type{!Array<!proto.gateway.web.v1.MetricAttribute>} */ (
1315
- jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricAttribute, 2));
1414
+ proto.gateway.web.v1.StreamMetricAttributesRequest.prototype.getMetricName = function() {
1415
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 3, ""));
1316
1416
  };
1317
1417
 
1318
1418
 
1319
1419
  /**
1320
- * @param {!Array<!proto.gateway.web.v1.MetricAttribute>} value
1321
- * @return {!proto.gateway.web.v1.ListMetricAttributesResponse} returns this
1322
- */
1323
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.setAttributesList = function(value) {
1324
- return jspb.Message.setRepeatedWrapperField(this, 2, value);
1420
+ * @param {string} value
1421
+ * @return {!proto.gateway.web.v1.StreamMetricAttributesRequest} returns this
1422
+ */
1423
+ proto.gateway.web.v1.StreamMetricAttributesRequest.prototype.setMetricName = function(value) {
1424
+ return jspb.Message.setProto3StringField(this, 3, value);
1325
1425
  };
1326
1426
 
1327
1427
 
1428
+
1328
1429
  /**
1329
- * @param {!proto.gateway.web.v1.MetricAttribute=} opt_value
1330
- * @param {number=} opt_index
1331
- * @return {!proto.gateway.web.v1.MetricAttribute}
1430
+ * Oneof group definitions for this message. Each group defines the field
1431
+ * numbers belonging to that group. When of these fields' value is set, all
1432
+ * other fields in the group are cleared. During deserialization, if multiple
1433
+ * fields are encountered for a group, only the last value seen will be kept.
1434
+ * @private {!Array<!Array<number>>}
1435
+ * @const
1332
1436
  */
1333
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.addAttributes = function(opt_value, opt_index) {
1334
- return jspb.Message.addToRepeatedWrapperField(this, 2, opt_value, proto.gateway.web.v1.MetricAttribute, opt_index);
1335
- };
1336
-
1437
+ proto.gateway.web.v1.MetricAttributeEnvelope.oneofGroups_ = [[1,2]];
1337
1438
 
1338
1439
  /**
1339
- * Clears the list making it empty but non-null.
1340
- * @return {!proto.gateway.web.v1.ListMetricAttributesResponse} returns this
1440
+ * @enum {number}
1341
1441
  */
1342
- proto.gateway.web.v1.ListMetricAttributesResponse.prototype.clearAttributesList = function() {
1343
- return this.setAttributesList([]);
1442
+ proto.gateway.web.v1.MetricAttributeEnvelope.EventCase = {
1443
+ EVENT_NOT_SET: 0,
1444
+ SNAPSHOT: 1,
1445
+ ADDED: 2
1344
1446
  };
1345
1447
 
1346
-
1347
-
1348
1448
  /**
1349
- * List of repeated fields within this message type.
1350
- * @private {!Array<number>}
1351
- * @const
1449
+ * @return {proto.gateway.web.v1.MetricAttributeEnvelope.EventCase}
1352
1450
  */
1353
- proto.gateway.web.v1.MetricAttribute.repeatedFields_ = [2];
1451
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.getEventCase = function() {
1452
+ return /** @type {proto.gateway.web.v1.MetricAttributeEnvelope.EventCase} */(jspb.Message.computeOneofCase(this, proto.gateway.web.v1.MetricAttributeEnvelope.oneofGroups_[0]));
1453
+ };
1354
1454
 
1355
1455
 
1356
1456
 
@@ -1367,8 +1467,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
1367
1467
  * http://goto/soy-param-migration
1368
1468
  * @return {!Object}
1369
1469
  */
1370
- proto.gateway.web.v1.MetricAttribute.prototype.toObject = function(opt_includeInstance) {
1371
- return proto.gateway.web.v1.MetricAttribute.toObject(opt_includeInstance, this);
1470
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.toObject = function(opt_includeInstance) {
1471
+ return proto.gateway.web.v1.MetricAttributeEnvelope.toObject(opt_includeInstance, this);
1372
1472
  };
1373
1473
 
1374
1474
 
@@ -1377,14 +1477,14 @@ proto.gateway.web.v1.MetricAttribute.prototype.toObject = function(opt_includeIn
1377
1477
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
1378
1478
  * the JSPB instance for transitional soy proto support:
1379
1479
  * http://goto/soy-param-migration
1380
- * @param {!proto.gateway.web.v1.MetricAttribute} msg The msg instance to transform.
1480
+ * @param {!proto.gateway.web.v1.MetricAttributeEnvelope} msg The msg instance to transform.
1381
1481
  * @return {!Object}
1382
1482
  * @suppress {unusedLocalVariables} f is only used for nested messages
1383
1483
  */
1384
- proto.gateway.web.v1.MetricAttribute.toObject = function(includeInstance, msg) {
1484
+ proto.gateway.web.v1.MetricAttributeEnvelope.toObject = function(includeInstance, msg) {
1385
1485
  var f, obj = {
1386
- key: jspb.Message.getFieldWithDefault(msg, 1, ""),
1387
- valuesList: (f = jspb.Message.getRepeatedField(msg, 2)) == null ? undefined : f
1486
+ snapshot: (f = msg.getSnapshot()) && proto.gateway.web.v1.MetricAttributeSnapshot.toObject(includeInstance, f),
1487
+ added: (f = msg.getAdded()) && proto.gateway.web.v1.MetricAttribute.toObject(includeInstance, f)
1388
1488
  };
1389
1489
 
1390
1490
  if (includeInstance) {
@@ -1398,23 +1498,23 @@ valuesList: (f = jspb.Message.getRepeatedField(msg, 2)) == null ? undefined : f
1398
1498
  /**
1399
1499
  * Deserializes binary data (in protobuf wire format).
1400
1500
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
1401
- * @return {!proto.gateway.web.v1.MetricAttribute}
1501
+ * @return {!proto.gateway.web.v1.MetricAttributeEnvelope}
1402
1502
  */
1403
- proto.gateway.web.v1.MetricAttribute.deserializeBinary = function(bytes) {
1503
+ proto.gateway.web.v1.MetricAttributeEnvelope.deserializeBinary = function(bytes) {
1404
1504
  var reader = new jspb.BinaryReader(bytes);
1405
- var msg = new proto.gateway.web.v1.MetricAttribute;
1406
- return proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader(msg, reader);
1505
+ var msg = new proto.gateway.web.v1.MetricAttributeEnvelope;
1506
+ return proto.gateway.web.v1.MetricAttributeEnvelope.deserializeBinaryFromReader(msg, reader);
1407
1507
  };
1408
1508
 
1409
1509
 
1410
1510
  /**
1411
1511
  * Deserializes binary data (in protobuf wire format) from the
1412
1512
  * given reader into the given message object.
1413
- * @param {!proto.gateway.web.v1.MetricAttribute} msg The message object to deserialize into.
1513
+ * @param {!proto.gateway.web.v1.MetricAttributeEnvelope} msg The message object to deserialize into.
1414
1514
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
1415
- * @return {!proto.gateway.web.v1.MetricAttribute}
1515
+ * @return {!proto.gateway.web.v1.MetricAttributeEnvelope}
1416
1516
  */
1417
- proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader = function(msg, reader) {
1517
+ proto.gateway.web.v1.MetricAttributeEnvelope.deserializeBinaryFromReader = function(msg, reader) {
1418
1518
  while (reader.nextField()) {
1419
1519
  if (reader.isEndGroup()) {
1420
1520
  break;
@@ -1422,12 +1522,14 @@ proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader = function(msg,
1422
1522
  var field = reader.getFieldNumber();
1423
1523
  switch (field) {
1424
1524
  case 1:
1425
- var value = /** @type {string} */ (reader.readString());
1426
- msg.setKey(value);
1525
+ var value = new proto.gateway.web.v1.MetricAttributeSnapshot;
1526
+ reader.readMessage(value,proto.gateway.web.v1.MetricAttributeSnapshot.deserializeBinaryFromReader);
1527
+ msg.setSnapshot(value);
1427
1528
  break;
1428
1529
  case 2:
1429
- var value = /** @type {string} */ (reader.readString());
1430
- msg.addValues(value);
1530
+ var value = new proto.gateway.web.v1.MetricAttribute;
1531
+ reader.readMessage(value,proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader);
1532
+ msg.setAdded(value);
1431
1533
  break;
1432
1534
  default:
1433
1535
  reader.skipField();
@@ -1442,9 +1544,9 @@ proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader = function(msg,
1442
1544
  * Serializes the message to binary data (in protobuf wire format).
1443
1545
  * @return {!Uint8Array}
1444
1546
  */
1445
- proto.gateway.web.v1.MetricAttribute.prototype.serializeBinary = function() {
1547
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.serializeBinary = function() {
1446
1548
  var writer = new jspb.BinaryWriter();
1447
- proto.gateway.web.v1.MetricAttribute.serializeBinaryToWriter(this, writer);
1549
+ proto.gateway.web.v1.MetricAttributeEnvelope.serializeBinaryToWriter(this, writer);
1448
1550
  return writer.getResultBuffer();
1449
1551
  };
1450
1552
 
@@ -1452,81 +1554,102 @@ proto.gateway.web.v1.MetricAttribute.prototype.serializeBinary = function() {
1452
1554
  /**
1453
1555
  * Serializes the given message to binary data (in protobuf wire
1454
1556
  * format), writing to the given BinaryWriter.
1455
- * @param {!proto.gateway.web.v1.MetricAttribute} message
1557
+ * @param {!proto.gateway.web.v1.MetricAttributeEnvelope} message
1456
1558
  * @param {!jspb.BinaryWriter} writer
1457
1559
  * @suppress {unusedLocalVariables} f is only used for nested messages
1458
1560
  */
1459
- proto.gateway.web.v1.MetricAttribute.serializeBinaryToWriter = function(message, writer) {
1561
+ proto.gateway.web.v1.MetricAttributeEnvelope.serializeBinaryToWriter = function(message, writer) {
1460
1562
  var f = undefined;
1461
- f = message.getKey();
1462
- if (f.length > 0) {
1463
- writer.writeString(
1563
+ f = message.getSnapshot();
1564
+ if (f != null) {
1565
+ writer.writeMessage(
1464
1566
  1,
1465
- f
1567
+ f,
1568
+ proto.gateway.web.v1.MetricAttributeSnapshot.serializeBinaryToWriter
1466
1569
  );
1467
1570
  }
1468
- f = message.getValuesList();
1469
- if (f.length > 0) {
1470
- writer.writeRepeatedString(
1571
+ f = message.getAdded();
1572
+ if (f != null) {
1573
+ writer.writeMessage(
1471
1574
  2,
1472
- f
1575
+ f,
1576
+ proto.gateway.web.v1.MetricAttribute.serializeBinaryToWriter
1473
1577
  );
1474
1578
  }
1475
1579
  };
1476
1580
 
1477
1581
 
1478
1582
  /**
1479
- * optional string key = 1;
1480
- * @return {string}
1583
+ * optional MetricAttributeSnapshot snapshot = 1;
1584
+ * @return {?proto.gateway.web.v1.MetricAttributeSnapshot}
1481
1585
  */
1482
- proto.gateway.web.v1.MetricAttribute.prototype.getKey = function() {
1483
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
1586
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.getSnapshot = function() {
1587
+ return /** @type{?proto.gateway.web.v1.MetricAttributeSnapshot} */ (
1588
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricAttributeSnapshot, 1));
1484
1589
  };
1485
1590
 
1486
1591
 
1487
1592
  /**
1488
- * @param {string} value
1489
- * @return {!proto.gateway.web.v1.MetricAttribute} returns this
1593
+ * @param {?proto.gateway.web.v1.MetricAttributeSnapshot|undefined} value
1594
+ * @return {!proto.gateway.web.v1.MetricAttributeEnvelope} returns this
1595
+ */
1596
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.setSnapshot = function(value) {
1597
+ return jspb.Message.setOneofWrapperField(this, 1, proto.gateway.web.v1.MetricAttributeEnvelope.oneofGroups_[0], value);
1598
+ };
1599
+
1600
+
1601
+ /**
1602
+ * Clears the message field making it undefined.
1603
+ * @return {!proto.gateway.web.v1.MetricAttributeEnvelope} returns this
1490
1604
  */
1491
- proto.gateway.web.v1.MetricAttribute.prototype.setKey = function(value) {
1492
- return jspb.Message.setProto3StringField(this, 1, value);
1605
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.clearSnapshot = function() {
1606
+ return this.setSnapshot(undefined);
1493
1607
  };
1494
1608
 
1495
1609
 
1496
1610
  /**
1497
- * repeated string values = 2;
1498
- * @return {!Array<string>}
1611
+ * Returns whether this field is set.
1612
+ * @return {boolean}
1499
1613
  */
1500
- proto.gateway.web.v1.MetricAttribute.prototype.getValuesList = function() {
1501
- return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 2));
1614
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.hasSnapshot = function() {
1615
+ return jspb.Message.getField(this, 1) != null;
1502
1616
  };
1503
1617
 
1504
1618
 
1505
1619
  /**
1506
- * @param {!Array<string>} value
1507
- * @return {!proto.gateway.web.v1.MetricAttribute} returns this
1620
+ * optional MetricAttribute added = 2;
1621
+ * @return {?proto.gateway.web.v1.MetricAttribute}
1508
1622
  */
1509
- proto.gateway.web.v1.MetricAttribute.prototype.setValuesList = function(value) {
1510
- return jspb.Message.setField(this, 2, value || []);
1623
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.getAdded = function() {
1624
+ return /** @type{?proto.gateway.web.v1.MetricAttribute} */ (
1625
+ jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricAttribute, 2));
1511
1626
  };
1512
1627
 
1513
1628
 
1514
1629
  /**
1515
- * @param {string} value
1516
- * @param {number=} opt_index
1517
- * @return {!proto.gateway.web.v1.MetricAttribute} returns this
1630
+ * @param {?proto.gateway.web.v1.MetricAttribute|undefined} value
1631
+ * @return {!proto.gateway.web.v1.MetricAttributeEnvelope} returns this
1632
+ */
1633
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.setAdded = function(value) {
1634
+ return jspb.Message.setOneofWrapperField(this, 2, proto.gateway.web.v1.MetricAttributeEnvelope.oneofGroups_[0], value);
1635
+ };
1636
+
1637
+
1638
+ /**
1639
+ * Clears the message field making it undefined.
1640
+ * @return {!proto.gateway.web.v1.MetricAttributeEnvelope} returns this
1518
1641
  */
1519
- proto.gateway.web.v1.MetricAttribute.prototype.addValues = function(value, opt_index) {
1520
- return jspb.Message.addToRepeatedField(this, 2, value, opt_index);
1642
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.clearAdded = function() {
1643
+ return this.setAdded(undefined);
1521
1644
  };
1522
1645
 
1523
1646
 
1524
1647
  /**
1525
- * Clears the list making it empty but non-null.
1526
- * @return {!proto.gateway.web.v1.MetricAttribute} returns this
1648
+ * Returns whether this field is set.
1649
+ * @return {boolean}
1527
1650
  */
1528
- proto.gateway.web.v1.MetricAttribute.prototype.clearValuesList = function() {
1529
- return this.setValuesList([]);
1651
+ proto.gateway.web.v1.MetricAttributeEnvelope.prototype.hasAdded = function() {
1652
+ return jspb.Message.getField(this, 2) != null;
1530
1653
  };
1531
1654
 
1532
1655
 
@@ -1536,7 +1659,7 @@ proto.gateway.web.v1.MetricAttribute.prototype.clearValuesList = function() {
1536
1659
  * @private {!Array<number>}
1537
1660
  * @const
1538
1661
  */
1539
- proto.gateway.web.v1.MetricQuery.repeatedFields_ = [4];
1662
+ proto.gateway.web.v1.MetricAttributeSnapshot.repeatedFields_ = [1];
1540
1663
 
1541
1664
 
1542
1665
 
@@ -1553,8 +1676,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
1553
1676
  * http://goto/soy-param-migration
1554
1677
  * @return {!Object}
1555
1678
  */
1556
- proto.gateway.web.v1.MetricQuery.prototype.toObject = function(opt_includeInstance) {
1557
- return proto.gateway.web.v1.MetricQuery.toObject(opt_includeInstance, this);
1679
+ proto.gateway.web.v1.MetricAttributeSnapshot.prototype.toObject = function(opt_includeInstance) {
1680
+ return proto.gateway.web.v1.MetricAttributeSnapshot.toObject(opt_includeInstance, this);
1558
1681
  };
1559
1682
 
1560
1683
 
@@ -1563,20 +1686,14 @@ proto.gateway.web.v1.MetricQuery.prototype.toObject = function(opt_includeInstan
1563
1686
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
1564
1687
  * the JSPB instance for transitional soy proto support:
1565
1688
  * http://goto/soy-param-migration
1566
- * @param {!proto.gateway.web.v1.MetricQuery} msg The msg instance to transform.
1689
+ * @param {!proto.gateway.web.v1.MetricAttributeSnapshot} msg The msg instance to transform.
1567
1690
  * @return {!Object}
1568
1691
  * @suppress {unusedLocalVariables} f is only used for nested messages
1569
1692
  */
1570
- proto.gateway.web.v1.MetricQuery.toObject = function(includeInstance, msg) {
1693
+ proto.gateway.web.v1.MetricAttributeSnapshot.toObject = function(includeInstance, msg) {
1571
1694
  var f, obj = {
1572
- projectId: jspb.Message.getFieldWithDefault(msg, 1, ""),
1573
- metricName: jspb.Message.getFieldWithDefault(msg, 2, ""),
1574
- filter: (f = msg.getFilter()) && proto.gateway.web.v1.MetricFilter.toObject(includeInstance, f),
1575
- groupByList: (f = jspb.Message.getRepeatedField(msg, 4)) == null ? undefined : f,
1576
- aggregation: jspb.Message.getFieldWithDefault(msg, 5, 0),
1577
- timeWindow: jspb.Message.getFieldWithDefault(msg, 6, 0),
1578
- timeInterval: jspb.Message.getFieldWithDefault(msg, 7, 0),
1579
- organizationId: jspb.Message.getFieldWithDefault(msg, 8, "")
1695
+ attributesList: jspb.Message.toObjectList(msg.getAttributesList(),
1696
+ proto.gateway.web.v1.MetricAttribute.toObject, includeInstance)
1580
1697
  };
1581
1698
 
1582
1699
  if (includeInstance) {
@@ -1590,23 +1707,23 @@ organizationId: jspb.Message.getFieldWithDefault(msg, 8, "")
1590
1707
  /**
1591
1708
  * Deserializes binary data (in protobuf wire format).
1592
1709
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
1593
- * @return {!proto.gateway.web.v1.MetricQuery}
1710
+ * @return {!proto.gateway.web.v1.MetricAttributeSnapshot}
1594
1711
  */
1595
- proto.gateway.web.v1.MetricQuery.deserializeBinary = function(bytes) {
1712
+ proto.gateway.web.v1.MetricAttributeSnapshot.deserializeBinary = function(bytes) {
1596
1713
  var reader = new jspb.BinaryReader(bytes);
1597
- var msg = new proto.gateway.web.v1.MetricQuery;
1598
- return proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader(msg, reader);
1714
+ var msg = new proto.gateway.web.v1.MetricAttributeSnapshot;
1715
+ return proto.gateway.web.v1.MetricAttributeSnapshot.deserializeBinaryFromReader(msg, reader);
1599
1716
  };
1600
1717
 
1601
1718
 
1602
1719
  /**
1603
1720
  * Deserializes binary data (in protobuf wire format) from the
1604
1721
  * given reader into the given message object.
1605
- * @param {!proto.gateway.web.v1.MetricQuery} msg The message object to deserialize into.
1722
+ * @param {!proto.gateway.web.v1.MetricAttributeSnapshot} msg The message object to deserialize into.
1606
1723
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
1607
- * @return {!proto.gateway.web.v1.MetricQuery}
1724
+ * @return {!proto.gateway.web.v1.MetricAttributeSnapshot}
1608
1725
  */
1609
- proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader = function(msg, reader) {
1726
+ proto.gateway.web.v1.MetricAttributeSnapshot.deserializeBinaryFromReader = function(msg, reader) {
1610
1727
  while (reader.nextField()) {
1611
1728
  if (reader.isEndGroup()) {
1612
1729
  break;
@@ -1614,38 +1731,708 @@ proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader = function(msg, rea
1614
1731
  var field = reader.getFieldNumber();
1615
1732
  switch (field) {
1616
1733
  case 1:
1617
- var value = /** @type {string} */ (reader.readString());
1618
- msg.setProjectId(value);
1619
- break;
1620
- case 2:
1621
- var value = /** @type {string} */ (reader.readString());
1622
- msg.setMetricName(value);
1623
- break;
1624
- case 3:
1625
- var value = new proto.gateway.web.v1.MetricFilter;
1626
- reader.readMessage(value,proto.gateway.web.v1.MetricFilter.deserializeBinaryFromReader);
1627
- msg.setFilter(value);
1628
- break;
1629
- case 4:
1630
- var value = /** @type {string} */ (reader.readString());
1631
- msg.addGroupBy(value);
1632
- break;
1633
- case 5:
1634
- var value = /** @type {!proto.gateway.web.v1.MetricAggregation} */ (reader.readEnum());
1635
- msg.setAggregation(value);
1636
- break;
1637
- case 6:
1638
- var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (reader.readEnum());
1639
- msg.setTimeWindow(value);
1734
+ var value = new proto.gateway.web.v1.MetricAttribute;
1735
+ reader.readMessage(value,proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader);
1736
+ msg.addAttributes(value);
1640
1737
  break;
1641
- case 7:
1642
- var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (reader.readEnum());
1643
- msg.setTimeInterval(value);
1738
+ default:
1739
+ reader.skipField();
1644
1740
  break;
1645
- case 8:
1646
- var value = /** @type {string} */ (reader.readString());
1741
+ }
1742
+ }
1743
+ return msg;
1744
+ };
1745
+
1746
+
1747
+ /**
1748
+ * Serializes the message to binary data (in protobuf wire format).
1749
+ * @return {!Uint8Array}
1750
+ */
1751
+ proto.gateway.web.v1.MetricAttributeSnapshot.prototype.serializeBinary = function() {
1752
+ var writer = new jspb.BinaryWriter();
1753
+ proto.gateway.web.v1.MetricAttributeSnapshot.serializeBinaryToWriter(this, writer);
1754
+ return writer.getResultBuffer();
1755
+ };
1756
+
1757
+
1758
+ /**
1759
+ * Serializes the given message to binary data (in protobuf wire
1760
+ * format), writing to the given BinaryWriter.
1761
+ * @param {!proto.gateway.web.v1.MetricAttributeSnapshot} message
1762
+ * @param {!jspb.BinaryWriter} writer
1763
+ * @suppress {unusedLocalVariables} f is only used for nested messages
1764
+ */
1765
+ proto.gateway.web.v1.MetricAttributeSnapshot.serializeBinaryToWriter = function(message, writer) {
1766
+ var f = undefined;
1767
+ f = message.getAttributesList();
1768
+ if (f.length > 0) {
1769
+ writer.writeRepeatedMessage(
1770
+ 1,
1771
+ f,
1772
+ proto.gateway.web.v1.MetricAttribute.serializeBinaryToWriter
1773
+ );
1774
+ }
1775
+ };
1776
+
1777
+
1778
+ /**
1779
+ * repeated MetricAttribute attributes = 1;
1780
+ * @return {!Array<!proto.gateway.web.v1.MetricAttribute>}
1781
+ */
1782
+ proto.gateway.web.v1.MetricAttributeSnapshot.prototype.getAttributesList = function() {
1783
+ return /** @type{!Array<!proto.gateway.web.v1.MetricAttribute>} */ (
1784
+ jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricAttribute, 1));
1785
+ };
1786
+
1787
+
1788
+ /**
1789
+ * @param {!Array<!proto.gateway.web.v1.MetricAttribute>} value
1790
+ * @return {!proto.gateway.web.v1.MetricAttributeSnapshot} returns this
1791
+ */
1792
+ proto.gateway.web.v1.MetricAttributeSnapshot.prototype.setAttributesList = function(value) {
1793
+ return jspb.Message.setRepeatedWrapperField(this, 1, value);
1794
+ };
1795
+
1796
+
1797
+ /**
1798
+ * @param {!proto.gateway.web.v1.MetricAttribute=} opt_value
1799
+ * @param {number=} opt_index
1800
+ * @return {!proto.gateway.web.v1.MetricAttribute}
1801
+ */
1802
+ proto.gateway.web.v1.MetricAttributeSnapshot.prototype.addAttributes = function(opt_value, opt_index) {
1803
+ return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.gateway.web.v1.MetricAttribute, opt_index);
1804
+ };
1805
+
1806
+
1807
+ /**
1808
+ * Clears the list making it empty but non-null.
1809
+ * @return {!proto.gateway.web.v1.MetricAttributeSnapshot} returns this
1810
+ */
1811
+ proto.gateway.web.v1.MetricAttributeSnapshot.prototype.clearAttributesList = function() {
1812
+ return this.setAttributesList([]);
1813
+ };
1814
+
1815
+
1816
+
1817
+ /**
1818
+ * List of repeated fields within this message type.
1819
+ * @private {!Array<number>}
1820
+ * @const
1821
+ */
1822
+ proto.gateway.web.v1.MetricAttribute.repeatedFields_ = [2];
1823
+
1824
+
1825
+
1826
+ if (jspb.Message.GENERATE_TO_OBJECT) {
1827
+ /**
1828
+ * Creates an object representation of this proto.
1829
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
1830
+ * Optional fields that are not set will be set to undefined.
1831
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
1832
+ * For the list of reserved names please see:
1833
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
1834
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
1835
+ * JSPB instance for transitional soy proto support:
1836
+ * http://goto/soy-param-migration
1837
+ * @return {!Object}
1838
+ */
1839
+ proto.gateway.web.v1.MetricAttribute.prototype.toObject = function(opt_includeInstance) {
1840
+ return proto.gateway.web.v1.MetricAttribute.toObject(opt_includeInstance, this);
1841
+ };
1842
+
1843
+
1844
+ /**
1845
+ * Static version of the {@see toObject} method.
1846
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
1847
+ * the JSPB instance for transitional soy proto support:
1848
+ * http://goto/soy-param-migration
1849
+ * @param {!proto.gateway.web.v1.MetricAttribute} msg The msg instance to transform.
1850
+ * @return {!Object}
1851
+ * @suppress {unusedLocalVariables} f is only used for nested messages
1852
+ */
1853
+ proto.gateway.web.v1.MetricAttribute.toObject = function(includeInstance, msg) {
1854
+ var f, obj = {
1855
+ key: jspb.Message.getFieldWithDefault(msg, 1, ""),
1856
+ valuesList: (f = jspb.Message.getRepeatedField(msg, 2)) == null ? undefined : f
1857
+ };
1858
+
1859
+ if (includeInstance) {
1860
+ obj.$jspbMessageInstance = msg;
1861
+ }
1862
+ return obj;
1863
+ };
1864
+ }
1865
+
1866
+
1867
+ /**
1868
+ * Deserializes binary data (in protobuf wire format).
1869
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
1870
+ * @return {!proto.gateway.web.v1.MetricAttribute}
1871
+ */
1872
+ proto.gateway.web.v1.MetricAttribute.deserializeBinary = function(bytes) {
1873
+ var reader = new jspb.BinaryReader(bytes);
1874
+ var msg = new proto.gateway.web.v1.MetricAttribute;
1875
+ return proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader(msg, reader);
1876
+ };
1877
+
1878
+
1879
+ /**
1880
+ * Deserializes binary data (in protobuf wire format) from the
1881
+ * given reader into the given message object.
1882
+ * @param {!proto.gateway.web.v1.MetricAttribute} msg The message object to deserialize into.
1883
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
1884
+ * @return {!proto.gateway.web.v1.MetricAttribute}
1885
+ */
1886
+ proto.gateway.web.v1.MetricAttribute.deserializeBinaryFromReader = function(msg, reader) {
1887
+ while (reader.nextField()) {
1888
+ if (reader.isEndGroup()) {
1889
+ break;
1890
+ }
1891
+ var field = reader.getFieldNumber();
1892
+ switch (field) {
1893
+ case 1:
1894
+ var value = /** @type {string} */ (reader.readString());
1895
+ msg.setKey(value);
1896
+ break;
1897
+ case 2:
1898
+ var value = /** @type {string} */ (reader.readString());
1899
+ msg.addValues(value);
1900
+ break;
1901
+ default:
1902
+ reader.skipField();
1903
+ break;
1904
+ }
1905
+ }
1906
+ return msg;
1907
+ };
1908
+
1909
+
1910
+ /**
1911
+ * Serializes the message to binary data (in protobuf wire format).
1912
+ * @return {!Uint8Array}
1913
+ */
1914
+ proto.gateway.web.v1.MetricAttribute.prototype.serializeBinary = function() {
1915
+ var writer = new jspb.BinaryWriter();
1916
+ proto.gateway.web.v1.MetricAttribute.serializeBinaryToWriter(this, writer);
1917
+ return writer.getResultBuffer();
1918
+ };
1919
+
1920
+
1921
+ /**
1922
+ * Serializes the given message to binary data (in protobuf wire
1923
+ * format), writing to the given BinaryWriter.
1924
+ * @param {!proto.gateway.web.v1.MetricAttribute} message
1925
+ * @param {!jspb.BinaryWriter} writer
1926
+ * @suppress {unusedLocalVariables} f is only used for nested messages
1927
+ */
1928
+ proto.gateway.web.v1.MetricAttribute.serializeBinaryToWriter = function(message, writer) {
1929
+ var f = undefined;
1930
+ f = message.getKey();
1931
+ if (f.length > 0) {
1932
+ writer.writeString(
1933
+ 1,
1934
+ f
1935
+ );
1936
+ }
1937
+ f = message.getValuesList();
1938
+ if (f.length > 0) {
1939
+ writer.writeRepeatedString(
1940
+ 2,
1941
+ f
1942
+ );
1943
+ }
1944
+ };
1945
+
1946
+
1947
+ /**
1948
+ * optional string key = 1;
1949
+ * @return {string}
1950
+ */
1951
+ proto.gateway.web.v1.MetricAttribute.prototype.getKey = function() {
1952
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
1953
+ };
1954
+
1955
+
1956
+ /**
1957
+ * @param {string} value
1958
+ * @return {!proto.gateway.web.v1.MetricAttribute} returns this
1959
+ */
1960
+ proto.gateway.web.v1.MetricAttribute.prototype.setKey = function(value) {
1961
+ return jspb.Message.setProto3StringField(this, 1, value);
1962
+ };
1963
+
1964
+
1965
+ /**
1966
+ * repeated string values = 2;
1967
+ * @return {!Array<string>}
1968
+ */
1969
+ proto.gateway.web.v1.MetricAttribute.prototype.getValuesList = function() {
1970
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 2));
1971
+ };
1972
+
1973
+
1974
+ /**
1975
+ * @param {!Array<string>} value
1976
+ * @return {!proto.gateway.web.v1.MetricAttribute} returns this
1977
+ */
1978
+ proto.gateway.web.v1.MetricAttribute.prototype.setValuesList = function(value) {
1979
+ return jspb.Message.setField(this, 2, value || []);
1980
+ };
1981
+
1982
+
1983
+ /**
1984
+ * @param {string} value
1985
+ * @param {number=} opt_index
1986
+ * @return {!proto.gateway.web.v1.MetricAttribute} returns this
1987
+ */
1988
+ proto.gateway.web.v1.MetricAttribute.prototype.addValues = function(value, opt_index) {
1989
+ return jspb.Message.addToRepeatedField(this, 2, value, opt_index);
1990
+ };
1991
+
1992
+
1993
+ /**
1994
+ * Clears the list making it empty but non-null.
1995
+ * @return {!proto.gateway.web.v1.MetricAttribute} returns this
1996
+ */
1997
+ proto.gateway.web.v1.MetricAttribute.prototype.clearValuesList = function() {
1998
+ return this.setValuesList([]);
1999
+ };
2000
+
2001
+
2002
+
2003
+
2004
+
2005
+ if (jspb.Message.GENERATE_TO_OBJECT) {
2006
+ /**
2007
+ * Creates an object representation of this proto.
2008
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
2009
+ * Optional fields that are not set will be set to undefined.
2010
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
2011
+ * For the list of reserved names please see:
2012
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
2013
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
2014
+ * JSPB instance for transitional soy proto support:
2015
+ * http://goto/soy-param-migration
2016
+ * @return {!Object}
2017
+ */
2018
+ proto.gateway.web.v1.StreamQueryRequest.prototype.toObject = function(opt_includeInstance) {
2019
+ return proto.gateway.web.v1.StreamQueryRequest.toObject(opt_includeInstance, this);
2020
+ };
2021
+
2022
+
2023
+ /**
2024
+ * Static version of the {@see toObject} method.
2025
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2026
+ * the JSPB instance for transitional soy proto support:
2027
+ * http://goto/soy-param-migration
2028
+ * @param {!proto.gateway.web.v1.StreamQueryRequest} msg The msg instance to transform.
2029
+ * @return {!Object}
2030
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2031
+ */
2032
+ proto.gateway.web.v1.StreamQueryRequest.toObject = function(includeInstance, msg) {
2033
+ var f, obj = {
2034
+ organizationId: jspb.Message.getFieldWithDefault(msg, 1, ""),
2035
+ projectId: jspb.Message.getFieldWithDefault(msg, 2, ""),
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)
2039
+ };
2040
+
2041
+ if (includeInstance) {
2042
+ obj.$jspbMessageInstance = msg;
2043
+ }
2044
+ return obj;
2045
+ };
2046
+ }
2047
+
2048
+
2049
+ /**
2050
+ * Deserializes binary data (in protobuf wire format).
2051
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
2052
+ * @return {!proto.gateway.web.v1.StreamQueryRequest}
2053
+ */
2054
+ proto.gateway.web.v1.StreamQueryRequest.deserializeBinary = function(bytes) {
2055
+ var reader = new jspb.BinaryReader(bytes);
2056
+ var msg = new proto.gateway.web.v1.StreamQueryRequest;
2057
+ return proto.gateway.web.v1.StreamQueryRequest.deserializeBinaryFromReader(msg, reader);
2058
+ };
2059
+
2060
+
2061
+ /**
2062
+ * Deserializes binary data (in protobuf wire format) from the
2063
+ * given reader into the given message object.
2064
+ * @param {!proto.gateway.web.v1.StreamQueryRequest} msg The message object to deserialize into.
2065
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2066
+ * @return {!proto.gateway.web.v1.StreamQueryRequest}
2067
+ */
2068
+ proto.gateway.web.v1.StreamQueryRequest.deserializeBinaryFromReader = function(msg, reader) {
2069
+ while (reader.nextField()) {
2070
+ if (reader.isEndGroup()) {
2071
+ break;
2072
+ }
2073
+ var field = reader.getFieldNumber();
2074
+ switch (field) {
2075
+ case 1:
2076
+ var value = /** @type {string} */ (reader.readString());
1647
2077
  msg.setOrganizationId(value);
1648
2078
  break;
2079
+ case 2:
2080
+ var value = /** @type {string} */ (reader.readString());
2081
+ msg.setProjectId(value);
2082
+ break;
2083
+ case 3:
2084
+ var value = new proto.gateway.web.v1.MetricQuery;
2085
+ reader.readMessage(value,proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader);
2086
+ msg.setQuery(value);
2087
+ break;
2088
+ case 4:
2089
+ var value = new proto.gateway.web.v1.TimeRange;
2090
+ reader.readMessage(value,proto.gateway.web.v1.TimeRange.deserializeBinaryFromReader);
2091
+ msg.setTimeRange(value);
2092
+ break;
2093
+ case 5:
2094
+ var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (reader.readEnum());
2095
+ msg.setTimeInterval(value);
2096
+ break;
2097
+ default:
2098
+ reader.skipField();
2099
+ break;
2100
+ }
2101
+ }
2102
+ return msg;
2103
+ };
2104
+
2105
+
2106
+ /**
2107
+ * Serializes the message to binary data (in protobuf wire format).
2108
+ * @return {!Uint8Array}
2109
+ */
2110
+ proto.gateway.web.v1.StreamQueryRequest.prototype.serializeBinary = function() {
2111
+ var writer = new jspb.BinaryWriter();
2112
+ proto.gateway.web.v1.StreamQueryRequest.serializeBinaryToWriter(this, writer);
2113
+ return writer.getResultBuffer();
2114
+ };
2115
+
2116
+
2117
+ /**
2118
+ * Serializes the given message to binary data (in protobuf wire
2119
+ * format), writing to the given BinaryWriter.
2120
+ * @param {!proto.gateway.web.v1.StreamQueryRequest} message
2121
+ * @param {!jspb.BinaryWriter} writer
2122
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2123
+ */
2124
+ proto.gateway.web.v1.StreamQueryRequest.serializeBinaryToWriter = function(message, writer) {
2125
+ var f = undefined;
2126
+ f = message.getOrganizationId();
2127
+ if (f.length > 0) {
2128
+ writer.writeString(
2129
+ 1,
2130
+ f
2131
+ );
2132
+ }
2133
+ f = message.getProjectId();
2134
+ if (f.length > 0) {
2135
+ writer.writeString(
2136
+ 2,
2137
+ f
2138
+ );
2139
+ }
2140
+ f = message.getQuery();
2141
+ if (f != null) {
2142
+ writer.writeMessage(
2143
+ 3,
2144
+ f,
2145
+ proto.gateway.web.v1.MetricQuery.serializeBinaryToWriter
2146
+ );
2147
+ }
2148
+ f = message.getTimeRange();
2149
+ if (f != null) {
2150
+ writer.writeMessage(
2151
+ 4,
2152
+ f,
2153
+ proto.gateway.web.v1.TimeRange.serializeBinaryToWriter
2154
+ );
2155
+ }
2156
+ f = message.getTimeInterval();
2157
+ if (f !== 0.0) {
2158
+ writer.writeEnum(
2159
+ 5,
2160
+ f
2161
+ );
2162
+ }
2163
+ };
2164
+
2165
+
2166
+ /**
2167
+ * optional string organization_id = 1;
2168
+ * @return {string}
2169
+ */
2170
+ proto.gateway.web.v1.StreamQueryRequest.prototype.getOrganizationId = function() {
2171
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
2172
+ };
2173
+
2174
+
2175
+ /**
2176
+ * @param {string} value
2177
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2178
+ */
2179
+ proto.gateway.web.v1.StreamQueryRequest.prototype.setOrganizationId = function(value) {
2180
+ return jspb.Message.setProto3StringField(this, 1, value);
2181
+ };
2182
+
2183
+
2184
+ /**
2185
+ * optional string project_id = 2;
2186
+ * @return {string}
2187
+ */
2188
+ proto.gateway.web.v1.StreamQueryRequest.prototype.getProjectId = function() {
2189
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 2, ""));
2190
+ };
2191
+
2192
+
2193
+ /**
2194
+ * @param {string} value
2195
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2196
+ */
2197
+ proto.gateway.web.v1.StreamQueryRequest.prototype.setProjectId = function(value) {
2198
+ return jspb.Message.setProto3StringField(this, 2, value);
2199
+ };
2200
+
2201
+
2202
+ /**
2203
+ * optional MetricQuery query = 3;
2204
+ * @return {?proto.gateway.web.v1.MetricQuery}
2205
+ */
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));
2209
+ };
2210
+
2211
+
2212
+ /**
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
2224
+ */
2225
+ proto.gateway.web.v1.StreamQueryRequest.prototype.clearQuery = function() {
2226
+ return this.setQuery(undefined);
2227
+ };
2228
+
2229
+
2230
+ /**
2231
+ * Returns whether this field is set.
2232
+ * @return {boolean}
2233
+ */
2234
+ proto.gateway.web.v1.StreamQueryRequest.prototype.hasQuery = function() {
2235
+ return jspb.Message.getField(this, 3) != null;
2236
+ };
2237
+
2238
+
2239
+ /**
2240
+ * optional TimeRange time_range = 4;
2241
+ * @return {?proto.gateway.web.v1.TimeRange}
2242
+ */
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));
2246
+ };
2247
+
2248
+
2249
+ /**
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
2261
+ */
2262
+ proto.gateway.web.v1.StreamQueryRequest.prototype.clearTimeRange = function() {
2263
+ return this.setTimeRange(undefined);
2264
+ };
2265
+
2266
+
2267
+ /**
2268
+ * Returns whether this field is set.
2269
+ * @return {boolean}
2270
+ */
2271
+ proto.gateway.web.v1.StreamQueryRequest.prototype.hasTimeRange = function() {
2272
+ return jspb.Message.getField(this, 4) != null;
2273
+ };
2274
+
2275
+
2276
+ /**
2277
+ * optional AnalyticsTimeInterval time_interval = 5;
2278
+ * @return {!proto.gateway.web.v1.AnalyticsTimeInterval}
2279
+ */
2280
+ proto.gateway.web.v1.StreamQueryRequest.prototype.getTimeInterval = function() {
2281
+ return /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
2282
+ };
2283
+
2284
+
2285
+ /**
2286
+ * @param {!proto.gateway.web.v1.AnalyticsTimeInterval} value
2287
+ * @return {!proto.gateway.web.v1.StreamQueryRequest} returns this
2288
+ */
2289
+ proto.gateway.web.v1.StreamQueryRequest.prototype.setTimeInterval = function(value) {
2290
+ return jspb.Message.setProto3EnumField(this, 5, value);
2291
+ };
2292
+
2293
+
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
+
2329
+
2330
+
2331
+ if (jspb.Message.GENERATE_TO_OBJECT) {
2332
+ /**
2333
+ * Creates an object representation of this proto.
2334
+ * Field names that are reserved in JavaScript and will be renamed to pb_name.
2335
+ * Optional fields that are not set will be set to undefined.
2336
+ * To access a reserved field use, foo.pb_<name>, eg, foo.pb_default.
2337
+ * For the list of reserved names please see:
2338
+ * net/proto2/compiler/js/internal/generator.cc#kKeyword.
2339
+ * @param {boolean=} opt_includeInstance Deprecated. whether to include the
2340
+ * JSPB instance for transitional soy proto support:
2341
+ * http://goto/soy-param-migration
2342
+ * @return {!Object}
2343
+ */
2344
+ proto.gateway.web.v1.MetricQuery.prototype.toObject = function(opt_includeInstance) {
2345
+ return proto.gateway.web.v1.MetricQuery.toObject(opt_includeInstance, this);
2346
+ };
2347
+
2348
+
2349
+ /**
2350
+ * Static version of the {@see toObject} method.
2351
+ * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2352
+ * the JSPB instance for transitional soy proto support:
2353
+ * http://goto/soy-param-migration
2354
+ * @param {!proto.gateway.web.v1.MetricQuery} msg The msg instance to transform.
2355
+ * @return {!Object}
2356
+ * @suppress {unusedLocalVariables} f is only used for nested messages
2357
+ */
2358
+ proto.gateway.web.v1.MetricQuery.toObject = function(includeInstance, msg) {
2359
+ var f, obj = {
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)
2368
+ };
2369
+
2370
+ if (includeInstance) {
2371
+ obj.$jspbMessageInstance = msg;
2372
+ }
2373
+ return obj;
2374
+ };
2375
+ }
2376
+
2377
+
2378
+ /**
2379
+ * Deserializes binary data (in protobuf wire format).
2380
+ * @param {jspb.ByteSource} bytes The bytes to deserialize.
2381
+ * @return {!proto.gateway.web.v1.MetricQuery}
2382
+ */
2383
+ proto.gateway.web.v1.MetricQuery.deserializeBinary = function(bytes) {
2384
+ var reader = new jspb.BinaryReader(bytes);
2385
+ var msg = new proto.gateway.web.v1.MetricQuery;
2386
+ return proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader(msg, reader);
2387
+ };
2388
+
2389
+
2390
+ /**
2391
+ * Deserializes binary data (in protobuf wire format) from the
2392
+ * given reader into the given message object.
2393
+ * @param {!proto.gateway.web.v1.MetricQuery} msg The message object to deserialize into.
2394
+ * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2395
+ * @return {!proto.gateway.web.v1.MetricQuery}
2396
+ */
2397
+ proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader = function(msg, reader) {
2398
+ while (reader.nextField()) {
2399
+ if (reader.isEndGroup()) {
2400
+ break;
2401
+ }
2402
+ var field = reader.getFieldNumber();
2403
+ switch (field) {
2404
+ case 1:
2405
+ var value = /** @type {string} */ (reader.readString());
2406
+ msg.setMetricName(value);
2407
+ break;
2408
+ case 2:
2409
+ var value = new proto.gateway.web.v1.GaugeQuerySpec;
2410
+ reader.readMessage(value,proto.gateway.web.v1.GaugeQuerySpec.deserializeBinaryFromReader);
2411
+ msg.setGauge(value);
2412
+ break;
2413
+ case 3:
2414
+ var value = new proto.gateway.web.v1.SumQuerySpec;
2415
+ reader.readMessage(value,proto.gateway.web.v1.SumQuerySpec.deserializeBinaryFromReader);
2416
+ msg.setSum(value);
2417
+ break;
2418
+ case 4:
2419
+ var value = new proto.gateway.web.v1.HistogramQuerySpec;
2420
+ reader.readMessage(value,proto.gateway.web.v1.HistogramQuerySpec.deserializeBinaryFromReader);
2421
+ msg.setHistogram(value);
2422
+ break;
2423
+ case 5:
2424
+ var value = new proto.gateway.web.v1.AttributeFilter;
2425
+ reader.readMessage(value,proto.gateway.web.v1.AttributeFilter.deserializeBinaryFromReader);
2426
+ msg.addFilters(value);
2427
+ break;
2428
+ case 6:
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);
2435
+ break;
1649
2436
  default:
1650
2437
  reader.skipField();
1651
2438
  break;
@@ -1675,71 +2462,67 @@ proto.gateway.web.v1.MetricQuery.prototype.serializeBinary = function() {
1675
2462
  */
1676
2463
  proto.gateway.web.v1.MetricQuery.serializeBinaryToWriter = function(message, writer) {
1677
2464
  var f = undefined;
1678
- f = message.getProjectId();
2465
+ f = message.getMetricName();
1679
2466
  if (f.length > 0) {
1680
2467
  writer.writeString(
1681
2468
  1,
1682
2469
  f
1683
2470
  );
1684
2471
  }
1685
- f = message.getMetricName();
1686
- if (f.length > 0) {
1687
- writer.writeString(
2472
+ f = message.getGauge();
2473
+ if (f != null) {
2474
+ writer.writeMessage(
1688
2475
  2,
1689
- f
2476
+ f,
2477
+ proto.gateway.web.v1.GaugeQuerySpec.serializeBinaryToWriter
1690
2478
  );
1691
2479
  }
1692
- f = message.getFilter();
2480
+ f = message.getSum();
1693
2481
  if (f != null) {
1694
2482
  writer.writeMessage(
1695
2483
  3,
1696
2484
  f,
1697
- proto.gateway.web.v1.MetricFilter.serializeBinaryToWriter
2485
+ proto.gateway.web.v1.SumQuerySpec.serializeBinaryToWriter
1698
2486
  );
1699
2487
  }
1700
- f = message.getGroupByList();
1701
- if (f.length > 0) {
1702
- writer.writeRepeatedString(
2488
+ f = message.getHistogram();
2489
+ if (f != null) {
2490
+ writer.writeMessage(
1703
2491
  4,
1704
- f
2492
+ f,
2493
+ proto.gateway.web.v1.HistogramQuerySpec.serializeBinaryToWriter
1705
2494
  );
1706
2495
  }
1707
- f = message.getAggregation();
1708
- if (f !== 0.0) {
1709
- writer.writeEnum(
2496
+ f = message.getFiltersList();
2497
+ if (f.length > 0) {
2498
+ writer.writeRepeatedMessage(
1710
2499
  5,
1711
- f
2500
+ f,
2501
+ proto.gateway.web.v1.AttributeFilter.serializeBinaryToWriter
1712
2502
  );
1713
2503
  }
1714
- f = message.getTimeWindow();
1715
- if (f !== 0.0) {
1716
- writer.writeEnum(
2504
+ f = message.getGroupByList();
2505
+ if (f.length > 0) {
2506
+ writer.writeRepeatedString(
1717
2507
  6,
1718
2508
  f
1719
2509
  );
1720
2510
  }
1721
- f = message.getTimeInterval();
1722
- if (f !== 0.0) {
1723
- writer.writeEnum(
2511
+ f = message.getGroupLimit();
2512
+ if (f !== 0) {
2513
+ writer.writeInt32(
1724
2514
  7,
1725
2515
  f
1726
2516
  );
1727
2517
  }
1728
- f = message.getOrganizationId();
1729
- if (f.length > 0) {
1730
- writer.writeString(
1731
- 8,
1732
- f
1733
- );
1734
- }
1735
2518
  };
1736
2519
 
1737
2520
 
1738
2521
  /**
1739
- * optional string project_id = 1;
2522
+ * optional string metric_name = 1;
1740
2523
  * @return {string}
1741
2524
  */
1742
- proto.gateway.web.v1.MetricQuery.prototype.getProjectId = function() {
2525
+ proto.gateway.web.v1.MetricQuery.prototype.getMetricName = function() {
1743
2526
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
1744
2527
  };
1745
2528
 
@@ -1748,45 +2531,64 @@ proto.gateway.web.v1.MetricQuery.prototype.getProjectId = function() {
1748
2531
  * @param {string} value
1749
2532
  * @return {!proto.gateway.web.v1.MetricQuery} returns this
1750
2533
  */
1751
- proto.gateway.web.v1.MetricQuery.prototype.setProjectId = function(value) {
2534
+ proto.gateway.web.v1.MetricQuery.prototype.setMetricName = function(value) {
1752
2535
  return jspb.Message.setProto3StringField(this, 1, value);
1753
2536
  };
1754
2537
 
1755
2538
 
1756
2539
  /**
1757
- * optional string metric_name = 2;
1758
- * @return {string}
2540
+ * optional GaugeQuerySpec gauge = 2;
2541
+ * @return {?proto.gateway.web.v1.GaugeQuerySpec}
1759
2542
  */
1760
- proto.gateway.web.v1.MetricQuery.prototype.getMetricName = function() {
1761
- 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));
1762
2546
  };
1763
2547
 
1764
2548
 
1765
2549
  /**
1766
- * @param {string} 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);
2555
+ };
2556
+
2557
+
2558
+ /**
2559
+ * Clears the message field making it undefined.
1767
2560
  * @return {!proto.gateway.web.v1.MetricQuery} returns this
1768
2561
  */
1769
- proto.gateway.web.v1.MetricQuery.prototype.setMetricName = function(value) {
1770
- return jspb.Message.setProto3StringField(this, 2, value);
2562
+ proto.gateway.web.v1.MetricQuery.prototype.clearGauge = function() {
2563
+ return this.setGauge(undefined);
2564
+ };
2565
+
2566
+
2567
+ /**
2568
+ * Returns whether this field is set.
2569
+ * @return {boolean}
2570
+ */
2571
+ proto.gateway.web.v1.MetricQuery.prototype.hasGauge = function() {
2572
+ return jspb.Message.getField(this, 2) != null;
1771
2573
  };
1772
2574
 
1773
2575
 
1774
2576
  /**
1775
- * optional MetricFilter filter = 3;
1776
- * @return {?proto.gateway.web.v1.MetricFilter}
2577
+ * optional SumQuerySpec sum = 3;
2578
+ * @return {?proto.gateway.web.v1.SumQuerySpec}
1777
2579
  */
1778
- proto.gateway.web.v1.MetricQuery.prototype.getFilter = function() {
1779
- return /** @type{?proto.gateway.web.v1.MetricFilter} */ (
1780
- jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricFilter, 3));
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));
1781
2583
  };
1782
2584
 
1783
2585
 
1784
2586
  /**
1785
- * @param {?proto.gateway.web.v1.MetricFilter|undefined} value
2587
+ * @param {?proto.gateway.web.v1.SumQuerySpec|undefined} value
1786
2588
  * @return {!proto.gateway.web.v1.MetricQuery} returns this
1787
2589
  */
1788
- proto.gateway.web.v1.MetricQuery.prototype.setFilter = function(value) {
1789
- return jspb.Message.setWrapperField(this, 3, value);
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);
1790
2592
  };
1791
2593
 
1792
2594
 
@@ -1794,8 +2596,8 @@ proto.gateway.web.v1.MetricQuery.prototype.setFilter = function(value) {
1794
2596
  * Clears the message field making it undefined.
1795
2597
  * @return {!proto.gateway.web.v1.MetricQuery} returns this
1796
2598
  */
1797
- proto.gateway.web.v1.MetricQuery.prototype.clearFilter = function() {
1798
- return this.setFilter(undefined);
2599
+ proto.gateway.web.v1.MetricQuery.prototype.clearSum = function() {
2600
+ return this.setSum(undefined);
1799
2601
  };
1800
2602
 
1801
2603
 
@@ -1803,17 +2605,92 @@ proto.gateway.web.v1.MetricQuery.prototype.clearFilter = function() {
1803
2605
  * Returns whether this field is set.
1804
2606
  * @return {boolean}
1805
2607
  */
1806
- proto.gateway.web.v1.MetricQuery.prototype.hasFilter = function() {
2608
+ proto.gateway.web.v1.MetricQuery.prototype.hasSum = function() {
1807
2609
  return jspb.Message.getField(this, 3) != null;
1808
2610
  };
1809
2611
 
1810
2612
 
1811
2613
  /**
1812
- * repeated string group_by = 4;
2614
+ * optional HistogramQuerySpec histogram = 4;
2615
+ * @return {?proto.gateway.web.v1.HistogramQuerySpec}
2616
+ */
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));
2620
+ };
2621
+
2622
+
2623
+ /**
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;
1813
2690
  * @return {!Array<string>}
1814
2691
  */
1815
2692
  proto.gateway.web.v1.MetricQuery.prototype.getGroupByList = function() {
1816
- return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 4));
2693
+ return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 6));
1817
2694
  };
1818
2695
 
1819
2696
 
@@ -1822,7 +2699,7 @@ proto.gateway.web.v1.MetricQuery.prototype.getGroupByList = function() {
1822
2699
  * @return {!proto.gateway.web.v1.MetricQuery} returns this
1823
2700
  */
1824
2701
  proto.gateway.web.v1.MetricQuery.prototype.setGroupByList = function(value) {
1825
- return jspb.Message.setField(this, 4, value || []);
2702
+ return jspb.Message.setField(this, 6, value || []);
1826
2703
  };
1827
2704
 
1828
2705
 
@@ -1832,7 +2709,7 @@ proto.gateway.web.v1.MetricQuery.prototype.setGroupByList = function(value) {
1832
2709
  * @return {!proto.gateway.web.v1.MetricQuery} returns this
1833
2710
  */
1834
2711
  proto.gateway.web.v1.MetricQuery.prototype.addGroupBy = function(value, opt_index) {
1835
- return jspb.Message.addToRepeatedField(this, 4, value, opt_index);
2712
+ return jspb.Message.addToRepeatedField(this, 6, value, opt_index);
1836
2713
  };
1837
2714
 
1838
2715
 
@@ -1846,85 +2723,284 @@ proto.gateway.web.v1.MetricQuery.prototype.clearGroupByList = function() {
1846
2723
 
1847
2724
 
1848
2725
  /**
1849
- * optional MetricAggregation aggregation = 5;
1850
- * @return {!proto.gateway.web.v1.MetricAggregation}
2726
+ * optional int32 group_limit = 7;
2727
+ * @return {number}
1851
2728
  */
1852
- proto.gateway.web.v1.MetricQuery.prototype.getAggregation = function() {
1853
- return /** @type {!proto.gateway.web.v1.MetricAggregation} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
2729
+ proto.gateway.web.v1.MetricQuery.prototype.getGroupLimit = function() {
2730
+ return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 7, 0));
1854
2731
  };
1855
2732
 
1856
2733
 
1857
2734
  /**
1858
- * @param {!proto.gateway.web.v1.MetricAggregation} value
2735
+ * @param {number} value
1859
2736
  * @return {!proto.gateway.web.v1.MetricQuery} returns this
1860
2737
  */
1861
- proto.gateway.web.v1.MetricQuery.prototype.setAggregation = function(value) {
1862
- return jspb.Message.setProto3EnumField(this, 5, value);
2738
+ proto.gateway.web.v1.MetricQuery.prototype.setGroupLimit = function(value) {
2739
+ return jspb.Message.setProto3IntField(this, 7, value);
1863
2740
  };
1864
2741
 
1865
2742
 
2743
+
2744
+
2745
+
2746
+ if (jspb.Message.GENERATE_TO_OBJECT) {
1866
2747
  /**
1867
- * optional AnalyticsTimeWindow time_window = 6;
1868
- * @return {!proto.gateway.web.v1.AnalyticsTimeWindow}
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}
1869
2758
  */
1870
- proto.gateway.web.v1.MetricQuery.prototype.getTimeWindow = function() {
1871
- return /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (jspb.Message.getFieldWithDefault(this, 6, 0));
2759
+ proto.gateway.web.v1.GaugeQuerySpec.prototype.toObject = function(opt_includeInstance) {
2760
+ return proto.gateway.web.v1.GaugeQuerySpec.toObject(opt_includeInstance, this);
1872
2761
  };
1873
2762
 
1874
2763
 
1875
2764
  /**
1876
- * @param {!proto.gateway.web.v1.AnalyticsTimeWindow} value
1877
- * @return {!proto.gateway.web.v1.MetricQuery} returns this
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
1878
2867
  */
1879
- proto.gateway.web.v1.MetricQuery.prototype.setTimeWindow = function(value) {
1880
- return jspb.Message.setProto3EnumField(this, 6, value);
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;
1881
2952
  };
1882
2953
 
1883
2954
 
1884
2955
  /**
1885
- * optional AnalyticsTimeInterval time_interval = 7;
1886
- * @return {!proto.gateway.web.v1.AnalyticsTimeInterval}
2956
+ * Serializes the message to binary data (in protobuf wire format).
2957
+ * @return {!Uint8Array}
1887
2958
  */
1888
- proto.gateway.web.v1.MetricQuery.prototype.getTimeInterval = function() {
1889
- return /** @type {!proto.gateway.web.v1.AnalyticsTimeInterval} */ (jspb.Message.getFieldWithDefault(this, 7, 0));
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();
1890
2963
  };
1891
2964
 
1892
2965
 
1893
2966
  /**
1894
- * @param {!proto.gateway.web.v1.AnalyticsTimeInterval} value
1895
- * @return {!proto.gateway.web.v1.MetricQuery} returns this
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
1896
2972
  */
1897
- proto.gateway.web.v1.MetricQuery.prototype.setTimeInterval = function(value) {
1898
- return jspb.Message.setProto3EnumField(this, 7, value);
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
+ }
1899
2982
  };
1900
2983
 
1901
2984
 
1902
2985
  /**
1903
- * optional string organization_id = 8;
1904
- * @return {string}
2986
+ * optional SumAggregation aggregation = 1;
2987
+ * @return {!proto.gateway.web.v1.SumAggregation}
1905
2988
  */
1906
- proto.gateway.web.v1.MetricQuery.prototype.getOrganizationId = function() {
1907
- return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 8, ""));
2989
+ proto.gateway.web.v1.SumQuerySpec.prototype.getAggregation = function() {
2990
+ return /** @type {!proto.gateway.web.v1.SumAggregation} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
1908
2991
  };
1909
2992
 
1910
2993
 
1911
2994
  /**
1912
- * @param {string} value
1913
- * @return {!proto.gateway.web.v1.MetricQuery} returns this
2995
+ * @param {!proto.gateway.web.v1.SumAggregation} value
2996
+ * @return {!proto.gateway.web.v1.SumQuerySpec} returns this
1914
2997
  */
1915
- proto.gateway.web.v1.MetricQuery.prototype.setOrganizationId = function(value) {
1916
- return jspb.Message.setProto3StringField(this, 8, value);
2998
+ proto.gateway.web.v1.SumQuerySpec.prototype.setAggregation = function(value) {
2999
+ return jspb.Message.setProto3EnumField(this, 1, value);
1917
3000
  };
1918
3001
 
1919
3002
 
1920
3003
 
1921
- /**
1922
- * List of repeated fields within this message type.
1923
- * @private {!Array<number>}
1924
- * @const
1925
- */
1926
- proto.gateway.web.v1.MetricFilter.repeatedFields_ = [1];
1927
-
1928
3004
 
1929
3005
 
1930
3006
  if (jspb.Message.GENERATE_TO_OBJECT) {
@@ -1940,8 +3016,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
1940
3016
  * http://goto/soy-param-migration
1941
3017
  * @return {!Object}
1942
3018
  */
1943
- proto.gateway.web.v1.MetricFilter.prototype.toObject = function(opt_includeInstance) {
1944
- return proto.gateway.web.v1.MetricFilter.toObject(opt_includeInstance, this);
3019
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.toObject = function(opt_includeInstance) {
3020
+ return proto.gateway.web.v1.HistogramQuerySpec.toObject(opt_includeInstance, this);
1945
3021
  };
1946
3022
 
1947
3023
 
@@ -1950,14 +3026,14 @@ proto.gateway.web.v1.MetricFilter.prototype.toObject = function(opt_includeInsta
1950
3026
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
1951
3027
  * the JSPB instance for transitional soy proto support:
1952
3028
  * http://goto/soy-param-migration
1953
- * @param {!proto.gateway.web.v1.MetricFilter} msg The msg instance to transform.
3029
+ * @param {!proto.gateway.web.v1.HistogramQuerySpec} msg The msg instance to transform.
1954
3030
  * @return {!Object}
1955
3031
  * @suppress {unusedLocalVariables} f is only used for nested messages
1956
3032
  */
1957
- proto.gateway.web.v1.MetricFilter.toObject = function(includeInstance, msg) {
3033
+ proto.gateway.web.v1.HistogramQuerySpec.toObject = function(includeInstance, msg) {
1958
3034
  var f, obj = {
1959
- serviceNamesList: (f = jspb.Message.getRepeatedField(msg, 1)) == null ? undefined : f,
1960
- attributeEqualsMap: (f = msg.getAttributeEqualsMap()) ? f.toObject(includeInstance, undefined) : []
3035
+ aggregation: jspb.Message.getFieldWithDefault(msg, 1, 0),
3036
+ quantile: jspb.Message.getFloatingPointFieldWithDefault(msg, 2, 0.0)
1961
3037
  };
1962
3038
 
1963
3039
  if (includeInstance) {
@@ -1971,23 +3047,23 @@ attributeEqualsMap: (f = msg.getAttributeEqualsMap()) ? f.toObject(includeInstan
1971
3047
  /**
1972
3048
  * Deserializes binary data (in protobuf wire format).
1973
3049
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
1974
- * @return {!proto.gateway.web.v1.MetricFilter}
3050
+ * @return {!proto.gateway.web.v1.HistogramQuerySpec}
1975
3051
  */
1976
- proto.gateway.web.v1.MetricFilter.deserializeBinary = function(bytes) {
3052
+ proto.gateway.web.v1.HistogramQuerySpec.deserializeBinary = function(bytes) {
1977
3053
  var reader = new jspb.BinaryReader(bytes);
1978
- var msg = new proto.gateway.web.v1.MetricFilter;
1979
- return proto.gateway.web.v1.MetricFilter.deserializeBinaryFromReader(msg, reader);
3054
+ var msg = new proto.gateway.web.v1.HistogramQuerySpec;
3055
+ return proto.gateway.web.v1.HistogramQuerySpec.deserializeBinaryFromReader(msg, reader);
1980
3056
  };
1981
3057
 
1982
3058
 
1983
3059
  /**
1984
3060
  * Deserializes binary data (in protobuf wire format) from the
1985
3061
  * given reader into the given message object.
1986
- * @param {!proto.gateway.web.v1.MetricFilter} msg The message object to deserialize into.
3062
+ * @param {!proto.gateway.web.v1.HistogramQuerySpec} msg The message object to deserialize into.
1987
3063
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
1988
- * @return {!proto.gateway.web.v1.MetricFilter}
3064
+ * @return {!proto.gateway.web.v1.HistogramQuerySpec}
1989
3065
  */
1990
- proto.gateway.web.v1.MetricFilter.deserializeBinaryFromReader = function(msg, reader) {
3066
+ proto.gateway.web.v1.HistogramQuerySpec.deserializeBinaryFromReader = function(msg, reader) {
1991
3067
  while (reader.nextField()) {
1992
3068
  if (reader.isEndGroup()) {
1993
3069
  break;
@@ -1995,14 +3071,12 @@ proto.gateway.web.v1.MetricFilter.deserializeBinaryFromReader = function(msg, re
1995
3071
  var field = reader.getFieldNumber();
1996
3072
  switch (field) {
1997
3073
  case 1:
1998
- var value = /** @type {string} */ (reader.readString());
1999
- msg.addServiceNames(value);
3074
+ var value = /** @type {!proto.gateway.web.v1.HistogramAggregation} */ (reader.readEnum());
3075
+ msg.setAggregation(value);
2000
3076
  break;
2001
3077
  case 2:
2002
- var value = msg.getAttributeEqualsMap();
2003
- reader.readMessage(value, function(message, reader) {
2004
- jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
2005
- });
3078
+ var value = /** @type {number} */ (reader.readDouble());
3079
+ msg.setQuantile(value);
2006
3080
  break;
2007
3081
  default:
2008
3082
  reader.skipField();
@@ -2017,9 +3091,9 @@ proto.gateway.web.v1.MetricFilter.deserializeBinaryFromReader = function(msg, re
2017
3091
  * Serializes the message to binary data (in protobuf wire format).
2018
3092
  * @return {!Uint8Array}
2019
3093
  */
2020
- proto.gateway.web.v1.MetricFilter.prototype.serializeBinary = function() {
3094
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.serializeBinary = function() {
2021
3095
  var writer = new jspb.BinaryWriter();
2022
- proto.gateway.web.v1.MetricFilter.serializeBinaryToWriter(this, writer);
3096
+ proto.gateway.web.v1.HistogramQuerySpec.serializeBinaryToWriter(this, writer);
2023
3097
  return writer.getResultBuffer();
2024
3098
  };
2025
3099
 
@@ -2027,86 +3101,72 @@ proto.gateway.web.v1.MetricFilter.prototype.serializeBinary = function() {
2027
3101
  /**
2028
3102
  * Serializes the given message to binary data (in protobuf wire
2029
3103
  * format), writing to the given BinaryWriter.
2030
- * @param {!proto.gateway.web.v1.MetricFilter} message
3104
+ * @param {!proto.gateway.web.v1.HistogramQuerySpec} message
2031
3105
  * @param {!jspb.BinaryWriter} writer
2032
3106
  * @suppress {unusedLocalVariables} f is only used for nested messages
2033
3107
  */
2034
- proto.gateway.web.v1.MetricFilter.serializeBinaryToWriter = function(message, writer) {
3108
+ proto.gateway.web.v1.HistogramQuerySpec.serializeBinaryToWriter = function(message, writer) {
2035
3109
  var f = undefined;
2036
- f = message.getServiceNamesList();
2037
- if (f.length > 0) {
2038
- writer.writeRepeatedString(
3110
+ f = message.getAggregation();
3111
+ if (f !== 0.0) {
3112
+ writer.writeEnum(
2039
3113
  1,
2040
3114
  f
2041
3115
  );
2042
3116
  }
2043
- f = message.getAttributeEqualsMap(true);
2044
- if (f && f.getLength() > 0) {
2045
- f.serializeBinary(2, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
3117
+ f = message.getQuantile();
3118
+ if (f !== 0.0) {
3119
+ writer.writeDouble(
3120
+ 2,
3121
+ f
3122
+ );
2046
3123
  }
2047
3124
  };
2048
3125
 
2049
3126
 
2050
3127
  /**
2051
- * repeated string service_names = 1;
2052
- * @return {!Array<string>}
3128
+ * optional HistogramAggregation aggregation = 1;
3129
+ * @return {!proto.gateway.web.v1.HistogramAggregation}
2053
3130
  */
2054
- proto.gateway.web.v1.MetricFilter.prototype.getServiceNamesList = function() {
2055
- return /** @type {!Array<string>} */ (jspb.Message.getRepeatedField(this, 1));
3131
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.getAggregation = function() {
3132
+ return /** @type {!proto.gateway.web.v1.HistogramAggregation} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
2056
3133
  };
2057
3134
 
2058
3135
 
2059
3136
  /**
2060
- * @param {!Array<string>} value
2061
- * @return {!proto.gateway.web.v1.MetricFilter} returns this
3137
+ * @param {!proto.gateway.web.v1.HistogramAggregation} value
3138
+ * @return {!proto.gateway.web.v1.HistogramQuerySpec} returns this
2062
3139
  */
2063
- proto.gateway.web.v1.MetricFilter.prototype.setServiceNamesList = function(value) {
2064
- return jspb.Message.setField(this, 1, value || []);
3140
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.setAggregation = function(value) {
3141
+ return jspb.Message.setProto3EnumField(this, 1, value);
2065
3142
  };
2066
3143
 
2067
3144
 
2068
3145
  /**
2069
- * @param {string} value
2070
- * @param {number=} opt_index
2071
- * @return {!proto.gateway.web.v1.MetricFilter} returns this
3146
+ * optional double quantile = 2;
3147
+ * @return {number}
2072
3148
  */
2073
- proto.gateway.web.v1.MetricFilter.prototype.addServiceNames = function(value, opt_index) {
2074
- return jspb.Message.addToRepeatedField(this, 1, value, opt_index);
3149
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.getQuantile = function() {
3150
+ return /** @type {number} */ (jspb.Message.getFloatingPointFieldWithDefault(this, 2, 0.0));
2075
3151
  };
2076
3152
 
2077
3153
 
2078
3154
  /**
2079
- * Clears the list making it empty but non-null.
2080
- * @return {!proto.gateway.web.v1.MetricFilter} returns this
3155
+ * @param {number} value
3156
+ * @return {!proto.gateway.web.v1.HistogramQuerySpec} returns this
2081
3157
  */
2082
- proto.gateway.web.v1.MetricFilter.prototype.clearServiceNamesList = function() {
2083
- return this.setServiceNamesList([]);
3158
+ proto.gateway.web.v1.HistogramQuerySpec.prototype.setQuantile = function(value) {
3159
+ return jspb.Message.setProto3FloatField(this, 2, value);
2084
3160
  };
2085
3161
 
2086
3162
 
2087
- /**
2088
- * map<string, string> attribute_equals = 2;
2089
- * @param {boolean=} opt_noLazyCreate Do not create the map if
2090
- * empty, instead returning `undefined`
2091
- * @return {!jspb.Map<string,string>}
2092
- */
2093
- proto.gateway.web.v1.MetricFilter.prototype.getAttributeEqualsMap = function(opt_noLazyCreate) {
2094
- return /** @type {!jspb.Map<string,string>} */ (
2095
- jspb.Message.getMapField(this, 2, opt_noLazyCreate,
2096
- null));
2097
- };
2098
-
2099
3163
 
2100
3164
  /**
2101
- * Clears values from the map. The map will be non-null.
2102
- * @return {!proto.gateway.web.v1.MetricFilter} returns this
3165
+ * List of repeated fields within this message type.
3166
+ * @private {!Array<number>}
3167
+ * @const
2103
3168
  */
2104
- proto.gateway.web.v1.MetricFilter.prototype.clearAttributeEqualsMap = function() {
2105
- this.getAttributeEqualsMap().clear();
2106
- return this;
2107
- };
2108
-
2109
-
3169
+ proto.gateway.web.v1.AttributeFilter.repeatedFields_ = [3];
2110
3170
 
2111
3171
 
2112
3172
 
@@ -2123,8 +3183,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
2123
3183
  * http://goto/soy-param-migration
2124
3184
  * @return {!Object}
2125
3185
  */
2126
- proto.gateway.web.v1.QueryMetricsRequest.prototype.toObject = function(opt_includeInstance) {
2127
- return proto.gateway.web.v1.QueryMetricsRequest.toObject(opt_includeInstance, this);
3186
+ proto.gateway.web.v1.AttributeFilter.prototype.toObject = function(opt_includeInstance) {
3187
+ return proto.gateway.web.v1.AttributeFilter.toObject(opt_includeInstance, this);
2128
3188
  };
2129
3189
 
2130
3190
 
@@ -2133,13 +3193,15 @@ proto.gateway.web.v1.QueryMetricsRequest.prototype.toObject = function(opt_inclu
2133
3193
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2134
3194
  * the JSPB instance for transitional soy proto support:
2135
3195
  * http://goto/soy-param-migration
2136
- * @param {!proto.gateway.web.v1.QueryMetricsRequest} msg The msg instance to transform.
3196
+ * @param {!proto.gateway.web.v1.AttributeFilter} msg The msg instance to transform.
2137
3197
  * @return {!Object}
2138
3198
  * @suppress {unusedLocalVariables} f is only used for nested messages
2139
3199
  */
2140
- proto.gateway.web.v1.QueryMetricsRequest.toObject = function(includeInstance, msg) {
3200
+ proto.gateway.web.v1.AttributeFilter.toObject = function(includeInstance, msg) {
2141
3201
  var f, obj = {
2142
- query: (f = msg.getQuery()) && proto.gateway.web.v1.MetricQuery.toObject(includeInstance, f)
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
2143
3205
  };
2144
3206
 
2145
3207
  if (includeInstance) {
@@ -2153,23 +3215,23 @@ query: (f = msg.getQuery()) && proto.gateway.web.v1.MetricQuery.toObject(include
2153
3215
  /**
2154
3216
  * Deserializes binary data (in protobuf wire format).
2155
3217
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
2156
- * @return {!proto.gateway.web.v1.QueryMetricsRequest}
3218
+ * @return {!proto.gateway.web.v1.AttributeFilter}
2157
3219
  */
2158
- proto.gateway.web.v1.QueryMetricsRequest.deserializeBinary = function(bytes) {
3220
+ proto.gateway.web.v1.AttributeFilter.deserializeBinary = function(bytes) {
2159
3221
  var reader = new jspb.BinaryReader(bytes);
2160
- var msg = new proto.gateway.web.v1.QueryMetricsRequest;
2161
- return proto.gateway.web.v1.QueryMetricsRequest.deserializeBinaryFromReader(msg, reader);
3222
+ var msg = new proto.gateway.web.v1.AttributeFilter;
3223
+ return proto.gateway.web.v1.AttributeFilter.deserializeBinaryFromReader(msg, reader);
2162
3224
  };
2163
3225
 
2164
3226
 
2165
3227
  /**
2166
3228
  * Deserializes binary data (in protobuf wire format) from the
2167
3229
  * given reader into the given message object.
2168
- * @param {!proto.gateway.web.v1.QueryMetricsRequest} msg The message object to deserialize into.
3230
+ * @param {!proto.gateway.web.v1.AttributeFilter} msg The message object to deserialize into.
2169
3231
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2170
- * @return {!proto.gateway.web.v1.QueryMetricsRequest}
3232
+ * @return {!proto.gateway.web.v1.AttributeFilter}
2171
3233
  */
2172
- proto.gateway.web.v1.QueryMetricsRequest.deserializeBinaryFromReader = function(msg, reader) {
3234
+ proto.gateway.web.v1.AttributeFilter.deserializeBinaryFromReader = function(msg, reader) {
2173
3235
  while (reader.nextField()) {
2174
3236
  if (reader.isEndGroup()) {
2175
3237
  break;
@@ -2177,9 +3239,16 @@ proto.gateway.web.v1.QueryMetricsRequest.deserializeBinaryFromReader = function(
2177
3239
  var field = reader.getFieldNumber();
2178
3240
  switch (field) {
2179
3241
  case 1:
2180
- var value = new proto.gateway.web.v1.MetricQuery;
2181
- reader.readMessage(value,proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader);
2182
- msg.setQuery(value);
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);
2183
3252
  break;
2184
3253
  default:
2185
3254
  reader.skipField();
@@ -2194,9 +3263,9 @@ proto.gateway.web.v1.QueryMetricsRequest.deserializeBinaryFromReader = function(
2194
3263
  * Serializes the message to binary data (in protobuf wire format).
2195
3264
  * @return {!Uint8Array}
2196
3265
  */
2197
- proto.gateway.web.v1.QueryMetricsRequest.prototype.serializeBinary = function() {
3266
+ proto.gateway.web.v1.AttributeFilter.prototype.serializeBinary = function() {
2198
3267
  var writer = new jspb.BinaryWriter();
2199
- proto.gateway.web.v1.QueryMetricsRequest.serializeBinaryToWriter(this, writer);
3268
+ proto.gateway.web.v1.AttributeFilter.serializeBinaryToWriter(this, writer);
2200
3269
  return writer.getResultBuffer();
2201
3270
  };
2202
3271
 
@@ -2204,61 +3273,136 @@ proto.gateway.web.v1.QueryMetricsRequest.prototype.serializeBinary = function()
2204
3273
  /**
2205
3274
  * Serializes the given message to binary data (in protobuf wire
2206
3275
  * format), writing to the given BinaryWriter.
2207
- * @param {!proto.gateway.web.v1.QueryMetricsRequest} message
3276
+ * @param {!proto.gateway.web.v1.AttributeFilter} message
2208
3277
  * @param {!jspb.BinaryWriter} writer
2209
3278
  * @suppress {unusedLocalVariables} f is only used for nested messages
2210
3279
  */
2211
- proto.gateway.web.v1.QueryMetricsRequest.serializeBinaryToWriter = function(message, writer) {
3280
+ proto.gateway.web.v1.AttributeFilter.serializeBinaryToWriter = function(message, writer) {
2212
3281
  var f = undefined;
2213
- f = message.getQuery();
2214
- if (f != null) {
2215
- writer.writeMessage(
3282
+ f = message.getKey();
3283
+ if (f.length > 0) {
3284
+ writer.writeString(
2216
3285
  1,
2217
- f,
2218
- proto.gateway.web.v1.MetricQuery.serializeBinaryToWriter
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
2219
3301
  );
2220
3302
  }
2221
3303
  };
2222
3304
 
2223
3305
 
2224
3306
  /**
2225
- * optional MetricQuery query = 1;
2226
- * @return {?proto.gateway.web.v1.MetricQuery}
3307
+ * optional string key = 1;
3308
+ * @return {string}
2227
3309
  */
2228
- proto.gateway.web.v1.QueryMetricsRequest.prototype.getQuery = function() {
2229
- return /** @type{?proto.gateway.web.v1.MetricQuery} */ (
2230
- jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricQuery, 1));
3310
+ proto.gateway.web.v1.AttributeFilter.prototype.getKey = function() {
3311
+ return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 1, ""));
2231
3312
  };
2232
3313
 
2233
3314
 
2234
3315
  /**
2235
- * @param {?proto.gateway.web.v1.MetricQuery|undefined} value
2236
- * @return {!proto.gateway.web.v1.QueryMetricsRequest} returns this
2237
- */
2238
- proto.gateway.web.v1.QueryMetricsRequest.prototype.setQuery = function(value) {
2239
- return jspb.Message.setWrapperField(this, 1, value);
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);
2240
3321
  };
2241
3322
 
2242
3323
 
2243
3324
  /**
2244
- * Clears the message field making it undefined.
2245
- * @return {!proto.gateway.web.v1.QueryMetricsRequest} returns this
3325
+ * optional AttributeFilterOp op = 2;
3326
+ * @return {!proto.gateway.web.v1.AttributeFilterOp}
2246
3327
  */
2247
- proto.gateway.web.v1.QueryMetricsRequest.prototype.clearQuery = function() {
2248
- return this.setQuery(undefined);
3328
+ proto.gateway.web.v1.AttributeFilter.prototype.getOp = function() {
3329
+ return /** @type {!proto.gateway.web.v1.AttributeFilterOp} */ (jspb.Message.getFieldWithDefault(this, 2, 0));
2249
3330
  };
2250
3331
 
2251
3332
 
2252
3333
  /**
2253
- * Returns whether this field is set.
2254
- * @return {boolean}
3334
+ * @param {!proto.gateway.web.v1.AttributeFilterOp} value
3335
+ * @return {!proto.gateway.web.v1.AttributeFilter} returns this
2255
3336
  */
2256
- proto.gateway.web.v1.QueryMetricsRequest.prototype.hasQuery = function() {
2257
- return jspb.Message.getField(this, 1) != null;
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([]);
2258
3376
  };
2259
3377
 
2260
3378
 
2261
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
+
2262
3406
 
2263
3407
 
2264
3408
  if (jspb.Message.GENERATE_TO_OBJECT) {
@@ -2274,8 +3418,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
2274
3418
  * http://goto/soy-param-migration
2275
3419
  * @return {!Object}
2276
3420
  */
2277
- proto.gateway.web.v1.QueryMetricsResponse.prototype.toObject = function(opt_includeInstance) {
2278
- return proto.gateway.web.v1.QueryMetricsResponse.toObject(opt_includeInstance, this);
3421
+ proto.gateway.web.v1.TimeRange.prototype.toObject = function(opt_includeInstance) {
3422
+ return proto.gateway.web.v1.TimeRange.toObject(opt_includeInstance, this);
2279
3423
  };
2280
3424
 
2281
3425
 
@@ -2284,14 +3428,14 @@ proto.gateway.web.v1.QueryMetricsResponse.prototype.toObject = function(opt_incl
2284
3428
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2285
3429
  * the JSPB instance for transitional soy proto support:
2286
3430
  * http://goto/soy-param-migration
2287
- * @param {!proto.gateway.web.v1.QueryMetricsResponse} msg The msg instance to transform.
3431
+ * @param {!proto.gateway.web.v1.TimeRange} msg The msg instance to transform.
2288
3432
  * @return {!Object}
2289
3433
  * @suppress {unusedLocalVariables} f is only used for nested messages
2290
3434
  */
2291
- proto.gateway.web.v1.QueryMetricsResponse.toObject = function(includeInstance, msg) {
3435
+ proto.gateway.web.v1.TimeRange.toObject = function(includeInstance, msg) {
2292
3436
  var f, obj = {
2293
- status: (f = msg.getStatus()) && proto_gateway_common_v1_status_pb.ResponseStatus.toObject(includeInstance, f),
2294
- snapshot: (f = msg.getSnapshot()) && proto.gateway.web.v1.MetricAnalyticsSnapshot.toObject(includeInstance, f)
3437
+ window: (f = jspb.Message.getField(msg, 1)) == null ? undefined : f,
3438
+ absolute: (f = msg.getAbsolute()) && proto.gateway.web.v1.AbsoluteTimeRange.toObject(includeInstance, f)
2295
3439
  };
2296
3440
 
2297
3441
  if (includeInstance) {
@@ -2305,23 +3449,23 @@ snapshot: (f = msg.getSnapshot()) && proto.gateway.web.v1.MetricAnalyticsSnapsho
2305
3449
  /**
2306
3450
  * Deserializes binary data (in protobuf wire format).
2307
3451
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
2308
- * @return {!proto.gateway.web.v1.QueryMetricsResponse}
3452
+ * @return {!proto.gateway.web.v1.TimeRange}
2309
3453
  */
2310
- proto.gateway.web.v1.QueryMetricsResponse.deserializeBinary = function(bytes) {
3454
+ proto.gateway.web.v1.TimeRange.deserializeBinary = function(bytes) {
2311
3455
  var reader = new jspb.BinaryReader(bytes);
2312
- var msg = new proto.gateway.web.v1.QueryMetricsResponse;
2313
- return proto.gateway.web.v1.QueryMetricsResponse.deserializeBinaryFromReader(msg, reader);
3456
+ var msg = new proto.gateway.web.v1.TimeRange;
3457
+ return proto.gateway.web.v1.TimeRange.deserializeBinaryFromReader(msg, reader);
2314
3458
  };
2315
3459
 
2316
3460
 
2317
3461
  /**
2318
3462
  * Deserializes binary data (in protobuf wire format) from the
2319
3463
  * given reader into the given message object.
2320
- * @param {!proto.gateway.web.v1.QueryMetricsResponse} msg The message object to deserialize into.
3464
+ * @param {!proto.gateway.web.v1.TimeRange} msg The message object to deserialize into.
2321
3465
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2322
- * @return {!proto.gateway.web.v1.QueryMetricsResponse}
3466
+ * @return {!proto.gateway.web.v1.TimeRange}
2323
3467
  */
2324
- proto.gateway.web.v1.QueryMetricsResponse.deserializeBinaryFromReader = function(msg, reader) {
3468
+ proto.gateway.web.v1.TimeRange.deserializeBinaryFromReader = function(msg, reader) {
2325
3469
  while (reader.nextField()) {
2326
3470
  if (reader.isEndGroup()) {
2327
3471
  break;
@@ -2329,14 +3473,13 @@ proto.gateway.web.v1.QueryMetricsResponse.deserializeBinaryFromReader = function
2329
3473
  var field = reader.getFieldNumber();
2330
3474
  switch (field) {
2331
3475
  case 1:
2332
- var value = new proto_gateway_common_v1_status_pb.ResponseStatus;
2333
- reader.readMessage(value,proto_gateway_common_v1_status_pb.ResponseStatus.deserializeBinaryFromReader);
2334
- msg.setStatus(value);
3476
+ var value = /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (reader.readEnum());
3477
+ msg.setWindow(value);
2335
3478
  break;
2336
3479
  case 2:
2337
- var value = new proto.gateway.web.v1.MetricAnalyticsSnapshot;
2338
- reader.readMessage(value,proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader);
2339
- msg.setSnapshot(value);
3480
+ var value = new proto.gateway.web.v1.AbsoluteTimeRange;
3481
+ reader.readMessage(value,proto.gateway.web.v1.AbsoluteTimeRange.deserializeBinaryFromReader);
3482
+ msg.setAbsolute(value);
2340
3483
  break;
2341
3484
  default:
2342
3485
  reader.skipField();
@@ -2351,9 +3494,9 @@ proto.gateway.web.v1.QueryMetricsResponse.deserializeBinaryFromReader = function
2351
3494
  * Serializes the message to binary data (in protobuf wire format).
2352
3495
  * @return {!Uint8Array}
2353
3496
  */
2354
- proto.gateway.web.v1.QueryMetricsResponse.prototype.serializeBinary = function() {
3497
+ proto.gateway.web.v1.TimeRange.prototype.serializeBinary = function() {
2355
3498
  var writer = new jspb.BinaryWriter();
2356
- proto.gateway.web.v1.QueryMetricsResponse.serializeBinaryToWriter(this, writer);
3499
+ proto.gateway.web.v1.TimeRange.serializeBinaryToWriter(this, writer);
2357
3500
  return writer.getResultBuffer();
2358
3501
  };
2359
3502
 
@@ -2361,56 +3504,54 @@ proto.gateway.web.v1.QueryMetricsResponse.prototype.serializeBinary = function()
2361
3504
  /**
2362
3505
  * Serializes the given message to binary data (in protobuf wire
2363
3506
  * format), writing to the given BinaryWriter.
2364
- * @param {!proto.gateway.web.v1.QueryMetricsResponse} message
3507
+ * @param {!proto.gateway.web.v1.TimeRange} message
2365
3508
  * @param {!jspb.BinaryWriter} writer
2366
3509
  * @suppress {unusedLocalVariables} f is only used for nested messages
2367
3510
  */
2368
- proto.gateway.web.v1.QueryMetricsResponse.serializeBinaryToWriter = function(message, writer) {
3511
+ proto.gateway.web.v1.TimeRange.serializeBinaryToWriter = function(message, writer) {
2369
3512
  var f = undefined;
2370
- f = message.getStatus();
3513
+ f = /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (jspb.Message.getField(message, 1));
2371
3514
  if (f != null) {
2372
- writer.writeMessage(
3515
+ writer.writeEnum(
2373
3516
  1,
2374
- f,
2375
- proto_gateway_common_v1_status_pb.ResponseStatus.serializeBinaryToWriter
3517
+ f
2376
3518
  );
2377
3519
  }
2378
- f = message.getSnapshot();
3520
+ f = message.getAbsolute();
2379
3521
  if (f != null) {
2380
3522
  writer.writeMessage(
2381
3523
  2,
2382
3524
  f,
2383
- proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter
3525
+ proto.gateway.web.v1.AbsoluteTimeRange.serializeBinaryToWriter
2384
3526
  );
2385
3527
  }
2386
3528
  };
2387
3529
 
2388
3530
 
2389
3531
  /**
2390
- * optional gateway.common.v1.ResponseStatus status = 1;
2391
- * @return {?proto.gateway.common.v1.ResponseStatus}
3532
+ * optional AnalyticsTimeWindow window = 1;
3533
+ * @return {!proto.gateway.web.v1.AnalyticsTimeWindow}
2392
3534
  */
2393
- proto.gateway.web.v1.QueryMetricsResponse.prototype.getStatus = function() {
2394
- return /** @type{?proto.gateway.common.v1.ResponseStatus} */ (
2395
- jspb.Message.getWrapperField(this, proto_gateway_common_v1_status_pb.ResponseStatus, 1));
3535
+ proto.gateway.web.v1.TimeRange.prototype.getWindow = function() {
3536
+ return /** @type {!proto.gateway.web.v1.AnalyticsTimeWindow} */ (jspb.Message.getFieldWithDefault(this, 1, 0));
2396
3537
  };
2397
3538
 
2398
3539
 
2399
3540
  /**
2400
- * @param {?proto.gateway.common.v1.ResponseStatus|undefined} value
2401
- * @return {!proto.gateway.web.v1.QueryMetricsResponse} returns this
2402
- */
2403
- proto.gateway.web.v1.QueryMetricsResponse.prototype.setStatus = function(value) {
2404
- return jspb.Message.setWrapperField(this, 1, value);
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);
2405
3546
  };
2406
3547
 
2407
3548
 
2408
3549
  /**
2409
- * Clears the message field making it undefined.
2410
- * @return {!proto.gateway.web.v1.QueryMetricsResponse} returns this
3550
+ * Clears the field making it undefined.
3551
+ * @return {!proto.gateway.web.v1.TimeRange} returns this
2411
3552
  */
2412
- proto.gateway.web.v1.QueryMetricsResponse.prototype.clearStatus = function() {
2413
- return this.setStatus(undefined);
3553
+ proto.gateway.web.v1.TimeRange.prototype.clearWindow = function() {
3554
+ return jspb.Message.setOneofField(this, 1, proto.gateway.web.v1.TimeRange.oneofGroups_[0], undefined);
2414
3555
  };
2415
3556
 
2416
3557
 
@@ -2418,36 +3559,36 @@ proto.gateway.web.v1.QueryMetricsResponse.prototype.clearStatus = function() {
2418
3559
  * Returns whether this field is set.
2419
3560
  * @return {boolean}
2420
3561
  */
2421
- proto.gateway.web.v1.QueryMetricsResponse.prototype.hasStatus = function() {
3562
+ proto.gateway.web.v1.TimeRange.prototype.hasWindow = function() {
2422
3563
  return jspb.Message.getField(this, 1) != null;
2423
3564
  };
2424
3565
 
2425
3566
 
2426
3567
  /**
2427
- * optional MetricAnalyticsSnapshot snapshot = 2;
2428
- * @return {?proto.gateway.web.v1.MetricAnalyticsSnapshot}
3568
+ * optional AbsoluteTimeRange absolute = 2;
3569
+ * @return {?proto.gateway.web.v1.AbsoluteTimeRange}
2429
3570
  */
2430
- proto.gateway.web.v1.QueryMetricsResponse.prototype.getSnapshot = function() {
2431
- return /** @type{?proto.gateway.web.v1.MetricAnalyticsSnapshot} */ (
2432
- jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricAnalyticsSnapshot, 2));
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));
2433
3574
  };
2434
3575
 
2435
3576
 
2436
3577
  /**
2437
- * @param {?proto.gateway.web.v1.MetricAnalyticsSnapshot|undefined} value
2438
- * @return {!proto.gateway.web.v1.QueryMetricsResponse} returns this
3578
+ * @param {?proto.gateway.web.v1.AbsoluteTimeRange|undefined} value
3579
+ * @return {!proto.gateway.web.v1.TimeRange} returns this
2439
3580
  */
2440
- proto.gateway.web.v1.QueryMetricsResponse.prototype.setSnapshot = function(value) {
2441
- return jspb.Message.setWrapperField(this, 2, value);
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);
2442
3583
  };
2443
3584
 
2444
3585
 
2445
3586
  /**
2446
3587
  * Clears the message field making it undefined.
2447
- * @return {!proto.gateway.web.v1.QueryMetricsResponse} returns this
3588
+ * @return {!proto.gateway.web.v1.TimeRange} returns this
2448
3589
  */
2449
- proto.gateway.web.v1.QueryMetricsResponse.prototype.clearSnapshot = function() {
2450
- return this.setSnapshot(undefined);
3590
+ proto.gateway.web.v1.TimeRange.prototype.clearAbsolute = function() {
3591
+ return this.setAbsolute(undefined);
2451
3592
  };
2452
3593
 
2453
3594
 
@@ -2455,7 +3596,7 @@ proto.gateway.web.v1.QueryMetricsResponse.prototype.clearSnapshot = function() {
2455
3596
  * Returns whether this field is set.
2456
3597
  * @return {boolean}
2457
3598
  */
2458
- proto.gateway.web.v1.QueryMetricsResponse.prototype.hasSnapshot = function() {
3599
+ proto.gateway.web.v1.TimeRange.prototype.hasAbsolute = function() {
2459
3600
  return jspb.Message.getField(this, 2) != null;
2460
3601
  };
2461
3602
 
@@ -2476,8 +3617,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
2476
3617
  * http://goto/soy-param-migration
2477
3618
  * @return {!Object}
2478
3619
  */
2479
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.toObject = function(opt_includeInstance) {
2480
- return proto.gateway.web.v1.StreamMetricAnalyticsRequest.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);
2481
3622
  };
2482
3623
 
2483
3624
 
@@ -2486,13 +3627,14 @@ proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.toObject = function(
2486
3627
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2487
3628
  * the JSPB instance for transitional soy proto support:
2488
3629
  * http://goto/soy-param-migration
2489
- * @param {!proto.gateway.web.v1.StreamMetricAnalyticsRequest} msg The msg instance to transform.
3630
+ * @param {!proto.gateway.web.v1.AbsoluteTimeRange} msg The msg instance to transform.
2490
3631
  * @return {!Object}
2491
3632
  * @suppress {unusedLocalVariables} f is only used for nested messages
2492
3633
  */
2493
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.toObject = function(includeInstance, msg) {
3634
+ proto.gateway.web.v1.AbsoluteTimeRange.toObject = function(includeInstance, msg) {
2494
3635
  var f, obj = {
2495
- query: (f = msg.getQuery()) && proto.gateway.web.v1.MetricQuery.toObject(includeInstance, f)
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)
2496
3638
  };
2497
3639
 
2498
3640
  if (includeInstance) {
@@ -2506,23 +3648,23 @@ query: (f = msg.getQuery()) && proto.gateway.web.v1.MetricQuery.toObject(include
2506
3648
  /**
2507
3649
  * Deserializes binary data (in protobuf wire format).
2508
3650
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
2509
- * @return {!proto.gateway.web.v1.StreamMetricAnalyticsRequest}
3651
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange}
2510
3652
  */
2511
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.deserializeBinary = function(bytes) {
3653
+ proto.gateway.web.v1.AbsoluteTimeRange.deserializeBinary = function(bytes) {
2512
3654
  var reader = new jspb.BinaryReader(bytes);
2513
- var msg = new proto.gateway.web.v1.StreamMetricAnalyticsRequest;
2514
- return proto.gateway.web.v1.StreamMetricAnalyticsRequest.deserializeBinaryFromReader(msg, reader);
3655
+ var msg = new proto.gateway.web.v1.AbsoluteTimeRange;
3656
+ return proto.gateway.web.v1.AbsoluteTimeRange.deserializeBinaryFromReader(msg, reader);
2515
3657
  };
2516
3658
 
2517
3659
 
2518
3660
  /**
2519
3661
  * Deserializes binary data (in protobuf wire format) from the
2520
3662
  * given reader into the given message object.
2521
- * @param {!proto.gateway.web.v1.StreamMetricAnalyticsRequest} msg The message object to deserialize into.
3663
+ * @param {!proto.gateway.web.v1.AbsoluteTimeRange} msg The message object to deserialize into.
2522
3664
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2523
- * @return {!proto.gateway.web.v1.StreamMetricAnalyticsRequest}
3665
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange}
2524
3666
  */
2525
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.deserializeBinaryFromReader = function(msg, reader) {
3667
+ proto.gateway.web.v1.AbsoluteTimeRange.deserializeBinaryFromReader = function(msg, reader) {
2526
3668
  while (reader.nextField()) {
2527
3669
  if (reader.isEndGroup()) {
2528
3670
  break;
@@ -2530,9 +3672,14 @@ proto.gateway.web.v1.StreamMetricAnalyticsRequest.deserializeBinaryFromReader =
2530
3672
  var field = reader.getFieldNumber();
2531
3673
  switch (field) {
2532
3674
  case 1:
2533
- var value = new proto.gateway.web.v1.MetricQuery;
2534
- reader.readMessage(value,proto.gateway.web.v1.MetricQuery.deserializeBinaryFromReader);
2535
- msg.setQuery(value);
3675
+ var value = new google_protobuf_timestamp_pb.Timestamp;
3676
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3677
+ msg.setStart(value);
3678
+ break;
3679
+ case 2:
3680
+ var value = new google_protobuf_timestamp_pb.Timestamp;
3681
+ reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
3682
+ msg.setEnd(value);
2536
3683
  break;
2537
3684
  default:
2538
3685
  reader.skipField();
@@ -2547,9 +3694,9 @@ proto.gateway.web.v1.StreamMetricAnalyticsRequest.deserializeBinaryFromReader =
2547
3694
  * Serializes the message to binary data (in protobuf wire format).
2548
3695
  * @return {!Uint8Array}
2549
3696
  */
2550
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.serializeBinary = function() {
3697
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.serializeBinary = function() {
2551
3698
  var writer = new jspb.BinaryWriter();
2552
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.serializeBinaryToWriter(this, writer);
3699
+ proto.gateway.web.v1.AbsoluteTimeRange.serializeBinaryToWriter(this, writer);
2553
3700
  return writer.getResultBuffer();
2554
3701
  };
2555
3702
 
@@ -2557,48 +3704,56 @@ proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.serializeBinary = fu
2557
3704
  /**
2558
3705
  * Serializes the given message to binary data (in protobuf wire
2559
3706
  * format), writing to the given BinaryWriter.
2560
- * @param {!proto.gateway.web.v1.StreamMetricAnalyticsRequest} message
3707
+ * @param {!proto.gateway.web.v1.AbsoluteTimeRange} message
2561
3708
  * @param {!jspb.BinaryWriter} writer
2562
3709
  * @suppress {unusedLocalVariables} f is only used for nested messages
2563
3710
  */
2564
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.serializeBinaryToWriter = function(message, writer) {
3711
+ proto.gateway.web.v1.AbsoluteTimeRange.serializeBinaryToWriter = function(message, writer) {
2565
3712
  var f = undefined;
2566
- f = message.getQuery();
3713
+ f = message.getStart();
2567
3714
  if (f != null) {
2568
3715
  writer.writeMessage(
2569
3716
  1,
2570
3717
  f,
2571
- proto.gateway.web.v1.MetricQuery.serializeBinaryToWriter
3718
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
3719
+ );
3720
+ }
3721
+ f = message.getEnd();
3722
+ if (f != null) {
3723
+ writer.writeMessage(
3724
+ 2,
3725
+ f,
3726
+ google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
2572
3727
  );
2573
3728
  }
2574
3729
  };
2575
3730
 
2576
3731
 
2577
3732
  /**
2578
- * optional MetricQuery query = 1;
2579
- * @return {?proto.gateway.web.v1.MetricQuery}
3733
+ * optional google.protobuf.Timestamp start = 1;
3734
+ * @return {?proto.google.protobuf.Timestamp}
2580
3735
  */
2581
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.getQuery = function() {
2582
- return /** @type{?proto.gateway.web.v1.MetricQuery} */ (
2583
- jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricQuery, 1));
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));
2584
3739
  };
2585
3740
 
2586
3741
 
2587
3742
  /**
2588
- * @param {?proto.gateway.web.v1.MetricQuery|undefined} value
2589
- * @return {!proto.gateway.web.v1.StreamMetricAnalyticsRequest} returns this
3743
+ * @param {?proto.google.protobuf.Timestamp|undefined} value
3744
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange} returns this
2590
3745
  */
2591
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.setQuery = function(value) {
3746
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.setStart = function(value) {
2592
3747
  return jspb.Message.setWrapperField(this, 1, value);
2593
3748
  };
2594
3749
 
2595
3750
 
2596
3751
  /**
2597
3752
  * Clears the message field making it undefined.
2598
- * @return {!proto.gateway.web.v1.StreamMetricAnalyticsRequest} returns this
3753
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange} returns this
2599
3754
  */
2600
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.clearQuery = function() {
2601
- return this.setQuery(undefined);
3755
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.clearStart = function() {
3756
+ return this.setStart(undefined);
2602
3757
  };
2603
3758
 
2604
3759
 
@@ -2606,11 +3761,48 @@ proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.clearQuery = functio
2606
3761
  * Returns whether this field is set.
2607
3762
  * @return {boolean}
2608
3763
  */
2609
- proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.hasQuery = function() {
3764
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.hasStart = function() {
2610
3765
  return jspb.Message.getField(this, 1) != null;
2611
3766
  };
2612
3767
 
2613
3768
 
3769
+ /**
3770
+ * optional google.protobuf.Timestamp end = 2;
3771
+ * @return {?proto.google.protobuf.Timestamp}
3772
+ */
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));
3776
+ };
3777
+
3778
+
3779
+ /**
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);
3785
+ };
3786
+
3787
+
3788
+ /**
3789
+ * Clears the message field making it undefined.
3790
+ * @return {!proto.gateway.web.v1.AbsoluteTimeRange} returns this
3791
+ */
3792
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.clearEnd = function() {
3793
+ return this.setEnd(undefined);
3794
+ };
3795
+
3796
+
3797
+ /**
3798
+ * Returns whether this field is set.
3799
+ * @return {boolean}
3800
+ */
3801
+ proto.gateway.web.v1.AbsoluteTimeRange.prototype.hasEnd = function() {
3802
+ return jspb.Message.getField(this, 2) != null;
3803
+ };
3804
+
3805
+
2614
3806
 
2615
3807
  /**
2616
3808
  * Oneof group definitions for this message. Each group defines the field
@@ -2620,22 +3812,22 @@ proto.gateway.web.v1.StreamMetricAnalyticsRequest.prototype.hasQuery = function(
2620
3812
  * @private {!Array<!Array<number>>}
2621
3813
  * @const
2622
3814
  */
2623
- proto.gateway.web.v1.MetricAnalyticsEnvelope.oneofGroups_ = [[1,2]];
3815
+ proto.gateway.web.v1.QueryDataEnvelope.oneofGroups_ = [[1,2]];
2624
3816
 
2625
3817
  /**
2626
3818
  * @enum {number}
2627
3819
  */
2628
- proto.gateway.web.v1.MetricAnalyticsEnvelope.EventCase = {
3820
+ proto.gateway.web.v1.QueryDataEnvelope.EventCase = {
2629
3821
  EVENT_NOT_SET: 0,
2630
3822
  SNAPSHOT: 1,
2631
- BUCKET_UPDATE: 2
3823
+ UPDATE: 2
2632
3824
  };
2633
3825
 
2634
3826
  /**
2635
- * @return {proto.gateway.web.v1.MetricAnalyticsEnvelope.EventCase}
3827
+ * @return {proto.gateway.web.v1.QueryDataEnvelope.EventCase}
2636
3828
  */
2637
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.getEventCase = function() {
2638
- 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]));
2639
3831
  };
2640
3832
 
2641
3833
 
@@ -2653,8 +3845,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
2653
3845
  * http://goto/soy-param-migration
2654
3846
  * @return {!Object}
2655
3847
  */
2656
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.toObject = function(opt_includeInstance) {
2657
- 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);
2658
3850
  };
2659
3851
 
2660
3852
 
@@ -2663,14 +3855,14 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.toObject = function(opt_i
2663
3855
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2664
3856
  * the JSPB instance for transitional soy proto support:
2665
3857
  * http://goto/soy-param-migration
2666
- * @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.
2667
3859
  * @return {!Object}
2668
3860
  * @suppress {unusedLocalVariables} f is only used for nested messages
2669
3861
  */
2670
- proto.gateway.web.v1.MetricAnalyticsEnvelope.toObject = function(includeInstance, msg) {
3862
+ proto.gateway.web.v1.QueryDataEnvelope.toObject = function(includeInstance, msg) {
2671
3863
  var f, obj = {
2672
- snapshot: (f = msg.getSnapshot()) && proto.gateway.web.v1.MetricAnalyticsSnapshot.toObject(includeInstance, f),
2673
- 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)
2674
3866
  };
2675
3867
 
2676
3868
  if (includeInstance) {
@@ -2684,23 +3876,23 @@ bucketUpdate: (f = msg.getBucketUpdate()) && proto.gateway.web.v1.MetricSeriesBu
2684
3876
  /**
2685
3877
  * Deserializes binary data (in protobuf wire format).
2686
3878
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
2687
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope}
3879
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope}
2688
3880
  */
2689
- proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinary = function(bytes) {
3881
+ proto.gateway.web.v1.QueryDataEnvelope.deserializeBinary = function(bytes) {
2690
3882
  var reader = new jspb.BinaryReader(bytes);
2691
- var msg = new proto.gateway.web.v1.MetricAnalyticsEnvelope;
2692
- 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);
2693
3885
  };
2694
3886
 
2695
3887
 
2696
3888
  /**
2697
3889
  * Deserializes binary data (in protobuf wire format) from the
2698
3890
  * given reader into the given message object.
2699
- * @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.
2700
3892
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2701
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope}
3893
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope}
2702
3894
  */
2703
- proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinaryFromReader = function(msg, reader) {
3895
+ proto.gateway.web.v1.QueryDataEnvelope.deserializeBinaryFromReader = function(msg, reader) {
2704
3896
  while (reader.nextField()) {
2705
3897
  if (reader.isEndGroup()) {
2706
3898
  break;
@@ -2708,14 +3900,14 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinaryFromReader = funct
2708
3900
  var field = reader.getFieldNumber();
2709
3901
  switch (field) {
2710
3902
  case 1:
2711
- var value = new proto.gateway.web.v1.MetricAnalyticsSnapshot;
2712
- 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);
2713
3905
  msg.setSnapshot(value);
2714
3906
  break;
2715
3907
  case 2:
2716
- var value = new proto.gateway.web.v1.MetricSeriesBucketUpdate;
2717
- reader.readMessage(value,proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader);
2718
- 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);
2719
3911
  break;
2720
3912
  default:
2721
3913
  reader.skipField();
@@ -2730,9 +3922,9 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.deserializeBinaryFromReader = funct
2730
3922
  * Serializes the message to binary data (in protobuf wire format).
2731
3923
  * @return {!Uint8Array}
2732
3924
  */
2733
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.serializeBinary = function() {
3925
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.serializeBinary = function() {
2734
3926
  var writer = new jspb.BinaryWriter();
2735
- proto.gateway.web.v1.MetricAnalyticsEnvelope.serializeBinaryToWriter(this, writer);
3927
+ proto.gateway.web.v1.QueryDataEnvelope.serializeBinaryToWriter(this, writer);
2736
3928
  return writer.getResultBuffer();
2737
3929
  };
2738
3930
 
@@ -2740,55 +3932,55 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.serializeBinary = functio
2740
3932
  /**
2741
3933
  * Serializes the given message to binary data (in protobuf wire
2742
3934
  * format), writing to the given BinaryWriter.
2743
- * @param {!proto.gateway.web.v1.MetricAnalyticsEnvelope} message
3935
+ * @param {!proto.gateway.web.v1.QueryDataEnvelope} message
2744
3936
  * @param {!jspb.BinaryWriter} writer
2745
3937
  * @suppress {unusedLocalVariables} f is only used for nested messages
2746
3938
  */
2747
- proto.gateway.web.v1.MetricAnalyticsEnvelope.serializeBinaryToWriter = function(message, writer) {
3939
+ proto.gateway.web.v1.QueryDataEnvelope.serializeBinaryToWriter = function(message, writer) {
2748
3940
  var f = undefined;
2749
3941
  f = message.getSnapshot();
2750
3942
  if (f != null) {
2751
3943
  writer.writeMessage(
2752
3944
  1,
2753
3945
  f,
2754
- proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter
3946
+ proto.gateway.web.v1.QuerySnapshot.serializeBinaryToWriter
2755
3947
  );
2756
3948
  }
2757
- f = message.getBucketUpdate();
3949
+ f = message.getUpdate();
2758
3950
  if (f != null) {
2759
3951
  writer.writeMessage(
2760
3952
  2,
2761
3953
  f,
2762
- proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter
3954
+ proto.gateway.web.v1.QuerySeriesUpdate.serializeBinaryToWriter
2763
3955
  );
2764
3956
  }
2765
3957
  };
2766
3958
 
2767
3959
 
2768
3960
  /**
2769
- * optional MetricAnalyticsSnapshot snapshot = 1;
2770
- * @return {?proto.gateway.web.v1.MetricAnalyticsSnapshot}
3961
+ * optional QuerySnapshot snapshot = 1;
3962
+ * @return {?proto.gateway.web.v1.QuerySnapshot}
2771
3963
  */
2772
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.getSnapshot = function() {
2773
- return /** @type{?proto.gateway.web.v1.MetricAnalyticsSnapshot} */ (
2774
- 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));
2775
3967
  };
2776
3968
 
2777
3969
 
2778
3970
  /**
2779
- * @param {?proto.gateway.web.v1.MetricAnalyticsSnapshot|undefined} value
2780
- * @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
2781
3973
  */
2782
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.setSnapshot = function(value) {
2783
- 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);
2784
3976
  };
2785
3977
 
2786
3978
 
2787
3979
  /**
2788
3980
  * Clears the message field making it undefined.
2789
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope} returns this
3981
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope} returns this
2790
3982
  */
2791
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.clearSnapshot = function() {
3983
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.clearSnapshot = function() {
2792
3984
  return this.setSnapshot(undefined);
2793
3985
  };
2794
3986
 
@@ -2797,36 +3989,36 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.clearSnapshot = function(
2797
3989
  * Returns whether this field is set.
2798
3990
  * @return {boolean}
2799
3991
  */
2800
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.hasSnapshot = function() {
3992
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.hasSnapshot = function() {
2801
3993
  return jspb.Message.getField(this, 1) != null;
2802
3994
  };
2803
3995
 
2804
3996
 
2805
3997
  /**
2806
- * optional MetricSeriesBucketUpdate bucket_update = 2;
2807
- * @return {?proto.gateway.web.v1.MetricSeriesBucketUpdate}
3998
+ * optional QuerySeriesUpdate update = 2;
3999
+ * @return {?proto.gateway.web.v1.QuerySeriesUpdate}
2808
4000
  */
2809
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.getBucketUpdate = function() {
2810
- return /** @type{?proto.gateway.web.v1.MetricSeriesBucketUpdate} */ (
2811
- 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));
2812
4004
  };
2813
4005
 
2814
4006
 
2815
4007
  /**
2816
- * @param {?proto.gateway.web.v1.MetricSeriesBucketUpdate|undefined} value
2817
- * @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
2818
4010
  */
2819
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.setBucketUpdate = function(value) {
2820
- 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);
2821
4013
  };
2822
4014
 
2823
4015
 
2824
4016
  /**
2825
4017
  * Clears the message field making it undefined.
2826
- * @return {!proto.gateway.web.v1.MetricAnalyticsEnvelope} returns this
4018
+ * @return {!proto.gateway.web.v1.QueryDataEnvelope} returns this
2827
4019
  */
2828
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.clearBucketUpdate = function() {
2829
- return this.setBucketUpdate(undefined);
4020
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.clearUpdate = function() {
4021
+ return this.setUpdate(undefined);
2830
4022
  };
2831
4023
 
2832
4024
 
@@ -2834,7 +4026,7 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.clearBucketUpdate = funct
2834
4026
  * Returns whether this field is set.
2835
4027
  * @return {boolean}
2836
4028
  */
2837
- proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.hasBucketUpdate = function() {
4029
+ proto.gateway.web.v1.QueryDataEnvelope.prototype.hasUpdate = function() {
2838
4030
  return jspb.Message.getField(this, 2) != null;
2839
4031
  };
2840
4032
 
@@ -2845,7 +4037,7 @@ proto.gateway.web.v1.MetricAnalyticsEnvelope.prototype.hasBucketUpdate = functio
2845
4037
  * @private {!Array<number>}
2846
4038
  * @const
2847
4039
  */
2848
- proto.gateway.web.v1.MetricAnalyticsSnapshot.repeatedFields_ = [1];
4040
+ proto.gateway.web.v1.QuerySnapshot.repeatedFields_ = [1];
2849
4041
 
2850
4042
 
2851
4043
 
@@ -2862,8 +4054,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
2862
4054
  * http://goto/soy-param-migration
2863
4055
  * @return {!Object}
2864
4056
  */
2865
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.toObject = function(opt_includeInstance) {
2866
- 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);
2867
4059
  };
2868
4060
 
2869
4061
 
@@ -2872,16 +4064,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.toObject = function(opt_i
2872
4064
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
2873
4065
  * the JSPB instance for transitional soy proto support:
2874
4066
  * http://goto/soy-param-migration
2875
- * @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.
2876
4068
  * @return {!Object}
2877
4069
  * @suppress {unusedLocalVariables} f is only used for nested messages
2878
4070
  */
2879
- proto.gateway.web.v1.MetricAnalyticsSnapshot.toObject = function(includeInstance, msg) {
4071
+ proto.gateway.web.v1.QuerySnapshot.toObject = function(includeInstance, msg) {
2880
4072
  var f, obj = {
2881
4073
  seriesList: jspb.Message.toObjectList(msg.getSeriesList(),
2882
4074
  proto.gateway.web.v1.MetricSeries.toObject, includeInstance),
2883
- windowStart: (f = msg.getWindowStart()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f),
2884
- 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),
2885
4077
  bucketSizeMs: jspb.Message.getFieldWithDefault(msg, 4, 0),
2886
4078
  expectedBucketCount: jspb.Message.getFieldWithDefault(msg, 5, 0),
2887
4079
  unit: jspb.Message.getFieldWithDefault(msg, 6, "")
@@ -2898,23 +4090,23 @@ unit: jspb.Message.getFieldWithDefault(msg, 6, "")
2898
4090
  /**
2899
4091
  * Deserializes binary data (in protobuf wire format).
2900
4092
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
2901
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot}
4093
+ * @return {!proto.gateway.web.v1.QuerySnapshot}
2902
4094
  */
2903
- proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinary = function(bytes) {
4095
+ proto.gateway.web.v1.QuerySnapshot.deserializeBinary = function(bytes) {
2904
4096
  var reader = new jspb.BinaryReader(bytes);
2905
- var msg = new proto.gateway.web.v1.MetricAnalyticsSnapshot;
2906
- 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);
2907
4099
  };
2908
4100
 
2909
4101
 
2910
4102
  /**
2911
4103
  * Deserializes binary data (in protobuf wire format) from the
2912
4104
  * given reader into the given message object.
2913
- * @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.
2914
4106
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
2915
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot}
4107
+ * @return {!proto.gateway.web.v1.QuerySnapshot}
2916
4108
  */
2917
- proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader = function(msg, reader) {
4109
+ proto.gateway.web.v1.QuerySnapshot.deserializeBinaryFromReader = function(msg, reader) {
2918
4110
  while (reader.nextField()) {
2919
4111
  if (reader.isEndGroup()) {
2920
4112
  break;
@@ -2929,12 +4121,12 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader = funct
2929
4121
  case 2:
2930
4122
  var value = new google_protobuf_timestamp_pb.Timestamp;
2931
4123
  reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
2932
- msg.setWindowStart(value);
4124
+ msg.setRangeStart(value);
2933
4125
  break;
2934
4126
  case 3:
2935
4127
  var value = new google_protobuf_timestamp_pb.Timestamp;
2936
4128
  reader.readMessage(value,google_protobuf_timestamp_pb.Timestamp.deserializeBinaryFromReader);
2937
- msg.setWindowEnd(value);
4129
+ msg.setRangeEnd(value);
2938
4130
  break;
2939
4131
  case 4:
2940
4132
  var value = /** @type {number} */ (reader.readInt64());
@@ -2961,9 +4153,9 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.deserializeBinaryFromReader = funct
2961
4153
  * Serializes the message to binary data (in protobuf wire format).
2962
4154
  * @return {!Uint8Array}
2963
4155
  */
2964
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.serializeBinary = function() {
4156
+ proto.gateway.web.v1.QuerySnapshot.prototype.serializeBinary = function() {
2965
4157
  var writer = new jspb.BinaryWriter();
2966
- proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter(this, writer);
4158
+ proto.gateway.web.v1.QuerySnapshot.serializeBinaryToWriter(this, writer);
2967
4159
  return writer.getResultBuffer();
2968
4160
  };
2969
4161
 
@@ -2971,11 +4163,11 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.serializeBinary = functio
2971
4163
  /**
2972
4164
  * Serializes the given message to binary data (in protobuf wire
2973
4165
  * format), writing to the given BinaryWriter.
2974
- * @param {!proto.gateway.web.v1.MetricAnalyticsSnapshot} message
4166
+ * @param {!proto.gateway.web.v1.QuerySnapshot} message
2975
4167
  * @param {!jspb.BinaryWriter} writer
2976
4168
  * @suppress {unusedLocalVariables} f is only used for nested messages
2977
4169
  */
2978
- proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter = function(message, writer) {
4170
+ proto.gateway.web.v1.QuerySnapshot.serializeBinaryToWriter = function(message, writer) {
2979
4171
  var f = undefined;
2980
4172
  f = message.getSeriesList();
2981
4173
  if (f.length > 0) {
@@ -2985,7 +4177,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter = function(
2985
4177
  proto.gateway.web.v1.MetricSeries.serializeBinaryToWriter
2986
4178
  );
2987
4179
  }
2988
- f = message.getWindowStart();
4180
+ f = message.getRangeStart();
2989
4181
  if (f != null) {
2990
4182
  writer.writeMessage(
2991
4183
  2,
@@ -2993,7 +4185,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter = function(
2993
4185
  google_protobuf_timestamp_pb.Timestamp.serializeBinaryToWriter
2994
4186
  );
2995
4187
  }
2996
- f = message.getWindowEnd();
4188
+ f = message.getRangeEnd();
2997
4189
  if (f != null) {
2998
4190
  writer.writeMessage(
2999
4191
  3,
@@ -3029,7 +4221,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.serializeBinaryToWriter = function(
3029
4221
  * repeated MetricSeries series = 1;
3030
4222
  * @return {!Array<!proto.gateway.web.v1.MetricSeries>}
3031
4223
  */
3032
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getSeriesList = function() {
4224
+ proto.gateway.web.v1.QuerySnapshot.prototype.getSeriesList = function() {
3033
4225
  return /** @type{!Array<!proto.gateway.web.v1.MetricSeries>} */ (
3034
4226
  jspb.Message.getRepeatedWrapperField(this, proto.gateway.web.v1.MetricSeries, 1));
3035
4227
  };
@@ -3037,9 +4229,9 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getSeriesList = function(
3037
4229
 
3038
4230
  /**
3039
4231
  * @param {!Array<!proto.gateway.web.v1.MetricSeries>} value
3040
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4232
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3041
4233
  */
3042
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setSeriesList = function(value) {
4234
+ proto.gateway.web.v1.QuerySnapshot.prototype.setSeriesList = function(value) {
3043
4235
  return jspb.Message.setRepeatedWrapperField(this, 1, value);
3044
4236
  };
3045
4237
 
@@ -3049,25 +4241,25 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setSeriesList = function(
3049
4241
  * @param {number=} opt_index
3050
4242
  * @return {!proto.gateway.web.v1.MetricSeries}
3051
4243
  */
3052
- 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) {
3053
4245
  return jspb.Message.addToRepeatedWrapperField(this, 1, opt_value, proto.gateway.web.v1.MetricSeries, opt_index);
3054
4246
  };
3055
4247
 
3056
4248
 
3057
4249
  /**
3058
4250
  * Clears the list making it empty but non-null.
3059
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4251
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3060
4252
  */
3061
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearSeriesList = function() {
4253
+ proto.gateway.web.v1.QuerySnapshot.prototype.clearSeriesList = function() {
3062
4254
  return this.setSeriesList([]);
3063
4255
  };
3064
4256
 
3065
4257
 
3066
4258
  /**
3067
- * optional google.protobuf.Timestamp window_start = 2;
4259
+ * optional google.protobuf.Timestamp range_start = 2;
3068
4260
  * @return {?proto.google.protobuf.Timestamp}
3069
4261
  */
3070
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getWindowStart = function() {
4262
+ proto.gateway.web.v1.QuerySnapshot.prototype.getRangeStart = function() {
3071
4263
  return /** @type{?proto.google.protobuf.Timestamp} */ (
3072
4264
  jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 2));
3073
4265
  };
@@ -3075,19 +4267,19 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getWindowStart = function
3075
4267
 
3076
4268
  /**
3077
4269
  * @param {?proto.google.protobuf.Timestamp|undefined} value
3078
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4270
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3079
4271
  */
3080
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setWindowStart = function(value) {
4272
+ proto.gateway.web.v1.QuerySnapshot.prototype.setRangeStart = function(value) {
3081
4273
  return jspb.Message.setWrapperField(this, 2, value);
3082
4274
  };
3083
4275
 
3084
4276
 
3085
4277
  /**
3086
4278
  * Clears the message field making it undefined.
3087
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4279
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3088
4280
  */
3089
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearWindowStart = function() {
3090
- return this.setWindowStart(undefined);
4281
+ proto.gateway.web.v1.QuerySnapshot.prototype.clearRangeStart = function() {
4282
+ return this.setRangeStart(undefined);
3091
4283
  };
3092
4284
 
3093
4285
 
@@ -3095,16 +4287,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearWindowStart = functi
3095
4287
  * Returns whether this field is set.
3096
4288
  * @return {boolean}
3097
4289
  */
3098
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.hasWindowStart = function() {
4290
+ proto.gateway.web.v1.QuerySnapshot.prototype.hasRangeStart = function() {
3099
4291
  return jspb.Message.getField(this, 2) != null;
3100
4292
  };
3101
4293
 
3102
4294
 
3103
4295
  /**
3104
- * optional google.protobuf.Timestamp window_end = 3;
4296
+ * optional google.protobuf.Timestamp range_end = 3;
3105
4297
  * @return {?proto.google.protobuf.Timestamp}
3106
4298
  */
3107
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getWindowEnd = function() {
4299
+ proto.gateway.web.v1.QuerySnapshot.prototype.getRangeEnd = function() {
3108
4300
  return /** @type{?proto.google.protobuf.Timestamp} */ (
3109
4301
  jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 3));
3110
4302
  };
@@ -3112,19 +4304,19 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getWindowEnd = function()
3112
4304
 
3113
4305
  /**
3114
4306
  * @param {?proto.google.protobuf.Timestamp|undefined} value
3115
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4307
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3116
4308
  */
3117
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setWindowEnd = function(value) {
4309
+ proto.gateway.web.v1.QuerySnapshot.prototype.setRangeEnd = function(value) {
3118
4310
  return jspb.Message.setWrapperField(this, 3, value);
3119
4311
  };
3120
4312
 
3121
4313
 
3122
4314
  /**
3123
4315
  * Clears the message field making it undefined.
3124
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4316
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3125
4317
  */
3126
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearWindowEnd = function() {
3127
- return this.setWindowEnd(undefined);
4318
+ proto.gateway.web.v1.QuerySnapshot.prototype.clearRangeEnd = function() {
4319
+ return this.setRangeEnd(undefined);
3128
4320
  };
3129
4321
 
3130
4322
 
@@ -3132,7 +4324,7 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.clearWindowEnd = function
3132
4324
  * Returns whether this field is set.
3133
4325
  * @return {boolean}
3134
4326
  */
3135
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.hasWindowEnd = function() {
4327
+ proto.gateway.web.v1.QuerySnapshot.prototype.hasRangeEnd = function() {
3136
4328
  return jspb.Message.getField(this, 3) != null;
3137
4329
  };
3138
4330
 
@@ -3141,16 +4333,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.hasWindowEnd = function()
3141
4333
  * optional int64 bucket_size_ms = 4;
3142
4334
  * @return {number}
3143
4335
  */
3144
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getBucketSizeMs = function() {
4336
+ proto.gateway.web.v1.QuerySnapshot.prototype.getBucketSizeMs = function() {
3145
4337
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 4, 0));
3146
4338
  };
3147
4339
 
3148
4340
 
3149
4341
  /**
3150
4342
  * @param {number} value
3151
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4343
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3152
4344
  */
3153
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setBucketSizeMs = function(value) {
4345
+ proto.gateway.web.v1.QuerySnapshot.prototype.setBucketSizeMs = function(value) {
3154
4346
  return jspb.Message.setProto3IntField(this, 4, value);
3155
4347
  };
3156
4348
 
@@ -3159,16 +4351,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setBucketSizeMs = functio
3159
4351
  * optional int32 expected_bucket_count = 5;
3160
4352
  * @return {number}
3161
4353
  */
3162
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getExpectedBucketCount = function() {
4354
+ proto.gateway.web.v1.QuerySnapshot.prototype.getExpectedBucketCount = function() {
3163
4355
  return /** @type {number} */ (jspb.Message.getFieldWithDefault(this, 5, 0));
3164
4356
  };
3165
4357
 
3166
4358
 
3167
4359
  /**
3168
4360
  * @param {number} value
3169
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4361
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3170
4362
  */
3171
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setExpectedBucketCount = function(value) {
4363
+ proto.gateway.web.v1.QuerySnapshot.prototype.setExpectedBucketCount = function(value) {
3172
4364
  return jspb.Message.setProto3IntField(this, 5, value);
3173
4365
  };
3174
4366
 
@@ -3177,16 +4369,16 @@ proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setExpectedBucketCount =
3177
4369
  * optional string unit = 6;
3178
4370
  * @return {string}
3179
4371
  */
3180
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.getUnit = function() {
4372
+ proto.gateway.web.v1.QuerySnapshot.prototype.getUnit = function() {
3181
4373
  return /** @type {string} */ (jspb.Message.getFieldWithDefault(this, 6, ""));
3182
4374
  };
3183
4375
 
3184
4376
 
3185
4377
  /**
3186
4378
  * @param {string} value
3187
- * @return {!proto.gateway.web.v1.MetricAnalyticsSnapshot} returns this
4379
+ * @return {!proto.gateway.web.v1.QuerySnapshot} returns this
3188
4380
  */
3189
- proto.gateway.web.v1.MetricAnalyticsSnapshot.prototype.setUnit = function(value) {
4381
+ proto.gateway.web.v1.QuerySnapshot.prototype.setUnit = function(value) {
3190
4382
  return jspb.Message.setProto3StringField(this, 6, value);
3191
4383
  };
3192
4384
 
@@ -3230,7 +4422,7 @@ proto.gateway.web.v1.MetricSeries.prototype.toObject = function(opt_includeInsta
3230
4422
  */
3231
4423
  proto.gateway.web.v1.MetricSeries.toObject = function(includeInstance, msg) {
3232
4424
  var f, obj = {
3233
- groupKeyMap: (f = msg.getGroupKeyMap()) ? f.toObject(includeInstance, undefined) : [],
4425
+ groupValuesMap: (f = msg.getGroupValuesMap()) ? f.toObject(includeInstance, undefined) : [],
3234
4426
  bucketsList: jspb.Message.toObjectList(msg.getBucketsList(),
3235
4427
  proto.gateway.web.v1.MetricBucket.toObject, includeInstance)
3236
4428
  };
@@ -3270,7 +4462,7 @@ proto.gateway.web.v1.MetricSeries.deserializeBinaryFromReader = function(msg, re
3270
4462
  var field = reader.getFieldNumber();
3271
4463
  switch (field) {
3272
4464
  case 1:
3273
- var value = msg.getGroupKeyMap();
4465
+ var value = msg.getGroupValuesMap();
3274
4466
  reader.readMessage(value, function(message, reader) {
3275
4467
  jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
3276
4468
  });
@@ -3309,7 +4501,7 @@ proto.gateway.web.v1.MetricSeries.prototype.serializeBinary = function() {
3309
4501
  */
3310
4502
  proto.gateway.web.v1.MetricSeries.serializeBinaryToWriter = function(message, writer) {
3311
4503
  var f = undefined;
3312
- f = message.getGroupKeyMap(true);
4504
+ f = message.getGroupValuesMap(true);
3313
4505
  if (f && f.getLength() > 0) {
3314
4506
  f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
3315
4507
  }
@@ -3325,12 +4517,12 @@ proto.gateway.web.v1.MetricSeries.serializeBinaryToWriter = function(message, wr
3325
4517
 
3326
4518
 
3327
4519
  /**
3328
- * map<string, string> group_key = 1;
4520
+ * map<string, string> group_values = 1;
3329
4521
  * @param {boolean=} opt_noLazyCreate Do not create the map if
3330
4522
  * empty, instead returning `undefined`
3331
4523
  * @return {!jspb.Map<string,string>}
3332
4524
  */
3333
- proto.gateway.web.v1.MetricSeries.prototype.getGroupKeyMap = function(opt_noLazyCreate) {
4525
+ proto.gateway.web.v1.MetricSeries.prototype.getGroupValuesMap = function(opt_noLazyCreate) {
3334
4526
  return /** @type {!jspb.Map<string,string>} */ (
3335
4527
  jspb.Message.getMapField(this, 1, opt_noLazyCreate,
3336
4528
  null));
@@ -3341,8 +4533,8 @@ proto.gateway.web.v1.MetricSeries.prototype.getGroupKeyMap = function(opt_noLazy
3341
4533
  * Clears values from the map. The map will be non-null.
3342
4534
  * @return {!proto.gateway.web.v1.MetricSeries} returns this
3343
4535
  */
3344
- proto.gateway.web.v1.MetricSeries.prototype.clearGroupKeyMap = function() {
3345
- this.getGroupKeyMap().clear();
4536
+ proto.gateway.web.v1.MetricSeries.prototype.clearGroupValuesMap = function() {
4537
+ this.getGroupValuesMap().clear();
3346
4538
  return this;
3347
4539
  };
3348
4540
 
@@ -3582,8 +4774,8 @@ if (jspb.Message.GENERATE_TO_OBJECT) {
3582
4774
  * http://goto/soy-param-migration
3583
4775
  * @return {!Object}
3584
4776
  */
3585
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.toObject = function(opt_includeInstance) {
3586
- 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);
3587
4779
  };
3588
4780
 
3589
4781
 
@@ -3592,13 +4784,13 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.toObject = function(opt_
3592
4784
  * @param {boolean|undefined} includeInstance Deprecated. Whether to include
3593
4785
  * the JSPB instance for transitional soy proto support:
3594
4786
  * http://goto/soy-param-migration
3595
- * @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.
3596
4788
  * @return {!Object}
3597
4789
  * @suppress {unusedLocalVariables} f is only used for nested messages
3598
4790
  */
3599
- proto.gateway.web.v1.MetricSeriesBucketUpdate.toObject = function(includeInstance, msg) {
4791
+ proto.gateway.web.v1.QuerySeriesUpdate.toObject = function(includeInstance, msg) {
3600
4792
  var f, obj = {
3601
- groupKeyMap: (f = msg.getGroupKeyMap()) ? f.toObject(includeInstance, undefined) : [],
4793
+ groupValuesMap: (f = msg.getGroupValuesMap()) ? f.toObject(includeInstance, undefined) : [],
3602
4794
  bucket: (f = msg.getBucket()) && proto.gateway.web.v1.MetricBucket.toObject(includeInstance, f),
3603
4795
  generatedAt: (f = msg.getGeneratedAt()) && google_protobuf_timestamp_pb.Timestamp.toObject(includeInstance, f)
3604
4796
  };
@@ -3614,23 +4806,23 @@ generatedAt: (f = msg.getGeneratedAt()) && google_protobuf_timestamp_pb.Timestam
3614
4806
  /**
3615
4807
  * Deserializes binary data (in protobuf wire format).
3616
4808
  * @param {jspb.ByteSource} bytes The bytes to deserialize.
3617
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate}
4809
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate}
3618
4810
  */
3619
- proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinary = function(bytes) {
4811
+ proto.gateway.web.v1.QuerySeriesUpdate.deserializeBinary = function(bytes) {
3620
4812
  var reader = new jspb.BinaryReader(bytes);
3621
- var msg = new proto.gateway.web.v1.MetricSeriesBucketUpdate;
3622
- 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);
3623
4815
  };
3624
4816
 
3625
4817
 
3626
4818
  /**
3627
4819
  * Deserializes binary data (in protobuf wire format) from the
3628
4820
  * given reader into the given message object.
3629
- * @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.
3630
4822
  * @param {!jspb.BinaryReader} reader The BinaryReader to use.
3631
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate}
4823
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate}
3632
4824
  */
3633
- proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader = function(msg, reader) {
4825
+ proto.gateway.web.v1.QuerySeriesUpdate.deserializeBinaryFromReader = function(msg, reader) {
3634
4826
  while (reader.nextField()) {
3635
4827
  if (reader.isEndGroup()) {
3636
4828
  break;
@@ -3638,7 +4830,7 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader = func
3638
4830
  var field = reader.getFieldNumber();
3639
4831
  switch (field) {
3640
4832
  case 1:
3641
- var value = msg.getGroupKeyMap();
4833
+ var value = msg.getGroupValuesMap();
3642
4834
  reader.readMessage(value, function(message, reader) {
3643
4835
  jspb.Map.deserializeBinary(message, reader, jspb.BinaryReader.prototype.readString, jspb.BinaryReader.prototype.readString, null, "", "");
3644
4836
  });
@@ -3666,9 +4858,9 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.deserializeBinaryFromReader = func
3666
4858
  * Serializes the message to binary data (in protobuf wire format).
3667
4859
  * @return {!Uint8Array}
3668
4860
  */
3669
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.serializeBinary = function() {
4861
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.serializeBinary = function() {
3670
4862
  var writer = new jspb.BinaryWriter();
3671
- proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter(this, writer);
4863
+ proto.gateway.web.v1.QuerySeriesUpdate.serializeBinaryToWriter(this, writer);
3672
4864
  return writer.getResultBuffer();
3673
4865
  };
3674
4866
 
@@ -3676,13 +4868,13 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.serializeBinary = functi
3676
4868
  /**
3677
4869
  * Serializes the given message to binary data (in protobuf wire
3678
4870
  * format), writing to the given BinaryWriter.
3679
- * @param {!proto.gateway.web.v1.MetricSeriesBucketUpdate} message
4871
+ * @param {!proto.gateway.web.v1.QuerySeriesUpdate} message
3680
4872
  * @param {!jspb.BinaryWriter} writer
3681
4873
  * @suppress {unusedLocalVariables} f is only used for nested messages
3682
4874
  */
3683
- proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter = function(message, writer) {
4875
+ proto.gateway.web.v1.QuerySeriesUpdate.serializeBinaryToWriter = function(message, writer) {
3684
4876
  var f = undefined;
3685
- f = message.getGroupKeyMap(true);
4877
+ f = message.getGroupValuesMap(true);
3686
4878
  if (f && f.getLength() > 0) {
3687
4879
  f.serializeBinary(1, writer, jspb.BinaryWriter.prototype.writeString, jspb.BinaryWriter.prototype.writeString);
3688
4880
  }
@@ -3706,12 +4898,12 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.serializeBinaryToWriter = function
3706
4898
 
3707
4899
 
3708
4900
  /**
3709
- * map<string, string> group_key = 1;
4901
+ * map<string, string> group_values = 1;
3710
4902
  * @param {boolean=} opt_noLazyCreate Do not create the map if
3711
4903
  * empty, instead returning `undefined`
3712
4904
  * @return {!jspb.Map<string,string>}
3713
4905
  */
3714
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.getGroupKeyMap = function(opt_noLazyCreate) {
4906
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.getGroupValuesMap = function(opt_noLazyCreate) {
3715
4907
  return /** @type {!jspb.Map<string,string>} */ (
3716
4908
  jspb.Message.getMapField(this, 1, opt_noLazyCreate,
3717
4909
  null));
@@ -3720,10 +4912,10 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.getGroupKeyMap = functio
3720
4912
 
3721
4913
  /**
3722
4914
  * Clears values from the map. The map will be non-null.
3723
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4915
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3724
4916
  */
3725
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearGroupKeyMap = function() {
3726
- this.getGroupKeyMap().clear();
4917
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.clearGroupValuesMap = function() {
4918
+ this.getGroupValuesMap().clear();
3727
4919
  return this;
3728
4920
  };
3729
4921
 
@@ -3732,7 +4924,7 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearGroupKeyMap = funct
3732
4924
  * optional MetricBucket bucket = 2;
3733
4925
  * @return {?proto.gateway.web.v1.MetricBucket}
3734
4926
  */
3735
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.getBucket = function() {
4927
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.getBucket = function() {
3736
4928
  return /** @type{?proto.gateway.web.v1.MetricBucket} */ (
3737
4929
  jspb.Message.getWrapperField(this, proto.gateway.web.v1.MetricBucket, 2));
3738
4930
  };
@@ -3740,18 +4932,18 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.getBucket = function() {
3740
4932
 
3741
4933
  /**
3742
4934
  * @param {?proto.gateway.web.v1.MetricBucket|undefined} value
3743
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4935
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3744
4936
  */
3745
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.setBucket = function(value) {
4937
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.setBucket = function(value) {
3746
4938
  return jspb.Message.setWrapperField(this, 2, value);
3747
4939
  };
3748
4940
 
3749
4941
 
3750
4942
  /**
3751
4943
  * Clears the message field making it undefined.
3752
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4944
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3753
4945
  */
3754
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearBucket = function() {
4946
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.clearBucket = function() {
3755
4947
  return this.setBucket(undefined);
3756
4948
  };
3757
4949
 
@@ -3760,7 +4952,7 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearBucket = function()
3760
4952
  * Returns whether this field is set.
3761
4953
  * @return {boolean}
3762
4954
  */
3763
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.hasBucket = function() {
4955
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.hasBucket = function() {
3764
4956
  return jspb.Message.getField(this, 2) != null;
3765
4957
  };
3766
4958
 
@@ -3769,7 +4961,7 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.hasBucket = function() {
3769
4961
  * optional google.protobuf.Timestamp generated_at = 3;
3770
4962
  * @return {?proto.google.protobuf.Timestamp}
3771
4963
  */
3772
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.getGeneratedAt = function() {
4964
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.getGeneratedAt = function() {
3773
4965
  return /** @type{?proto.google.protobuf.Timestamp} */ (
3774
4966
  jspb.Message.getWrapperField(this, google_protobuf_timestamp_pb.Timestamp, 3));
3775
4967
  };
@@ -3777,18 +4969,18 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.getGeneratedAt = functio
3777
4969
 
3778
4970
  /**
3779
4971
  * @param {?proto.google.protobuf.Timestamp|undefined} value
3780
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4972
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3781
4973
  */
3782
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.setGeneratedAt = function(value) {
4974
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.setGeneratedAt = function(value) {
3783
4975
  return jspb.Message.setWrapperField(this, 3, value);
3784
4976
  };
3785
4977
 
3786
4978
 
3787
4979
  /**
3788
4980
  * Clears the message field making it undefined.
3789
- * @return {!proto.gateway.web.v1.MetricSeriesBucketUpdate} returns this
4981
+ * @return {!proto.gateway.web.v1.QuerySeriesUpdate} returns this
3790
4982
  */
3791
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearGeneratedAt = function() {
4983
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.clearGeneratedAt = function() {
3792
4984
  return this.setGeneratedAt(undefined);
3793
4985
  };
3794
4986
 
@@ -3797,7 +4989,7 @@ proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.clearGeneratedAt = funct
3797
4989
  * Returns whether this field is set.
3798
4990
  * @return {boolean}
3799
4991
  */
3800
- proto.gateway.web.v1.MetricSeriesBucketUpdate.prototype.hasGeneratedAt = function() {
4992
+ proto.gateway.web.v1.QuerySeriesUpdate.prototype.hasGeneratedAt = function() {
3801
4993
  return jspb.Message.getField(this, 3) != null;
3802
4994
  };
3803
4995
 
@@ -3815,19 +5007,48 @@ proto.gateway.web.v1.MetricKind = {
3815
5007
  /**
3816
5008
  * @enum {number}
3817
5009
  */
3818
- proto.gateway.web.v1.MetricAggregation = {
3819
- METRIC_AGGREGATION_UNSPECIFIED: 0,
3820
- METRIC_AGGREGATION_SUM: 1,
3821
- METRIC_AGGREGATION_AVG: 2,
3822
- METRIC_AGGREGATION_MIN: 3,
3823
- METRIC_AGGREGATION_MAX: 4,
3824
- METRIC_AGGREGATION_COUNT: 5,
3825
- METRIC_AGGREGATION_LAST: 6,
3826
- METRIC_AGGREGATION_RATE: 7,
3827
- METRIC_AGGREGATION_P50: 8,
3828
- METRIC_AGGREGATION_P90: 9,
3829
- METRIC_AGGREGATION_P95: 10,
3830
- METRIC_AGGREGATION_P99: 11
5010
+ proto.gateway.web.v1.GaugeAggregation = {
5011
+ GAUGE_AGGREGATION_UNSPECIFIED: 0,
5012
+ GAUGE_AGGREGATION_LAST: 1,
5013
+ GAUGE_AGGREGATION_AVG: 2,
5014
+ GAUGE_AGGREGATION_MIN: 3,
5015
+ GAUGE_AGGREGATION_MAX: 4,
5016
+ GAUGE_AGGREGATION_SUM: 5,
5017
+ GAUGE_AGGREGATION_COUNT: 6
5018
+ };
5019
+
5020
+ /**
5021
+ * @enum {number}
5022
+ */
5023
+ proto.gateway.web.v1.SumAggregation = {
5024
+ SUM_AGGREGATION_UNSPECIFIED: 0,
5025
+ SUM_AGGREGATION_RATE: 1,
5026
+ SUM_AGGREGATION_INCREASE: 2,
5027
+ SUM_AGGREGATION_LAST: 3,
5028
+ SUM_AGGREGATION_COUNT: 4
5029
+ };
5030
+
5031
+ /**
5032
+ * @enum {number}
5033
+ */
5034
+ proto.gateway.web.v1.HistogramAggregation = {
5035
+ HISTOGRAM_AGGREGATION_UNSPECIFIED: 0,
5036
+ HISTOGRAM_AGGREGATION_QUANTILE: 1,
5037
+ HISTOGRAM_AGGREGATION_AVG: 2,
5038
+ HISTOGRAM_AGGREGATION_MIN: 3,
5039
+ HISTOGRAM_AGGREGATION_MAX: 4,
5040
+ HISTOGRAM_AGGREGATION_COUNT: 5
5041
+ };
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
3831
5052
  };
3832
5053
 
3833
5054
  goog.object.extend(exports, proto.gateway.web.v1);