• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright 2020 Google LLC
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *     https://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 // Generated by the protocol buffer compiler.  DO NOT EDIT!
17 // source: google/analytics/data/v1beta/data.proto
18 
19 package com.google.analytics.data.v1beta;
20 
21 /**
22  *
23  *
24  * <pre>
25  * Describes the visible dimension columns and rows in the report response.
26  * </pre>
27  *
28  * Protobuf type {@code google.analytics.data.v1beta.Pivot}
29  */
30 public final class Pivot extends com.google.protobuf.GeneratedMessageV3
31     implements
32     // @@protoc_insertion_point(message_implements:google.analytics.data.v1beta.Pivot)
33     PivotOrBuilder {
34   private static final long serialVersionUID = 0L;
35   // Use Pivot.newBuilder() to construct.
Pivot(com.google.protobuf.GeneratedMessageV3.Builder<?> builder)36   private Pivot(com.google.protobuf.GeneratedMessageV3.Builder<?> builder) {
37     super(builder);
38   }
39 
Pivot()40   private Pivot() {
41     fieldNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
42     orderBys_ = java.util.Collections.emptyList();
43     metricAggregations_ = java.util.Collections.emptyList();
44   }
45 
46   @java.lang.Override
47   @SuppressWarnings({"unused"})
newInstance(UnusedPrivateParameter unused)48   protected java.lang.Object newInstance(UnusedPrivateParameter unused) {
49     return new Pivot();
50   }
51 
52   @java.lang.Override
getUnknownFields()53   public final com.google.protobuf.UnknownFieldSet getUnknownFields() {
54     return this.unknownFields;
55   }
56 
getDescriptor()57   public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
58     return com.google.analytics.data.v1beta.ReportingApiProto
59         .internal_static_google_analytics_data_v1beta_Pivot_descriptor;
60   }
61 
62   @java.lang.Override
63   protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()64       internalGetFieldAccessorTable() {
65     return com.google.analytics.data.v1beta.ReportingApiProto
66         .internal_static_google_analytics_data_v1beta_Pivot_fieldAccessorTable
67         .ensureFieldAccessorsInitialized(
68             com.google.analytics.data.v1beta.Pivot.class,
69             com.google.analytics.data.v1beta.Pivot.Builder.class);
70   }
71 
72   public static final int FIELD_NAMES_FIELD_NUMBER = 1;
73 
74   @SuppressWarnings("serial")
75   private com.google.protobuf.LazyStringList fieldNames_;
76   /**
77    *
78    *
79    * <pre>
80    * Dimension names for visible columns in the report response. Including
81    * "dateRange" produces a date range column; for each row in the response,
82    * dimension values in the date range column will indicate the corresponding
83    * date range from the request.
84    * </pre>
85    *
86    * <code>repeated string field_names = 1;</code>
87    *
88    * @return A list containing the fieldNames.
89    */
getFieldNamesList()90   public com.google.protobuf.ProtocolStringList getFieldNamesList() {
91     return fieldNames_;
92   }
93   /**
94    *
95    *
96    * <pre>
97    * Dimension names for visible columns in the report response. Including
98    * "dateRange" produces a date range column; for each row in the response,
99    * dimension values in the date range column will indicate the corresponding
100    * date range from the request.
101    * </pre>
102    *
103    * <code>repeated string field_names = 1;</code>
104    *
105    * @return The count of fieldNames.
106    */
getFieldNamesCount()107   public int getFieldNamesCount() {
108     return fieldNames_.size();
109   }
110   /**
111    *
112    *
113    * <pre>
114    * Dimension names for visible columns in the report response. Including
115    * "dateRange" produces a date range column; for each row in the response,
116    * dimension values in the date range column will indicate the corresponding
117    * date range from the request.
118    * </pre>
119    *
120    * <code>repeated string field_names = 1;</code>
121    *
122    * @param index The index of the element to return.
123    * @return The fieldNames at the given index.
124    */
getFieldNames(int index)125   public java.lang.String getFieldNames(int index) {
126     return fieldNames_.get(index);
127   }
128   /**
129    *
130    *
131    * <pre>
132    * Dimension names for visible columns in the report response. Including
133    * "dateRange" produces a date range column; for each row in the response,
134    * dimension values in the date range column will indicate the corresponding
135    * date range from the request.
136    * </pre>
137    *
138    * <code>repeated string field_names = 1;</code>
139    *
140    * @param index The index of the value to return.
141    * @return The bytes of the fieldNames at the given index.
142    */
getFieldNamesBytes(int index)143   public com.google.protobuf.ByteString getFieldNamesBytes(int index) {
144     return fieldNames_.getByteString(index);
145   }
146 
147   public static final int ORDER_BYS_FIELD_NUMBER = 2;
148 
149   @SuppressWarnings("serial")
150   private java.util.List<com.google.analytics.data.v1beta.OrderBy> orderBys_;
151   /**
152    *
153    *
154    * <pre>
155    * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
156    * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
157    * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
158    * Dimensions specified in these OrderBys must be a subset of
159    * Pivot.field_names.
160    * </pre>
161    *
162    * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
163    */
164   @java.lang.Override
getOrderBysList()165   public java.util.List<com.google.analytics.data.v1beta.OrderBy> getOrderBysList() {
166     return orderBys_;
167   }
168   /**
169    *
170    *
171    * <pre>
172    * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
173    * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
174    * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
175    * Dimensions specified in these OrderBys must be a subset of
176    * Pivot.field_names.
177    * </pre>
178    *
179    * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
180    */
181   @java.lang.Override
182   public java.util.List<? extends com.google.analytics.data.v1beta.OrderByOrBuilder>
getOrderBysOrBuilderList()183       getOrderBysOrBuilderList() {
184     return orderBys_;
185   }
186   /**
187    *
188    *
189    * <pre>
190    * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
191    * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
192    * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
193    * Dimensions specified in these OrderBys must be a subset of
194    * Pivot.field_names.
195    * </pre>
196    *
197    * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
198    */
199   @java.lang.Override
getOrderBysCount()200   public int getOrderBysCount() {
201     return orderBys_.size();
202   }
203   /**
204    *
205    *
206    * <pre>
207    * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
208    * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
209    * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
210    * Dimensions specified in these OrderBys must be a subset of
211    * Pivot.field_names.
212    * </pre>
213    *
214    * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
215    */
216   @java.lang.Override
getOrderBys(int index)217   public com.google.analytics.data.v1beta.OrderBy getOrderBys(int index) {
218     return orderBys_.get(index);
219   }
220   /**
221    *
222    *
223    * <pre>
224    * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
225    * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
226    * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
227    * Dimensions specified in these OrderBys must be a subset of
228    * Pivot.field_names.
229    * </pre>
230    *
231    * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
232    */
233   @java.lang.Override
getOrderBysOrBuilder(int index)234   public com.google.analytics.data.v1beta.OrderByOrBuilder getOrderBysOrBuilder(int index) {
235     return orderBys_.get(index);
236   }
237 
238   public static final int OFFSET_FIELD_NUMBER = 3;
239   private long offset_ = 0L;
240   /**
241    *
242    *
243    * <pre>
244    * The row count of the start row. The first row is counted as row 0.
245    * </pre>
246    *
247    * <code>int64 offset = 3;</code>
248    *
249    * @return The offset.
250    */
251   @java.lang.Override
getOffset()252   public long getOffset() {
253     return offset_;
254   }
255 
256   public static final int LIMIT_FIELD_NUMBER = 4;
257   private long limit_ = 0L;
258   /**
259    *
260    *
261    * <pre>
262    * The number of unique combinations of dimension values to return in this
263    * pivot. The `limit` parameter is required. A `limit` of 10,000 is common for
264    * single pivot requests.
265    * The product of the `limit` for each `pivot` in a `RunPivotReportRequest`
266    * must not exceed 100,000. For example, a two pivot request with `limit:
267    * 1000` in each pivot will fail because the product is `1,000,000`.
268    * </pre>
269    *
270    * <code>int64 limit = 4;</code>
271    *
272    * @return The limit.
273    */
274   @java.lang.Override
getLimit()275   public long getLimit() {
276     return limit_;
277   }
278 
279   public static final int METRIC_AGGREGATIONS_FIELD_NUMBER = 5;
280 
281   @SuppressWarnings("serial")
282   private java.util.List<java.lang.Integer> metricAggregations_;
283 
284   private static final com.google.protobuf.Internal.ListAdapter.Converter<
285           java.lang.Integer, com.google.analytics.data.v1beta.MetricAggregation>
286       metricAggregations_converter_ =
287           new com.google.protobuf.Internal.ListAdapter.Converter<
288               java.lang.Integer, com.google.analytics.data.v1beta.MetricAggregation>() {
289             public com.google.analytics.data.v1beta.MetricAggregation convert(
290                 java.lang.Integer from) {
291               com.google.analytics.data.v1beta.MetricAggregation result =
292                   com.google.analytics.data.v1beta.MetricAggregation.forNumber(from);
293               return result == null
294                   ? com.google.analytics.data.v1beta.MetricAggregation.UNRECOGNIZED
295                   : result;
296             }
297           };
298   /**
299    *
300    *
301    * <pre>
302    * Aggregate the metrics by dimensions in this pivot using the specified
303    * metric_aggregations.
304    * </pre>
305    *
306    * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;</code>
307    *
308    * @return A list containing the metricAggregations.
309    */
310   @java.lang.Override
311   public java.util.List<com.google.analytics.data.v1beta.MetricAggregation>
getMetricAggregationsList()312       getMetricAggregationsList() {
313     return new com.google.protobuf.Internal.ListAdapter<
314         java.lang.Integer, com.google.analytics.data.v1beta.MetricAggregation>(
315         metricAggregations_, metricAggregations_converter_);
316   }
317   /**
318    *
319    *
320    * <pre>
321    * Aggregate the metrics by dimensions in this pivot using the specified
322    * metric_aggregations.
323    * </pre>
324    *
325    * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;</code>
326    *
327    * @return The count of metricAggregations.
328    */
329   @java.lang.Override
getMetricAggregationsCount()330   public int getMetricAggregationsCount() {
331     return metricAggregations_.size();
332   }
333   /**
334    *
335    *
336    * <pre>
337    * Aggregate the metrics by dimensions in this pivot using the specified
338    * metric_aggregations.
339    * </pre>
340    *
341    * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;</code>
342    *
343    * @param index The index of the element to return.
344    * @return The metricAggregations at the given index.
345    */
346   @java.lang.Override
getMetricAggregations(int index)347   public com.google.analytics.data.v1beta.MetricAggregation getMetricAggregations(int index) {
348     return metricAggregations_converter_.convert(metricAggregations_.get(index));
349   }
350   /**
351    *
352    *
353    * <pre>
354    * Aggregate the metrics by dimensions in this pivot using the specified
355    * metric_aggregations.
356    * </pre>
357    *
358    * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;</code>
359    *
360    * @return A list containing the enum numeric values on the wire for metricAggregations.
361    */
362   @java.lang.Override
getMetricAggregationsValueList()363   public java.util.List<java.lang.Integer> getMetricAggregationsValueList() {
364     return metricAggregations_;
365   }
366   /**
367    *
368    *
369    * <pre>
370    * Aggregate the metrics by dimensions in this pivot using the specified
371    * metric_aggregations.
372    * </pre>
373    *
374    * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;</code>
375    *
376    * @param index The index of the value to return.
377    * @return The enum numeric value on the wire of metricAggregations at the given index.
378    */
379   @java.lang.Override
getMetricAggregationsValue(int index)380   public int getMetricAggregationsValue(int index) {
381     return metricAggregations_.get(index);
382   }
383 
384   private int metricAggregationsMemoizedSerializedSize;
385 
386   private byte memoizedIsInitialized = -1;
387 
388   @java.lang.Override
isInitialized()389   public final boolean isInitialized() {
390     byte isInitialized = memoizedIsInitialized;
391     if (isInitialized == 1) return true;
392     if (isInitialized == 0) return false;
393 
394     memoizedIsInitialized = 1;
395     return true;
396   }
397 
398   @java.lang.Override
writeTo(com.google.protobuf.CodedOutputStream output)399   public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
400     getSerializedSize();
401     for (int i = 0; i < fieldNames_.size(); i++) {
402       com.google.protobuf.GeneratedMessageV3.writeString(output, 1, fieldNames_.getRaw(i));
403     }
404     for (int i = 0; i < orderBys_.size(); i++) {
405       output.writeMessage(2, orderBys_.get(i));
406     }
407     if (offset_ != 0L) {
408       output.writeInt64(3, offset_);
409     }
410     if (limit_ != 0L) {
411       output.writeInt64(4, limit_);
412     }
413     if (getMetricAggregationsList().size() > 0) {
414       output.writeUInt32NoTag(42);
415       output.writeUInt32NoTag(metricAggregationsMemoizedSerializedSize);
416     }
417     for (int i = 0; i < metricAggregations_.size(); i++) {
418       output.writeEnumNoTag(metricAggregations_.get(i));
419     }
420     getUnknownFields().writeTo(output);
421   }
422 
423   @java.lang.Override
getSerializedSize()424   public int getSerializedSize() {
425     int size = memoizedSize;
426     if (size != -1) return size;
427 
428     size = 0;
429     {
430       int dataSize = 0;
431       for (int i = 0; i < fieldNames_.size(); i++) {
432         dataSize += computeStringSizeNoTag(fieldNames_.getRaw(i));
433       }
434       size += dataSize;
435       size += 1 * getFieldNamesList().size();
436     }
437     for (int i = 0; i < orderBys_.size(); i++) {
438       size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, orderBys_.get(i));
439     }
440     if (offset_ != 0L) {
441       size += com.google.protobuf.CodedOutputStream.computeInt64Size(3, offset_);
442     }
443     if (limit_ != 0L) {
444       size += com.google.protobuf.CodedOutputStream.computeInt64Size(4, limit_);
445     }
446     {
447       int dataSize = 0;
448       for (int i = 0; i < metricAggregations_.size(); i++) {
449         dataSize +=
450             com.google.protobuf.CodedOutputStream.computeEnumSizeNoTag(metricAggregations_.get(i));
451       }
452       size += dataSize;
453       if (!getMetricAggregationsList().isEmpty()) {
454         size += 1;
455         size += com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(dataSize);
456       }
457       metricAggregationsMemoizedSerializedSize = dataSize;
458     }
459     size += getUnknownFields().getSerializedSize();
460     memoizedSize = size;
461     return size;
462   }
463 
464   @java.lang.Override
equals(final java.lang.Object obj)465   public boolean equals(final java.lang.Object obj) {
466     if (obj == this) {
467       return true;
468     }
469     if (!(obj instanceof com.google.analytics.data.v1beta.Pivot)) {
470       return super.equals(obj);
471     }
472     com.google.analytics.data.v1beta.Pivot other = (com.google.analytics.data.v1beta.Pivot) obj;
473 
474     if (!getFieldNamesList().equals(other.getFieldNamesList())) return false;
475     if (!getOrderBysList().equals(other.getOrderBysList())) return false;
476     if (getOffset() != other.getOffset()) return false;
477     if (getLimit() != other.getLimit()) return false;
478     if (!metricAggregations_.equals(other.metricAggregations_)) return false;
479     if (!getUnknownFields().equals(other.getUnknownFields())) return false;
480     return true;
481   }
482 
483   @java.lang.Override
hashCode()484   public int hashCode() {
485     if (memoizedHashCode != 0) {
486       return memoizedHashCode;
487     }
488     int hash = 41;
489     hash = (19 * hash) + getDescriptor().hashCode();
490     if (getFieldNamesCount() > 0) {
491       hash = (37 * hash) + FIELD_NAMES_FIELD_NUMBER;
492       hash = (53 * hash) + getFieldNamesList().hashCode();
493     }
494     if (getOrderBysCount() > 0) {
495       hash = (37 * hash) + ORDER_BYS_FIELD_NUMBER;
496       hash = (53 * hash) + getOrderBysList().hashCode();
497     }
498     hash = (37 * hash) + OFFSET_FIELD_NUMBER;
499     hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getOffset());
500     hash = (37 * hash) + LIMIT_FIELD_NUMBER;
501     hash = (53 * hash) + com.google.protobuf.Internal.hashLong(getLimit());
502     if (getMetricAggregationsCount() > 0) {
503       hash = (37 * hash) + METRIC_AGGREGATIONS_FIELD_NUMBER;
504       hash = (53 * hash) + metricAggregations_.hashCode();
505     }
506     hash = (29 * hash) + getUnknownFields().hashCode();
507     memoizedHashCode = hash;
508     return hash;
509   }
510 
parseFrom(java.nio.ByteBuffer data)511   public static com.google.analytics.data.v1beta.Pivot parseFrom(java.nio.ByteBuffer data)
512       throws com.google.protobuf.InvalidProtocolBufferException {
513     return PARSER.parseFrom(data);
514   }
515 
parseFrom( java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)516   public static com.google.analytics.data.v1beta.Pivot parseFrom(
517       java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
518       throws com.google.protobuf.InvalidProtocolBufferException {
519     return PARSER.parseFrom(data, extensionRegistry);
520   }
521 
parseFrom( com.google.protobuf.ByteString data)522   public static com.google.analytics.data.v1beta.Pivot parseFrom(
523       com.google.protobuf.ByteString data)
524       throws com.google.protobuf.InvalidProtocolBufferException {
525     return PARSER.parseFrom(data);
526   }
527 
parseFrom( com.google.protobuf.ByteString data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)528   public static com.google.analytics.data.v1beta.Pivot parseFrom(
529       com.google.protobuf.ByteString data,
530       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
531       throws com.google.protobuf.InvalidProtocolBufferException {
532     return PARSER.parseFrom(data, extensionRegistry);
533   }
534 
parseFrom(byte[] data)535   public static com.google.analytics.data.v1beta.Pivot parseFrom(byte[] data)
536       throws com.google.protobuf.InvalidProtocolBufferException {
537     return PARSER.parseFrom(data);
538   }
539 
parseFrom( byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)540   public static com.google.analytics.data.v1beta.Pivot parseFrom(
541       byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
542       throws com.google.protobuf.InvalidProtocolBufferException {
543     return PARSER.parseFrom(data, extensionRegistry);
544   }
545 
parseFrom(java.io.InputStream input)546   public static com.google.analytics.data.v1beta.Pivot parseFrom(java.io.InputStream input)
547       throws java.io.IOException {
548     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
549   }
550 
parseFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)551   public static com.google.analytics.data.v1beta.Pivot parseFrom(
552       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
553       throws java.io.IOException {
554     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
555         PARSER, input, extensionRegistry);
556   }
557 
parseDelimitedFrom(java.io.InputStream input)558   public static com.google.analytics.data.v1beta.Pivot parseDelimitedFrom(java.io.InputStream input)
559       throws java.io.IOException {
560     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(PARSER, input);
561   }
562 
parseDelimitedFrom( java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)563   public static com.google.analytics.data.v1beta.Pivot parseDelimitedFrom(
564       java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
565       throws java.io.IOException {
566     return com.google.protobuf.GeneratedMessageV3.parseDelimitedWithIOException(
567         PARSER, input, extensionRegistry);
568   }
569 
parseFrom( com.google.protobuf.CodedInputStream input)570   public static com.google.analytics.data.v1beta.Pivot parseFrom(
571       com.google.protobuf.CodedInputStream input) throws java.io.IOException {
572     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(PARSER, input);
573   }
574 
parseFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)575   public static com.google.analytics.data.v1beta.Pivot parseFrom(
576       com.google.protobuf.CodedInputStream input,
577       com.google.protobuf.ExtensionRegistryLite extensionRegistry)
578       throws java.io.IOException {
579     return com.google.protobuf.GeneratedMessageV3.parseWithIOException(
580         PARSER, input, extensionRegistry);
581   }
582 
583   @java.lang.Override
newBuilderForType()584   public Builder newBuilderForType() {
585     return newBuilder();
586   }
587 
newBuilder()588   public static Builder newBuilder() {
589     return DEFAULT_INSTANCE.toBuilder();
590   }
591 
newBuilder(com.google.analytics.data.v1beta.Pivot prototype)592   public static Builder newBuilder(com.google.analytics.data.v1beta.Pivot prototype) {
593     return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
594   }
595 
596   @java.lang.Override
toBuilder()597   public Builder toBuilder() {
598     return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
599   }
600 
601   @java.lang.Override
newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)602   protected Builder newBuilderForType(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
603     Builder builder = new Builder(parent);
604     return builder;
605   }
606   /**
607    *
608    *
609    * <pre>
610    * Describes the visible dimension columns and rows in the report response.
611    * </pre>
612    *
613    * Protobuf type {@code google.analytics.data.v1beta.Pivot}
614    */
615   public static final class Builder extends com.google.protobuf.GeneratedMessageV3.Builder<Builder>
616       implements
617       // @@protoc_insertion_point(builder_implements:google.analytics.data.v1beta.Pivot)
618       com.google.analytics.data.v1beta.PivotOrBuilder {
getDescriptor()619     public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
620       return com.google.analytics.data.v1beta.ReportingApiProto
621           .internal_static_google_analytics_data_v1beta_Pivot_descriptor;
622     }
623 
624     @java.lang.Override
625     protected com.google.protobuf.GeneratedMessageV3.FieldAccessorTable
internalGetFieldAccessorTable()626         internalGetFieldAccessorTable() {
627       return com.google.analytics.data.v1beta.ReportingApiProto
628           .internal_static_google_analytics_data_v1beta_Pivot_fieldAccessorTable
629           .ensureFieldAccessorsInitialized(
630               com.google.analytics.data.v1beta.Pivot.class,
631               com.google.analytics.data.v1beta.Pivot.Builder.class);
632     }
633 
634     // Construct using com.google.analytics.data.v1beta.Pivot.newBuilder()
Builder()635     private Builder() {}
636 
Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent)637     private Builder(com.google.protobuf.GeneratedMessageV3.BuilderParent parent) {
638       super(parent);
639     }
640 
641     @java.lang.Override
clear()642     public Builder clear() {
643       super.clear();
644       bitField0_ = 0;
645       fieldNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
646       bitField0_ = (bitField0_ & ~0x00000001);
647       if (orderBysBuilder_ == null) {
648         orderBys_ = java.util.Collections.emptyList();
649       } else {
650         orderBys_ = null;
651         orderBysBuilder_.clear();
652       }
653       bitField0_ = (bitField0_ & ~0x00000002);
654       offset_ = 0L;
655       limit_ = 0L;
656       metricAggregations_ = java.util.Collections.emptyList();
657       bitField0_ = (bitField0_ & ~0x00000010);
658       return this;
659     }
660 
661     @java.lang.Override
getDescriptorForType()662     public com.google.protobuf.Descriptors.Descriptor getDescriptorForType() {
663       return com.google.analytics.data.v1beta.ReportingApiProto
664           .internal_static_google_analytics_data_v1beta_Pivot_descriptor;
665     }
666 
667     @java.lang.Override
getDefaultInstanceForType()668     public com.google.analytics.data.v1beta.Pivot getDefaultInstanceForType() {
669       return com.google.analytics.data.v1beta.Pivot.getDefaultInstance();
670     }
671 
672     @java.lang.Override
build()673     public com.google.analytics.data.v1beta.Pivot build() {
674       com.google.analytics.data.v1beta.Pivot result = buildPartial();
675       if (!result.isInitialized()) {
676         throw newUninitializedMessageException(result);
677       }
678       return result;
679     }
680 
681     @java.lang.Override
buildPartial()682     public com.google.analytics.data.v1beta.Pivot buildPartial() {
683       com.google.analytics.data.v1beta.Pivot result =
684           new com.google.analytics.data.v1beta.Pivot(this);
685       buildPartialRepeatedFields(result);
686       if (bitField0_ != 0) {
687         buildPartial0(result);
688       }
689       onBuilt();
690       return result;
691     }
692 
buildPartialRepeatedFields(com.google.analytics.data.v1beta.Pivot result)693     private void buildPartialRepeatedFields(com.google.analytics.data.v1beta.Pivot result) {
694       if (((bitField0_ & 0x00000001) != 0)) {
695         fieldNames_ = fieldNames_.getUnmodifiableView();
696         bitField0_ = (bitField0_ & ~0x00000001);
697       }
698       result.fieldNames_ = fieldNames_;
699       if (orderBysBuilder_ == null) {
700         if (((bitField0_ & 0x00000002) != 0)) {
701           orderBys_ = java.util.Collections.unmodifiableList(orderBys_);
702           bitField0_ = (bitField0_ & ~0x00000002);
703         }
704         result.orderBys_ = orderBys_;
705       } else {
706         result.orderBys_ = orderBysBuilder_.build();
707       }
708       if (((bitField0_ & 0x00000010) != 0)) {
709         metricAggregations_ = java.util.Collections.unmodifiableList(metricAggregations_);
710         bitField0_ = (bitField0_ & ~0x00000010);
711       }
712       result.metricAggregations_ = metricAggregations_;
713     }
714 
buildPartial0(com.google.analytics.data.v1beta.Pivot result)715     private void buildPartial0(com.google.analytics.data.v1beta.Pivot result) {
716       int from_bitField0_ = bitField0_;
717       if (((from_bitField0_ & 0x00000004) != 0)) {
718         result.offset_ = offset_;
719       }
720       if (((from_bitField0_ & 0x00000008) != 0)) {
721         result.limit_ = limit_;
722       }
723     }
724 
725     @java.lang.Override
clone()726     public Builder clone() {
727       return super.clone();
728     }
729 
730     @java.lang.Override
setField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)731     public Builder setField(
732         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
733       return super.setField(field, value);
734     }
735 
736     @java.lang.Override
clearField(com.google.protobuf.Descriptors.FieldDescriptor field)737     public Builder clearField(com.google.protobuf.Descriptors.FieldDescriptor field) {
738       return super.clearField(field);
739     }
740 
741     @java.lang.Override
clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof)742     public Builder clearOneof(com.google.protobuf.Descriptors.OneofDescriptor oneof) {
743       return super.clearOneof(oneof);
744     }
745 
746     @java.lang.Override
setRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value)747     public Builder setRepeatedField(
748         com.google.protobuf.Descriptors.FieldDescriptor field, int index, java.lang.Object value) {
749       return super.setRepeatedField(field, index, value);
750     }
751 
752     @java.lang.Override
addRepeatedField( com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value)753     public Builder addRepeatedField(
754         com.google.protobuf.Descriptors.FieldDescriptor field, java.lang.Object value) {
755       return super.addRepeatedField(field, value);
756     }
757 
758     @java.lang.Override
mergeFrom(com.google.protobuf.Message other)759     public Builder mergeFrom(com.google.protobuf.Message other) {
760       if (other instanceof com.google.analytics.data.v1beta.Pivot) {
761         return mergeFrom((com.google.analytics.data.v1beta.Pivot) other);
762       } else {
763         super.mergeFrom(other);
764         return this;
765       }
766     }
767 
mergeFrom(com.google.analytics.data.v1beta.Pivot other)768     public Builder mergeFrom(com.google.analytics.data.v1beta.Pivot other) {
769       if (other == com.google.analytics.data.v1beta.Pivot.getDefaultInstance()) return this;
770       if (!other.fieldNames_.isEmpty()) {
771         if (fieldNames_.isEmpty()) {
772           fieldNames_ = other.fieldNames_;
773           bitField0_ = (bitField0_ & ~0x00000001);
774         } else {
775           ensureFieldNamesIsMutable();
776           fieldNames_.addAll(other.fieldNames_);
777         }
778         onChanged();
779       }
780       if (orderBysBuilder_ == null) {
781         if (!other.orderBys_.isEmpty()) {
782           if (orderBys_.isEmpty()) {
783             orderBys_ = other.orderBys_;
784             bitField0_ = (bitField0_ & ~0x00000002);
785           } else {
786             ensureOrderBysIsMutable();
787             orderBys_.addAll(other.orderBys_);
788           }
789           onChanged();
790         }
791       } else {
792         if (!other.orderBys_.isEmpty()) {
793           if (orderBysBuilder_.isEmpty()) {
794             orderBysBuilder_.dispose();
795             orderBysBuilder_ = null;
796             orderBys_ = other.orderBys_;
797             bitField0_ = (bitField0_ & ~0x00000002);
798             orderBysBuilder_ =
799                 com.google.protobuf.GeneratedMessageV3.alwaysUseFieldBuilders
800                     ? getOrderBysFieldBuilder()
801                     : null;
802           } else {
803             orderBysBuilder_.addAllMessages(other.orderBys_);
804           }
805         }
806       }
807       if (other.getOffset() != 0L) {
808         setOffset(other.getOffset());
809       }
810       if (other.getLimit() != 0L) {
811         setLimit(other.getLimit());
812       }
813       if (!other.metricAggregations_.isEmpty()) {
814         if (metricAggregations_.isEmpty()) {
815           metricAggregations_ = other.metricAggregations_;
816           bitField0_ = (bitField0_ & ~0x00000010);
817         } else {
818           ensureMetricAggregationsIsMutable();
819           metricAggregations_.addAll(other.metricAggregations_);
820         }
821         onChanged();
822       }
823       this.mergeUnknownFields(other.getUnknownFields());
824       onChanged();
825       return this;
826     }
827 
828     @java.lang.Override
isInitialized()829     public final boolean isInitialized() {
830       return true;
831     }
832 
833     @java.lang.Override
mergeFrom( com.google.protobuf.CodedInputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)834     public Builder mergeFrom(
835         com.google.protobuf.CodedInputStream input,
836         com.google.protobuf.ExtensionRegistryLite extensionRegistry)
837         throws java.io.IOException {
838       if (extensionRegistry == null) {
839         throw new java.lang.NullPointerException();
840       }
841       try {
842         boolean done = false;
843         while (!done) {
844           int tag = input.readTag();
845           switch (tag) {
846             case 0:
847               done = true;
848               break;
849             case 10:
850               {
851                 java.lang.String s = input.readStringRequireUtf8();
852                 ensureFieldNamesIsMutable();
853                 fieldNames_.add(s);
854                 break;
855               } // case 10
856             case 18:
857               {
858                 com.google.analytics.data.v1beta.OrderBy m =
859                     input.readMessage(
860                         com.google.analytics.data.v1beta.OrderBy.parser(), extensionRegistry);
861                 if (orderBysBuilder_ == null) {
862                   ensureOrderBysIsMutable();
863                   orderBys_.add(m);
864                 } else {
865                   orderBysBuilder_.addMessage(m);
866                 }
867                 break;
868               } // case 18
869             case 24:
870               {
871                 offset_ = input.readInt64();
872                 bitField0_ |= 0x00000004;
873                 break;
874               } // case 24
875             case 32:
876               {
877                 limit_ = input.readInt64();
878                 bitField0_ |= 0x00000008;
879                 break;
880               } // case 32
881             case 40:
882               {
883                 int tmpRaw = input.readEnum();
884                 ensureMetricAggregationsIsMutable();
885                 metricAggregations_.add(tmpRaw);
886                 break;
887               } // case 40
888             case 42:
889               {
890                 int length = input.readRawVarint32();
891                 int oldLimit = input.pushLimit(length);
892                 while (input.getBytesUntilLimit() > 0) {
893                   int tmpRaw = input.readEnum();
894                   ensureMetricAggregationsIsMutable();
895                   metricAggregations_.add(tmpRaw);
896                 }
897                 input.popLimit(oldLimit);
898                 break;
899               } // case 42
900             default:
901               {
902                 if (!super.parseUnknownField(input, extensionRegistry, tag)) {
903                   done = true; // was an endgroup tag
904                 }
905                 break;
906               } // default:
907           } // switch (tag)
908         } // while (!done)
909       } catch (com.google.protobuf.InvalidProtocolBufferException e) {
910         throw e.unwrapIOException();
911       } finally {
912         onChanged();
913       } // finally
914       return this;
915     }
916 
917     private int bitField0_;
918 
919     private com.google.protobuf.LazyStringList fieldNames_ =
920         com.google.protobuf.LazyStringArrayList.EMPTY;
921 
ensureFieldNamesIsMutable()922     private void ensureFieldNamesIsMutable() {
923       if (!((bitField0_ & 0x00000001) != 0)) {
924         fieldNames_ = new com.google.protobuf.LazyStringArrayList(fieldNames_);
925         bitField0_ |= 0x00000001;
926       }
927     }
928     /**
929      *
930      *
931      * <pre>
932      * Dimension names for visible columns in the report response. Including
933      * "dateRange" produces a date range column; for each row in the response,
934      * dimension values in the date range column will indicate the corresponding
935      * date range from the request.
936      * </pre>
937      *
938      * <code>repeated string field_names = 1;</code>
939      *
940      * @return A list containing the fieldNames.
941      */
getFieldNamesList()942     public com.google.protobuf.ProtocolStringList getFieldNamesList() {
943       return fieldNames_.getUnmodifiableView();
944     }
945     /**
946      *
947      *
948      * <pre>
949      * Dimension names for visible columns in the report response. Including
950      * "dateRange" produces a date range column; for each row in the response,
951      * dimension values in the date range column will indicate the corresponding
952      * date range from the request.
953      * </pre>
954      *
955      * <code>repeated string field_names = 1;</code>
956      *
957      * @return The count of fieldNames.
958      */
getFieldNamesCount()959     public int getFieldNamesCount() {
960       return fieldNames_.size();
961     }
962     /**
963      *
964      *
965      * <pre>
966      * Dimension names for visible columns in the report response. Including
967      * "dateRange" produces a date range column; for each row in the response,
968      * dimension values in the date range column will indicate the corresponding
969      * date range from the request.
970      * </pre>
971      *
972      * <code>repeated string field_names = 1;</code>
973      *
974      * @param index The index of the element to return.
975      * @return The fieldNames at the given index.
976      */
getFieldNames(int index)977     public java.lang.String getFieldNames(int index) {
978       return fieldNames_.get(index);
979     }
980     /**
981      *
982      *
983      * <pre>
984      * Dimension names for visible columns in the report response. Including
985      * "dateRange" produces a date range column; for each row in the response,
986      * dimension values in the date range column will indicate the corresponding
987      * date range from the request.
988      * </pre>
989      *
990      * <code>repeated string field_names = 1;</code>
991      *
992      * @param index The index of the value to return.
993      * @return The bytes of the fieldNames at the given index.
994      */
getFieldNamesBytes(int index)995     public com.google.protobuf.ByteString getFieldNamesBytes(int index) {
996       return fieldNames_.getByteString(index);
997     }
998     /**
999      *
1000      *
1001      * <pre>
1002      * Dimension names for visible columns in the report response. Including
1003      * "dateRange" produces a date range column; for each row in the response,
1004      * dimension values in the date range column will indicate the corresponding
1005      * date range from the request.
1006      * </pre>
1007      *
1008      * <code>repeated string field_names = 1;</code>
1009      *
1010      * @param index The index to set the value at.
1011      * @param value The fieldNames to set.
1012      * @return This builder for chaining.
1013      */
setFieldNames(int index, java.lang.String value)1014     public Builder setFieldNames(int index, java.lang.String value) {
1015       if (value == null) {
1016         throw new NullPointerException();
1017       }
1018       ensureFieldNamesIsMutable();
1019       fieldNames_.set(index, value);
1020       onChanged();
1021       return this;
1022     }
1023     /**
1024      *
1025      *
1026      * <pre>
1027      * Dimension names for visible columns in the report response. Including
1028      * "dateRange" produces a date range column; for each row in the response,
1029      * dimension values in the date range column will indicate the corresponding
1030      * date range from the request.
1031      * </pre>
1032      *
1033      * <code>repeated string field_names = 1;</code>
1034      *
1035      * @param value The fieldNames to add.
1036      * @return This builder for chaining.
1037      */
addFieldNames(java.lang.String value)1038     public Builder addFieldNames(java.lang.String value) {
1039       if (value == null) {
1040         throw new NullPointerException();
1041       }
1042       ensureFieldNamesIsMutable();
1043       fieldNames_.add(value);
1044       onChanged();
1045       return this;
1046     }
1047     /**
1048      *
1049      *
1050      * <pre>
1051      * Dimension names for visible columns in the report response. Including
1052      * "dateRange" produces a date range column; for each row in the response,
1053      * dimension values in the date range column will indicate the corresponding
1054      * date range from the request.
1055      * </pre>
1056      *
1057      * <code>repeated string field_names = 1;</code>
1058      *
1059      * @param values The fieldNames to add.
1060      * @return This builder for chaining.
1061      */
addAllFieldNames(java.lang.Iterable<java.lang.String> values)1062     public Builder addAllFieldNames(java.lang.Iterable<java.lang.String> values) {
1063       ensureFieldNamesIsMutable();
1064       com.google.protobuf.AbstractMessageLite.Builder.addAll(values, fieldNames_);
1065       onChanged();
1066       return this;
1067     }
1068     /**
1069      *
1070      *
1071      * <pre>
1072      * Dimension names for visible columns in the report response. Including
1073      * "dateRange" produces a date range column; for each row in the response,
1074      * dimension values in the date range column will indicate the corresponding
1075      * date range from the request.
1076      * </pre>
1077      *
1078      * <code>repeated string field_names = 1;</code>
1079      *
1080      * @return This builder for chaining.
1081      */
clearFieldNames()1082     public Builder clearFieldNames() {
1083       fieldNames_ = com.google.protobuf.LazyStringArrayList.EMPTY;
1084       bitField0_ = (bitField0_ & ~0x00000001);
1085       onChanged();
1086       return this;
1087     }
1088     /**
1089      *
1090      *
1091      * <pre>
1092      * Dimension names for visible columns in the report response. Including
1093      * "dateRange" produces a date range column; for each row in the response,
1094      * dimension values in the date range column will indicate the corresponding
1095      * date range from the request.
1096      * </pre>
1097      *
1098      * <code>repeated string field_names = 1;</code>
1099      *
1100      * @param value The bytes of the fieldNames to add.
1101      * @return This builder for chaining.
1102      */
addFieldNamesBytes(com.google.protobuf.ByteString value)1103     public Builder addFieldNamesBytes(com.google.protobuf.ByteString value) {
1104       if (value == null) {
1105         throw new NullPointerException();
1106       }
1107       checkByteStringIsUtf8(value);
1108       ensureFieldNamesIsMutable();
1109       fieldNames_.add(value);
1110       onChanged();
1111       return this;
1112     }
1113 
1114     private java.util.List<com.google.analytics.data.v1beta.OrderBy> orderBys_ =
1115         java.util.Collections.emptyList();
1116 
ensureOrderBysIsMutable()1117     private void ensureOrderBysIsMutable() {
1118       if (!((bitField0_ & 0x00000002) != 0)) {
1119         orderBys_ = new java.util.ArrayList<com.google.analytics.data.v1beta.OrderBy>(orderBys_);
1120         bitField0_ |= 0x00000002;
1121       }
1122     }
1123 
1124     private com.google.protobuf.RepeatedFieldBuilderV3<
1125             com.google.analytics.data.v1beta.OrderBy,
1126             com.google.analytics.data.v1beta.OrderBy.Builder,
1127             com.google.analytics.data.v1beta.OrderByOrBuilder>
1128         orderBysBuilder_;
1129 
1130     /**
1131      *
1132      *
1133      * <pre>
1134      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1135      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1136      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1137      * Dimensions specified in these OrderBys must be a subset of
1138      * Pivot.field_names.
1139      * </pre>
1140      *
1141      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1142      */
getOrderBysList()1143     public java.util.List<com.google.analytics.data.v1beta.OrderBy> getOrderBysList() {
1144       if (orderBysBuilder_ == null) {
1145         return java.util.Collections.unmodifiableList(orderBys_);
1146       } else {
1147         return orderBysBuilder_.getMessageList();
1148       }
1149     }
1150     /**
1151      *
1152      *
1153      * <pre>
1154      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1155      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1156      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1157      * Dimensions specified in these OrderBys must be a subset of
1158      * Pivot.field_names.
1159      * </pre>
1160      *
1161      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1162      */
getOrderBysCount()1163     public int getOrderBysCount() {
1164       if (orderBysBuilder_ == null) {
1165         return orderBys_.size();
1166       } else {
1167         return orderBysBuilder_.getCount();
1168       }
1169     }
1170     /**
1171      *
1172      *
1173      * <pre>
1174      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1175      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1176      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1177      * Dimensions specified in these OrderBys must be a subset of
1178      * Pivot.field_names.
1179      * </pre>
1180      *
1181      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1182      */
getOrderBys(int index)1183     public com.google.analytics.data.v1beta.OrderBy getOrderBys(int index) {
1184       if (orderBysBuilder_ == null) {
1185         return orderBys_.get(index);
1186       } else {
1187         return orderBysBuilder_.getMessage(index);
1188       }
1189     }
1190     /**
1191      *
1192      *
1193      * <pre>
1194      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1195      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1196      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1197      * Dimensions specified in these OrderBys must be a subset of
1198      * Pivot.field_names.
1199      * </pre>
1200      *
1201      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1202      */
setOrderBys(int index, com.google.analytics.data.v1beta.OrderBy value)1203     public Builder setOrderBys(int index, com.google.analytics.data.v1beta.OrderBy value) {
1204       if (orderBysBuilder_ == null) {
1205         if (value == null) {
1206           throw new NullPointerException();
1207         }
1208         ensureOrderBysIsMutable();
1209         orderBys_.set(index, value);
1210         onChanged();
1211       } else {
1212         orderBysBuilder_.setMessage(index, value);
1213       }
1214       return this;
1215     }
1216     /**
1217      *
1218      *
1219      * <pre>
1220      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1221      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1222      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1223      * Dimensions specified in these OrderBys must be a subset of
1224      * Pivot.field_names.
1225      * </pre>
1226      *
1227      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1228      */
setOrderBys( int index, com.google.analytics.data.v1beta.OrderBy.Builder builderForValue)1229     public Builder setOrderBys(
1230         int index, com.google.analytics.data.v1beta.OrderBy.Builder builderForValue) {
1231       if (orderBysBuilder_ == null) {
1232         ensureOrderBysIsMutable();
1233         orderBys_.set(index, builderForValue.build());
1234         onChanged();
1235       } else {
1236         orderBysBuilder_.setMessage(index, builderForValue.build());
1237       }
1238       return this;
1239     }
1240     /**
1241      *
1242      *
1243      * <pre>
1244      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1245      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1246      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1247      * Dimensions specified in these OrderBys must be a subset of
1248      * Pivot.field_names.
1249      * </pre>
1250      *
1251      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1252      */
addOrderBys(com.google.analytics.data.v1beta.OrderBy value)1253     public Builder addOrderBys(com.google.analytics.data.v1beta.OrderBy value) {
1254       if (orderBysBuilder_ == null) {
1255         if (value == null) {
1256           throw new NullPointerException();
1257         }
1258         ensureOrderBysIsMutable();
1259         orderBys_.add(value);
1260         onChanged();
1261       } else {
1262         orderBysBuilder_.addMessage(value);
1263       }
1264       return this;
1265     }
1266     /**
1267      *
1268      *
1269      * <pre>
1270      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1271      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1272      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1273      * Dimensions specified in these OrderBys must be a subset of
1274      * Pivot.field_names.
1275      * </pre>
1276      *
1277      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1278      */
addOrderBys(int index, com.google.analytics.data.v1beta.OrderBy value)1279     public Builder addOrderBys(int index, com.google.analytics.data.v1beta.OrderBy value) {
1280       if (orderBysBuilder_ == null) {
1281         if (value == null) {
1282           throw new NullPointerException();
1283         }
1284         ensureOrderBysIsMutable();
1285         orderBys_.add(index, value);
1286         onChanged();
1287       } else {
1288         orderBysBuilder_.addMessage(index, value);
1289       }
1290       return this;
1291     }
1292     /**
1293      *
1294      *
1295      * <pre>
1296      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1297      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1298      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1299      * Dimensions specified in these OrderBys must be a subset of
1300      * Pivot.field_names.
1301      * </pre>
1302      *
1303      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1304      */
addOrderBys(com.google.analytics.data.v1beta.OrderBy.Builder builderForValue)1305     public Builder addOrderBys(com.google.analytics.data.v1beta.OrderBy.Builder builderForValue) {
1306       if (orderBysBuilder_ == null) {
1307         ensureOrderBysIsMutable();
1308         orderBys_.add(builderForValue.build());
1309         onChanged();
1310       } else {
1311         orderBysBuilder_.addMessage(builderForValue.build());
1312       }
1313       return this;
1314     }
1315     /**
1316      *
1317      *
1318      * <pre>
1319      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1320      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1321      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1322      * Dimensions specified in these OrderBys must be a subset of
1323      * Pivot.field_names.
1324      * </pre>
1325      *
1326      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1327      */
addOrderBys( int index, com.google.analytics.data.v1beta.OrderBy.Builder builderForValue)1328     public Builder addOrderBys(
1329         int index, com.google.analytics.data.v1beta.OrderBy.Builder builderForValue) {
1330       if (orderBysBuilder_ == null) {
1331         ensureOrderBysIsMutable();
1332         orderBys_.add(index, builderForValue.build());
1333         onChanged();
1334       } else {
1335         orderBysBuilder_.addMessage(index, builderForValue.build());
1336       }
1337       return this;
1338     }
1339     /**
1340      *
1341      *
1342      * <pre>
1343      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1344      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1345      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1346      * Dimensions specified in these OrderBys must be a subset of
1347      * Pivot.field_names.
1348      * </pre>
1349      *
1350      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1351      */
addAllOrderBys( java.lang.Iterable<? extends com.google.analytics.data.v1beta.OrderBy> values)1352     public Builder addAllOrderBys(
1353         java.lang.Iterable<? extends com.google.analytics.data.v1beta.OrderBy> values) {
1354       if (orderBysBuilder_ == null) {
1355         ensureOrderBysIsMutable();
1356         com.google.protobuf.AbstractMessageLite.Builder.addAll(values, orderBys_);
1357         onChanged();
1358       } else {
1359         orderBysBuilder_.addAllMessages(values);
1360       }
1361       return this;
1362     }
1363     /**
1364      *
1365      *
1366      * <pre>
1367      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1368      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1369      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1370      * Dimensions specified in these OrderBys must be a subset of
1371      * Pivot.field_names.
1372      * </pre>
1373      *
1374      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1375      */
clearOrderBys()1376     public Builder clearOrderBys() {
1377       if (orderBysBuilder_ == null) {
1378         orderBys_ = java.util.Collections.emptyList();
1379         bitField0_ = (bitField0_ & ~0x00000002);
1380         onChanged();
1381       } else {
1382         orderBysBuilder_.clear();
1383       }
1384       return this;
1385     }
1386     /**
1387      *
1388      *
1389      * <pre>
1390      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1391      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1392      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1393      * Dimensions specified in these OrderBys must be a subset of
1394      * Pivot.field_names.
1395      * </pre>
1396      *
1397      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1398      */
removeOrderBys(int index)1399     public Builder removeOrderBys(int index) {
1400       if (orderBysBuilder_ == null) {
1401         ensureOrderBysIsMutable();
1402         orderBys_.remove(index);
1403         onChanged();
1404       } else {
1405         orderBysBuilder_.remove(index);
1406       }
1407       return this;
1408     }
1409     /**
1410      *
1411      *
1412      * <pre>
1413      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1414      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1415      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1416      * Dimensions specified in these OrderBys must be a subset of
1417      * Pivot.field_names.
1418      * </pre>
1419      *
1420      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1421      */
getOrderBysBuilder(int index)1422     public com.google.analytics.data.v1beta.OrderBy.Builder getOrderBysBuilder(int index) {
1423       return getOrderBysFieldBuilder().getBuilder(index);
1424     }
1425     /**
1426      *
1427      *
1428      * <pre>
1429      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1430      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1431      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1432      * Dimensions specified in these OrderBys must be a subset of
1433      * Pivot.field_names.
1434      * </pre>
1435      *
1436      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1437      */
getOrderBysOrBuilder(int index)1438     public com.google.analytics.data.v1beta.OrderByOrBuilder getOrderBysOrBuilder(int index) {
1439       if (orderBysBuilder_ == null) {
1440         return orderBys_.get(index);
1441       } else {
1442         return orderBysBuilder_.getMessageOrBuilder(index);
1443       }
1444     }
1445     /**
1446      *
1447      *
1448      * <pre>
1449      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1450      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1451      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1452      * Dimensions specified in these OrderBys must be a subset of
1453      * Pivot.field_names.
1454      * </pre>
1455      *
1456      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1457      */
1458     public java.util.List<? extends com.google.analytics.data.v1beta.OrderByOrBuilder>
getOrderBysOrBuilderList()1459         getOrderBysOrBuilderList() {
1460       if (orderBysBuilder_ != null) {
1461         return orderBysBuilder_.getMessageOrBuilderList();
1462       } else {
1463         return java.util.Collections.unmodifiableList(orderBys_);
1464       }
1465     }
1466     /**
1467      *
1468      *
1469      * <pre>
1470      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1471      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1472      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1473      * Dimensions specified in these OrderBys must be a subset of
1474      * Pivot.field_names.
1475      * </pre>
1476      *
1477      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1478      */
addOrderBysBuilder()1479     public com.google.analytics.data.v1beta.OrderBy.Builder addOrderBysBuilder() {
1480       return getOrderBysFieldBuilder()
1481           .addBuilder(com.google.analytics.data.v1beta.OrderBy.getDefaultInstance());
1482     }
1483     /**
1484      *
1485      *
1486      * <pre>
1487      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1488      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1489      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1490      * Dimensions specified in these OrderBys must be a subset of
1491      * Pivot.field_names.
1492      * </pre>
1493      *
1494      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1495      */
addOrderBysBuilder(int index)1496     public com.google.analytics.data.v1beta.OrderBy.Builder addOrderBysBuilder(int index) {
1497       return getOrderBysFieldBuilder()
1498           .addBuilder(index, com.google.analytics.data.v1beta.OrderBy.getDefaultInstance());
1499     }
1500     /**
1501      *
1502      *
1503      * <pre>
1504      * Specifies how dimensions are ordered in the pivot. In the first Pivot, the
1505      * OrderBys determine Row and PivotDimensionHeader ordering; in subsequent
1506      * Pivots, the OrderBys determine only PivotDimensionHeader ordering.
1507      * Dimensions specified in these OrderBys must be a subset of
1508      * Pivot.field_names.
1509      * </pre>
1510      *
1511      * <code>repeated .google.analytics.data.v1beta.OrderBy order_bys = 2;</code>
1512      */
1513     public java.util.List<com.google.analytics.data.v1beta.OrderBy.Builder>
getOrderBysBuilderList()1514         getOrderBysBuilderList() {
1515       return getOrderBysFieldBuilder().getBuilderList();
1516     }
1517 
1518     private com.google.protobuf.RepeatedFieldBuilderV3<
1519             com.google.analytics.data.v1beta.OrderBy,
1520             com.google.analytics.data.v1beta.OrderBy.Builder,
1521             com.google.analytics.data.v1beta.OrderByOrBuilder>
getOrderBysFieldBuilder()1522         getOrderBysFieldBuilder() {
1523       if (orderBysBuilder_ == null) {
1524         orderBysBuilder_ =
1525             new com.google.protobuf.RepeatedFieldBuilderV3<
1526                 com.google.analytics.data.v1beta.OrderBy,
1527                 com.google.analytics.data.v1beta.OrderBy.Builder,
1528                 com.google.analytics.data.v1beta.OrderByOrBuilder>(
1529                 orderBys_, ((bitField0_ & 0x00000002) != 0), getParentForChildren(), isClean());
1530         orderBys_ = null;
1531       }
1532       return orderBysBuilder_;
1533     }
1534 
1535     private long offset_;
1536     /**
1537      *
1538      *
1539      * <pre>
1540      * The row count of the start row. The first row is counted as row 0.
1541      * </pre>
1542      *
1543      * <code>int64 offset = 3;</code>
1544      *
1545      * @return The offset.
1546      */
1547     @java.lang.Override
getOffset()1548     public long getOffset() {
1549       return offset_;
1550     }
1551     /**
1552      *
1553      *
1554      * <pre>
1555      * The row count of the start row. The first row is counted as row 0.
1556      * </pre>
1557      *
1558      * <code>int64 offset = 3;</code>
1559      *
1560      * @param value The offset to set.
1561      * @return This builder for chaining.
1562      */
setOffset(long value)1563     public Builder setOffset(long value) {
1564 
1565       offset_ = value;
1566       bitField0_ |= 0x00000004;
1567       onChanged();
1568       return this;
1569     }
1570     /**
1571      *
1572      *
1573      * <pre>
1574      * The row count of the start row. The first row is counted as row 0.
1575      * </pre>
1576      *
1577      * <code>int64 offset = 3;</code>
1578      *
1579      * @return This builder for chaining.
1580      */
clearOffset()1581     public Builder clearOffset() {
1582       bitField0_ = (bitField0_ & ~0x00000004);
1583       offset_ = 0L;
1584       onChanged();
1585       return this;
1586     }
1587 
1588     private long limit_;
1589     /**
1590      *
1591      *
1592      * <pre>
1593      * The number of unique combinations of dimension values to return in this
1594      * pivot. The `limit` parameter is required. A `limit` of 10,000 is common for
1595      * single pivot requests.
1596      * The product of the `limit` for each `pivot` in a `RunPivotReportRequest`
1597      * must not exceed 100,000. For example, a two pivot request with `limit:
1598      * 1000` in each pivot will fail because the product is `1,000,000`.
1599      * </pre>
1600      *
1601      * <code>int64 limit = 4;</code>
1602      *
1603      * @return The limit.
1604      */
1605     @java.lang.Override
getLimit()1606     public long getLimit() {
1607       return limit_;
1608     }
1609     /**
1610      *
1611      *
1612      * <pre>
1613      * The number of unique combinations of dimension values to return in this
1614      * pivot. The `limit` parameter is required. A `limit` of 10,000 is common for
1615      * single pivot requests.
1616      * The product of the `limit` for each `pivot` in a `RunPivotReportRequest`
1617      * must not exceed 100,000. For example, a two pivot request with `limit:
1618      * 1000` in each pivot will fail because the product is `1,000,000`.
1619      * </pre>
1620      *
1621      * <code>int64 limit = 4;</code>
1622      *
1623      * @param value The limit to set.
1624      * @return This builder for chaining.
1625      */
setLimit(long value)1626     public Builder setLimit(long value) {
1627 
1628       limit_ = value;
1629       bitField0_ |= 0x00000008;
1630       onChanged();
1631       return this;
1632     }
1633     /**
1634      *
1635      *
1636      * <pre>
1637      * The number of unique combinations of dimension values to return in this
1638      * pivot. The `limit` parameter is required. A `limit` of 10,000 is common for
1639      * single pivot requests.
1640      * The product of the `limit` for each `pivot` in a `RunPivotReportRequest`
1641      * must not exceed 100,000. For example, a two pivot request with `limit:
1642      * 1000` in each pivot will fail because the product is `1,000,000`.
1643      * </pre>
1644      *
1645      * <code>int64 limit = 4;</code>
1646      *
1647      * @return This builder for chaining.
1648      */
clearLimit()1649     public Builder clearLimit() {
1650       bitField0_ = (bitField0_ & ~0x00000008);
1651       limit_ = 0L;
1652       onChanged();
1653       return this;
1654     }
1655 
1656     private java.util.List<java.lang.Integer> metricAggregations_ =
1657         java.util.Collections.emptyList();
1658 
ensureMetricAggregationsIsMutable()1659     private void ensureMetricAggregationsIsMutable() {
1660       if (!((bitField0_ & 0x00000010) != 0)) {
1661         metricAggregations_ = new java.util.ArrayList<java.lang.Integer>(metricAggregations_);
1662         bitField0_ |= 0x00000010;
1663       }
1664     }
1665     /**
1666      *
1667      *
1668      * <pre>
1669      * Aggregate the metrics by dimensions in this pivot using the specified
1670      * metric_aggregations.
1671      * </pre>
1672      *
1673      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1674      * </code>
1675      *
1676      * @return A list containing the metricAggregations.
1677      */
1678     public java.util.List<com.google.analytics.data.v1beta.MetricAggregation>
getMetricAggregationsList()1679         getMetricAggregationsList() {
1680       return new com.google.protobuf.Internal.ListAdapter<
1681           java.lang.Integer, com.google.analytics.data.v1beta.MetricAggregation>(
1682           metricAggregations_, metricAggregations_converter_);
1683     }
1684     /**
1685      *
1686      *
1687      * <pre>
1688      * Aggregate the metrics by dimensions in this pivot using the specified
1689      * metric_aggregations.
1690      * </pre>
1691      *
1692      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1693      * </code>
1694      *
1695      * @return The count of metricAggregations.
1696      */
getMetricAggregationsCount()1697     public int getMetricAggregationsCount() {
1698       return metricAggregations_.size();
1699     }
1700     /**
1701      *
1702      *
1703      * <pre>
1704      * Aggregate the metrics by dimensions in this pivot using the specified
1705      * metric_aggregations.
1706      * </pre>
1707      *
1708      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1709      * </code>
1710      *
1711      * @param index The index of the element to return.
1712      * @return The metricAggregations at the given index.
1713      */
getMetricAggregations(int index)1714     public com.google.analytics.data.v1beta.MetricAggregation getMetricAggregations(int index) {
1715       return metricAggregations_converter_.convert(metricAggregations_.get(index));
1716     }
1717     /**
1718      *
1719      *
1720      * <pre>
1721      * Aggregate the metrics by dimensions in this pivot using the specified
1722      * metric_aggregations.
1723      * </pre>
1724      *
1725      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1726      * </code>
1727      *
1728      * @param index The index to set the value at.
1729      * @param value The metricAggregations to set.
1730      * @return This builder for chaining.
1731      */
setMetricAggregations( int index, com.google.analytics.data.v1beta.MetricAggregation value)1732     public Builder setMetricAggregations(
1733         int index, com.google.analytics.data.v1beta.MetricAggregation value) {
1734       if (value == null) {
1735         throw new NullPointerException();
1736       }
1737       ensureMetricAggregationsIsMutable();
1738       metricAggregations_.set(index, value.getNumber());
1739       onChanged();
1740       return this;
1741     }
1742     /**
1743      *
1744      *
1745      * <pre>
1746      * Aggregate the metrics by dimensions in this pivot using the specified
1747      * metric_aggregations.
1748      * </pre>
1749      *
1750      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1751      * </code>
1752      *
1753      * @param value The metricAggregations to add.
1754      * @return This builder for chaining.
1755      */
addMetricAggregations(com.google.analytics.data.v1beta.MetricAggregation value)1756     public Builder addMetricAggregations(com.google.analytics.data.v1beta.MetricAggregation value) {
1757       if (value == null) {
1758         throw new NullPointerException();
1759       }
1760       ensureMetricAggregationsIsMutable();
1761       metricAggregations_.add(value.getNumber());
1762       onChanged();
1763       return this;
1764     }
1765     /**
1766      *
1767      *
1768      * <pre>
1769      * Aggregate the metrics by dimensions in this pivot using the specified
1770      * metric_aggregations.
1771      * </pre>
1772      *
1773      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1774      * </code>
1775      *
1776      * @param values The metricAggregations to add.
1777      * @return This builder for chaining.
1778      */
addAllMetricAggregations( java.lang.Iterable<? extends com.google.analytics.data.v1beta.MetricAggregation> values)1779     public Builder addAllMetricAggregations(
1780         java.lang.Iterable<? extends com.google.analytics.data.v1beta.MetricAggregation> values) {
1781       ensureMetricAggregationsIsMutable();
1782       for (com.google.analytics.data.v1beta.MetricAggregation value : values) {
1783         metricAggregations_.add(value.getNumber());
1784       }
1785       onChanged();
1786       return this;
1787     }
1788     /**
1789      *
1790      *
1791      * <pre>
1792      * Aggregate the metrics by dimensions in this pivot using the specified
1793      * metric_aggregations.
1794      * </pre>
1795      *
1796      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1797      * </code>
1798      *
1799      * @return This builder for chaining.
1800      */
clearMetricAggregations()1801     public Builder clearMetricAggregations() {
1802       metricAggregations_ = java.util.Collections.emptyList();
1803       bitField0_ = (bitField0_ & ~0x00000010);
1804       onChanged();
1805       return this;
1806     }
1807     /**
1808      *
1809      *
1810      * <pre>
1811      * Aggregate the metrics by dimensions in this pivot using the specified
1812      * metric_aggregations.
1813      * </pre>
1814      *
1815      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1816      * </code>
1817      *
1818      * @return A list containing the enum numeric values on the wire for metricAggregations.
1819      */
getMetricAggregationsValueList()1820     public java.util.List<java.lang.Integer> getMetricAggregationsValueList() {
1821       return java.util.Collections.unmodifiableList(metricAggregations_);
1822     }
1823     /**
1824      *
1825      *
1826      * <pre>
1827      * Aggregate the metrics by dimensions in this pivot using the specified
1828      * metric_aggregations.
1829      * </pre>
1830      *
1831      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1832      * </code>
1833      *
1834      * @param index The index of the value to return.
1835      * @return The enum numeric value on the wire of metricAggregations at the given index.
1836      */
getMetricAggregationsValue(int index)1837     public int getMetricAggregationsValue(int index) {
1838       return metricAggregations_.get(index);
1839     }
1840     /**
1841      *
1842      *
1843      * <pre>
1844      * Aggregate the metrics by dimensions in this pivot using the specified
1845      * metric_aggregations.
1846      * </pre>
1847      *
1848      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1849      * </code>
1850      *
1851      * @param index The index to set the value at.
1852      * @param value The enum numeric value on the wire for metricAggregations to set.
1853      * @return This builder for chaining.
1854      */
setMetricAggregationsValue(int index, int value)1855     public Builder setMetricAggregationsValue(int index, int value) {
1856       ensureMetricAggregationsIsMutable();
1857       metricAggregations_.set(index, value);
1858       onChanged();
1859       return this;
1860     }
1861     /**
1862      *
1863      *
1864      * <pre>
1865      * Aggregate the metrics by dimensions in this pivot using the specified
1866      * metric_aggregations.
1867      * </pre>
1868      *
1869      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1870      * </code>
1871      *
1872      * @param value The enum numeric value on the wire for metricAggregations to add.
1873      * @return This builder for chaining.
1874      */
addMetricAggregationsValue(int value)1875     public Builder addMetricAggregationsValue(int value) {
1876       ensureMetricAggregationsIsMutable();
1877       metricAggregations_.add(value);
1878       onChanged();
1879       return this;
1880     }
1881     /**
1882      *
1883      *
1884      * <pre>
1885      * Aggregate the metrics by dimensions in this pivot using the specified
1886      * metric_aggregations.
1887      * </pre>
1888      *
1889      * <code>repeated .google.analytics.data.v1beta.MetricAggregation metric_aggregations = 5;
1890      * </code>
1891      *
1892      * @param values The enum numeric values on the wire for metricAggregations to add.
1893      * @return This builder for chaining.
1894      */
addAllMetricAggregationsValue(java.lang.Iterable<java.lang.Integer> values)1895     public Builder addAllMetricAggregationsValue(java.lang.Iterable<java.lang.Integer> values) {
1896       ensureMetricAggregationsIsMutable();
1897       for (int value : values) {
1898         metricAggregations_.add(value);
1899       }
1900       onChanged();
1901       return this;
1902     }
1903 
1904     @java.lang.Override
setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields)1905     public final Builder setUnknownFields(final com.google.protobuf.UnknownFieldSet unknownFields) {
1906       return super.setUnknownFields(unknownFields);
1907     }
1908 
1909     @java.lang.Override
mergeUnknownFields( final com.google.protobuf.UnknownFieldSet unknownFields)1910     public final Builder mergeUnknownFields(
1911         final com.google.protobuf.UnknownFieldSet unknownFields) {
1912       return super.mergeUnknownFields(unknownFields);
1913     }
1914 
1915     // @@protoc_insertion_point(builder_scope:google.analytics.data.v1beta.Pivot)
1916   }
1917 
1918   // @@protoc_insertion_point(class_scope:google.analytics.data.v1beta.Pivot)
1919   private static final com.google.analytics.data.v1beta.Pivot DEFAULT_INSTANCE;
1920 
1921   static {
1922     DEFAULT_INSTANCE = new com.google.analytics.data.v1beta.Pivot();
1923   }
1924 
getDefaultInstance()1925   public static com.google.analytics.data.v1beta.Pivot getDefaultInstance() {
1926     return DEFAULT_INSTANCE;
1927   }
1928 
1929   private static final com.google.protobuf.Parser<Pivot> PARSER =
1930       new com.google.protobuf.AbstractParser<Pivot>() {
1931         @java.lang.Override
1932         public Pivot parsePartialFrom(
1933             com.google.protobuf.CodedInputStream input,
1934             com.google.protobuf.ExtensionRegistryLite extensionRegistry)
1935             throws com.google.protobuf.InvalidProtocolBufferException {
1936           Builder builder = newBuilder();
1937           try {
1938             builder.mergeFrom(input, extensionRegistry);
1939           } catch (com.google.protobuf.InvalidProtocolBufferException e) {
1940             throw e.setUnfinishedMessage(builder.buildPartial());
1941           } catch (com.google.protobuf.UninitializedMessageException e) {
1942             throw e.asInvalidProtocolBufferException().setUnfinishedMessage(builder.buildPartial());
1943           } catch (java.io.IOException e) {
1944             throw new com.google.protobuf.InvalidProtocolBufferException(e)
1945                 .setUnfinishedMessage(builder.buildPartial());
1946           }
1947           return builder.buildPartial();
1948         }
1949       };
1950 
parser()1951   public static com.google.protobuf.Parser<Pivot> parser() {
1952     return PARSER;
1953   }
1954 
1955   @java.lang.Override
getParserForType()1956   public com.google.protobuf.Parser<Pivot> getParserForType() {
1957     return PARSER;
1958   }
1959 
1960   @java.lang.Override
getDefaultInstanceForType()1961   public com.google.analytics.data.v1beta.Pivot getDefaultInstanceForType() {
1962     return DEFAULT_INSTANCE;
1963   }
1964 }
1965