diff --git a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/Binding.java b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/Binding.java index 45444e594589..e210c6d808a8 100644 --- a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/Binding.java +++ b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/Binding.java @@ -3179,11 +3179,11 @@ public com.google.protobuf.ByteString getDescriptionBytes() { * * *
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*
* @return Whether the source field is set.
@@ -3197,11 +3197,11 @@ public boolean hasSource() {
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*
* @return The source.
@@ -3217,11 +3217,11 @@ public com.google.cloud.agentregistry.v1.Binding.Source getSource() {
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
@java.lang.Override
@@ -4569,11 +4569,11 @@ public Builder setDescriptionBytes(com.google.protobuf.ByteString value) {
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*
* @return Whether the source field is set.
@@ -4586,11 +4586,11 @@ public boolean hasSource() {
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*
* @return The source.
@@ -4609,11 +4609,11 @@ public com.google.cloud.agentregistry.v1.Binding.Source getSource() {
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
public Builder setSource(com.google.cloud.agentregistry.v1.Binding.Source value) {
@@ -4634,11 +4634,11 @@ public Builder setSource(com.google.cloud.agentregistry.v1.Binding.Source value)
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
public Builder setSource(
@@ -4657,11 +4657,11 @@ public Builder setSource(
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
public Builder mergeSource(com.google.cloud.agentregistry.v1.Binding.Source value) {
@@ -4687,11 +4687,11 @@ public Builder mergeSource(com.google.cloud.agentregistry.v1.Binding.Source valu
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
public Builder clearSource() {
@@ -4709,11 +4709,11 @@ public Builder clearSource() {
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
public com.google.cloud.agentregistry.v1.Binding.Source.Builder getSourceBuilder() {
@@ -4726,11 +4726,11 @@ public com.google.cloud.agentregistry.v1.Binding.Source.Builder getSourceBuilder
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
public com.google.cloud.agentregistry.v1.Binding.SourceOrBuilder getSourceOrBuilder() {
@@ -4747,11 +4747,11 @@ public com.google.cloud.agentregistry.v1.Binding.SourceOrBuilder getSourceOrBuil
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
private com.google.protobuf.SingleFieldBuilder<
diff --git a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/BindingOrBuilder.java b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/BindingOrBuilder.java
index f70379dd797a..687e392e972a 100644
--- a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/BindingOrBuilder.java
+++ b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/BindingOrBuilder.java
@@ -159,11 +159,11 @@ public interface BindingOrBuilder
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*
* @return Whether the source field is set.
@@ -174,11 +174,11 @@ public interface BindingOrBuilder
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*
* @return The source.
@@ -189,11 +189,11 @@ public interface BindingOrBuilder
*
*
*
- * Required. The target Agent of the Binding.
+ * Optional. The source Agent of the Binding.
*
*
*
- * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = REQUIRED];
+ * .google.cloud.agentregistry.v1.Binding.Source source = 4 [(.google.api.field_behavior) = OPTIONAL];
*
*/
com.google.cloud.agentregistry.v1.Binding.SourceOrBuilder getSourceOrBuilder();
diff --git a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/BindingProto.java b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/BindingProto.java
index 315780f52670..43d76a78c5b6 100644
--- a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/BindingProto.java
+++ b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/java/com/google/cloud/agentregistry/v1/BindingProto.java
@@ -77,7 +77,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\014display_name\030\002 \001(\tB\003\340A\001\022\030\n"
+ "\013description\030\003 \001(\tB\003\340A\001\022B\n"
+ "\006source\030\004"
- + " \001(\0132-.google.cloud.agentregistry.v1.Binding.SourceB\003\340A\002\022B\n"
+ + " \001(\0132-.google.cloud.agentregistry.v1.Binding.SourceB\003\340A\001\022B\n"
+ "\006target\030\005 \001(\0132-.goog"
+ "le.cloud.agentregistry.v1.Binding.TargetB\003\340A\002\0224\n"
+ "\013create_time\030\007 \001(\0132\032.google.protobuf.TimestampB\003\340A\003\0224\n"
diff --git a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/proto/google/cloud/agentregistry/v1/agentregistry_service.proto b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/proto/google/cloud/agentregistry/v1/agentregistry_service.proto
index 682a95bf32a1..e78849890b7d 100644
--- a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/proto/google/cloud/agentregistry/v1/agentregistry_service.proto
+++ b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/proto/google/cloud/agentregistry/v1/agentregistry_service.proto
@@ -635,7 +635,7 @@ message CreateServiceRequest {
// Message for fetching available Bindings.
message FetchAvailableBindingsRequest {
- // The reference of the source Agent.
+ // Required. The reference of the source Agent Registry resource.
oneof source {
// The identifier of the source Agent.
// Format:
diff --git a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/proto/google/cloud/agentregistry/v1/binding.proto b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/proto/google/cloud/agentregistry/v1/binding.proto
index 6a9ce81c3313..4fc1427d9ad4 100644
--- a/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/proto/google/cloud/agentregistry/v1/binding.proto
+++ b/java-agentregistry/proto-google-cloud-agentregistry-v1/src/main/proto/google/cloud/agentregistry/v1/binding.proto
@@ -104,8 +104,8 @@ message Binding {
// Can have a maximum length of `2048` characters.
string description = 3 [(google.api.field_behavior) = OPTIONAL];
- // Required. The target Agent of the Binding.
- Source source = 4 [(google.api.field_behavior) = REQUIRED];
+ // Optional. The source Agent of the Binding.
+ Source source = 4 [(google.api.field_behavior) = OPTIONAL];
// Required. The target Agent Registry Resource of the Binding.
Target target = 5 [(google.api.field_behavior) = REQUIRED];
diff --git a/java-analytics-data/google-analytics-data/src/main/java/com/google/analytics/data/v1alpha/AlphaAnalyticsDataClient.java b/java-analytics-data/google-analytics-data/src/main/java/com/google/analytics/data/v1alpha/AlphaAnalyticsDataClient.java
index 37eea0c0fe3a..89d6f27df011 100644
--- a/java-analytics-data/google-analytics-data/src/main/java/com/google/analytics/data/v1alpha/AlphaAnalyticsDataClient.java
+++ b/java-analytics-data/google-analytics-data/src/main/java/com/google/analytics/data/v1alpha/AlphaAnalyticsDataClient.java
@@ -345,6 +345,21 @@
*
*
* Chat
Provides a chat interface for interacting with Google Analytics data through the API. + *
This product uses AI and may display inaccurate info. Your chat activity may be used to improve the product and your use is subject to Google's [Terms](https://policies.google.com/terms), [AI Use Policy](https://policies.google.com/terms/generative-ai/use-policy), and [Privacy Policy](https://policies.google.com/privacy). [Learn more about Chat AI Privacy](https://support.google.com/helpguide/answer/14185196).
Request object method variants only take one parameter, a request object, which must be constructed before the call.
+ *chat(ChatRequest request) + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.
+ *chatCallable() + *
RunReport
Returns a customized report of your Google Analytics event data. Reports contain statistics derived from data collected by the Google Analytics tracking code. The data returned from the API is as a table with columns for the requested dimensions and metrics. Metrics are individual measurements of user activity on your property, such as active users or event count. Dimensions break down metrics across some common criteria, such as country or event name.
This product uses AI and may display inaccurate info. Your chat activity may be used to + * improve the product and your use is subject to Google's + * [Terms](https://policies.google.com/terms), [AI Use + * Policy](https://policies.google.com/terms/generative-ai/use-policy), and [Privacy + * Policy](https://policies.google.com/privacy). [Learn more about Chat AI + * Privacy](https://support.google.com/helpguide/answer/14185196). + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (AlphaAnalyticsDataClient alphaAnalyticsDataClient = AlphaAnalyticsDataClient.create()) {
+ * ChatRequest request =
+ * ChatRequest.newBuilder()
+ * .setProperty(PropertyName.of("[PROPERTY]").toString())
+ * .setUserQuery("userQuery326624189")
+ * .setSessionId("sessionId607796817")
+ * .setReturnPropertyQuota(true)
+ * .build();
+ * ChatResponse response = alphaAnalyticsDataClient.chat(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ChatResponse chat(ChatRequest request) {
+ return chatCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Provides a chat interface for interacting with Google Analytics data through the API.
+ *
+ * This product uses AI and may display inaccurate info. Your chat activity may be used to + * improve the product and your use is subject to Google's + * [Terms](https://policies.google.com/terms), [AI Use + * Policy](https://policies.google.com/terms/generative-ai/use-policy), and [Privacy + * Policy](https://policies.google.com/privacy). [Learn more about Chat AI + * Privacy](https://support.google.com/helpguide/answer/14185196). + * + *
Sample code: + * + *
{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (AlphaAnalyticsDataClient alphaAnalyticsDataClient = AlphaAnalyticsDataClient.create()) {
+ * ChatRequest request =
+ * ChatRequest.newBuilder()
+ * .setProperty(PropertyName.of("[PROPERTY]").toString())
+ * .setUserQuery("userQuery326624189")
+ * .setSessionId("sessionId607796817")
+ * .setReturnPropertyQuota(true)
+ * .build();
+ * ApiFuture future = alphaAnalyticsDataClient.chatCallable().futureCall(request);
+ * // Do something.
+ * ChatResponse response = future.get();
+ * }
+ * }
+ */
+ public final UnaryCallable+ * Provides a chat interface for interacting with Google Analytics data + * through the API. + * This product uses AI and may display inaccurate info. Your chat activity + * may be used to improve the product and your use is subject to Google's + * [Terms](https://policies.google.com/terms), + * [AI Use + * Policy](https://policies.google.com/terms/generative-ai/use-policy), and + * [Privacy Policy](https://policies.google.com/privacy). + * [Learn more about Chat AI + * Privacy](https://support.google.com/helpguide/answer/14185196). + *+ */ + default void chat( + com.google.analytics.data.v1alpha.ChatRequest request, + io.grpc.stub.StreamObserver
+ * Provides a chat interface for interacting with Google Analytics data + * through the API. + * This product uses AI and may display inaccurate info. Your chat activity + * may be used to improve the product and your use is subject to Google's + * [Terms](https://policies.google.com/terms), + * [AI Use + * Policy](https://policies.google.com/terms/generative-ai/use-policy), and + * [Privacy Policy](https://policies.google.com/privacy). + * [Learn more about Chat AI + * Privacy](https://support.google.com/helpguide/answer/14185196). + *+ */ + public void chat( + com.google.analytics.data.v1alpha.ChatRequest request, + io.grpc.stub.StreamObserver
+ * Provides a chat interface for interacting with Google Analytics data + * through the API. + * This product uses AI and may display inaccurate info. Your chat activity + * may be used to improve the product and your use is subject to Google's + * [Terms](https://policies.google.com/terms), + * [AI Use + * Policy](https://policies.google.com/terms/generative-ai/use-policy), and + * [Privacy Policy](https://policies.google.com/privacy). + * [Learn more about Chat AI + * Privacy](https://support.google.com/helpguide/answer/14185196). + *+ */ + public com.google.analytics.data.v1alpha.ChatResponse chat( + com.google.analytics.data.v1alpha.ChatRequest request) throws io.grpc.StatusException { + return io.grpc.stub.ClientCalls.blockingV2UnaryCall( + getChannel(), getChatMethod(), getCallOptions(), request); + } + /** * * @@ -2254,6 +2367,28 @@ public com.google.analytics.data.v1alpha.ListReportTasksResponse listReportTasks getChannel(), getListReportTasksMethod(), getCallOptions(), request); } + /** + * + * + *
+ * Provides a chat interface for interacting with Google Analytics data + * through the API. + * This product uses AI and may display inaccurate info. Your chat activity + * may be used to improve the product and your use is subject to Google's + * [Terms](https://policies.google.com/terms), + * [AI Use + * Policy](https://policies.google.com/terms/generative-ai/use-policy), and + * [Privacy Policy](https://policies.google.com/privacy). + * [Learn more about Chat AI + * Privacy](https://support.google.com/helpguide/answer/14185196). + *+ */ + public com.google.analytics.data.v1alpha.ChatResponse chat( + com.google.analytics.data.v1alpha.ChatRequest request) { + return io.grpc.stub.ClientCalls.blockingUnaryCall( + getChannel(), getChatMethod(), getCallOptions(), request); + } + /** * * @@ -2612,6 +2747,29 @@ protected AlphaAnalyticsDataFutureStub build( getChannel().newCall(getListReportTasksMethod(), getCallOptions()), request); } + /** + * + * + *
+ * Provides a chat interface for interacting with Google Analytics data + * through the API. + * This product uses AI and may display inaccurate info. Your chat activity + * may be used to improve the product and your use is subject to Google's + * [Terms](https://policies.google.com/terms), + * [AI Use + * Policy](https://policies.google.com/terms/generative-ai/use-policy), and + * [Privacy Policy](https://policies.google.com/privacy). + * [Learn more about Chat AI + * Privacy](https://support.google.com/helpguide/answer/14185196). + *+ */ + public com.google.common.util.concurrent.ListenableFuture< + com.google.analytics.data.v1alpha.ChatResponse> + chat(com.google.analytics.data.v1alpha.ChatRequest request) { + return io.grpc.stub.ClientCalls.futureUnaryCall( + getChannel().newCall(getChatMethod(), getCallOptions()), request); + } + /** * * @@ -2668,8 +2826,9 @@ protected AlphaAnalyticsDataFutureStub build( private static final int METHODID_QUERY_REPORT_TASK = 10; private static final int METHODID_GET_REPORT_TASK = 11; private static final int METHODID_LIST_REPORT_TASKS = 12; - private static final int METHODID_RUN_REPORT = 13; - private static final int METHODID_GET_METADATA = 14; + private static final int METHODID_CHAT = 13; + private static final int METHODID_RUN_REPORT = 14; + private static final int METHODID_GET_METADATA = 15; private static final class MethodHandlers
+ * Request message for the Chat method. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ChatRequest} + */ +@com.google.protobuf.Generated +public final class ChatRequest extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ChatRequest) + ChatRequestOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "ChatRequest"); + } + + // Use ChatRequest.newBuilder() to construct. + private ChatRequest(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private ChatRequest() { + property_ = ""; + userQuery_ = ""; + sessionId_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.AnalyticsDataApiProto + .internal_static_google_analytics_data_v1alpha_ChatRequest_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.AnalyticsDataApiProto + .internal_static_google_analytics_data_v1alpha_ChatRequest_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ChatRequest.class, + com.google.analytics.data.v1alpha.ChatRequest.Builder.class); + } + + private int bitField0_; + public static final int PROPERTY_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object property_ = ""; + + /** + * + * + *
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The property.
+ */
+ @java.lang.Override
+ public java.lang.String getProperty() {
+ java.lang.Object ref = property_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ property_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for property.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getPropertyBytes() {
+ java.lang.Object ref = property_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ property_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int USER_QUERY_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object userQuery_ = "";
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @return The userQuery.
+ */
+ @java.lang.Override
+ public java.lang.String getUserQuery() {
+ java.lang.Object ref = userQuery_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ userQuery_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @return The bytes for userQuery.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getUserQueryBytes() {
+ java.lang.Object ref = userQuery_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ userQuery_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int SESSION_ID_FIELD_NUMBER = 3;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object sessionId_ = "";
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return Whether the sessionId field is set.
+ */
+ @java.lang.Override
+ public boolean hasSessionId() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The sessionId.
+ */
+ @java.lang.Override
+ public java.lang.String getSessionId() {
+ java.lang.Object ref = sessionId_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ sessionId_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The bytes for sessionId.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getSessionIdBytes() {
+ java.lang.Object ref = sessionId_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ sessionId_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int RETURN_PROPERTY_QUOTA_FIELD_NUMBER = 4;
+ private boolean returnPropertyQuota_ = false;
+
+ /**
+ *
+ *
+ * + * Optional. If true, the response will include the current state of this + * Analytics Property's quota. Quota is returned in + * [PropertyChatQuota](#PropertyChatQuota). + *+ * + *
bool return_property_quota = 4 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The returnPropertyQuota.
+ */
+ @java.lang.Override
+ public boolean getReturnPropertyQuota() {
+ return returnPropertyQuota_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(property_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, property_);
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(userQuery_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 2, userQuery_);
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 3, sessionId_);
+ }
+ if (returnPropertyQuota_ != false) {
+ output.writeBool(4, returnPropertyQuota_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(property_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, property_);
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(userQuery_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(2, userQuery_);
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(3, sessionId_);
+ }
+ if (returnPropertyQuota_ != false) {
+ size += com.google.protobuf.CodedOutputStream.computeBoolSize(4, returnPropertyQuota_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.analytics.data.v1alpha.ChatRequest)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ChatRequest other =
+ (com.google.analytics.data.v1alpha.ChatRequest) obj;
+
+ if (!getProperty().equals(other.getProperty())) return false;
+ if (!getUserQuery().equals(other.getUserQuery())) return false;
+ if (hasSessionId() != other.hasSessionId()) return false;
+ if (hasSessionId()) {
+ if (!getSessionId().equals(other.getSessionId())) return false;
+ }
+ if (getReturnPropertyQuota() != other.getReturnPropertyQuota()) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + PROPERTY_FIELD_NUMBER;
+ hash = (53 * hash) + getProperty().hashCode();
+ hash = (37 * hash) + USER_QUERY_FIELD_NUMBER;
+ hash = (53 * hash) + getUserQuery().hashCode();
+ if (hasSessionId()) {
+ hash = (37 * hash) + SESSION_ID_FIELD_NUMBER;
+ hash = (53 * hash) + getSessionId().hashCode();
+ }
+ hash = (37 * hash) + RETURN_PROPERTY_QUOTA_FIELD_NUMBER;
+ hash = (53 * hash) + com.google.protobuf.Internal.hashBoolean(getReturnPropertyQuota());
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.analytics.data.v1alpha.ChatRequest prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * Request message for the Chat method. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ChatRequest} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The property.
+ */
+ public java.lang.String getProperty() {
+ java.lang.Object ref = property_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ property_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for property.
+ */
+ public com.google.protobuf.ByteString getPropertyBytes() {
+ java.lang.Object ref = property_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ property_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The property to set.
+ * @return This builder for chaining.
+ */
+ public Builder setProperty(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ property_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearProperty() {
+ property_ = getDefaultInstance().getProperty();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The bytes for property to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPropertyBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ property_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object userQuery_ = "";
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @return The userQuery.
+ */
+ public java.lang.String getUserQuery() {
+ java.lang.Object ref = userQuery_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ userQuery_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @return The bytes for userQuery.
+ */
+ public com.google.protobuf.ByteString getUserQueryBytes() {
+ java.lang.Object ref = userQuery_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ userQuery_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @param value The userQuery to set.
+ * @return This builder for chaining.
+ */
+ public Builder setUserQuery(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ userQuery_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearUserQuery() {
+ userQuery_ = getDefaultInstance().getUserQuery();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @param value The bytes for userQuery to set.
+ * @return This builder for chaining.
+ */
+ public Builder setUserQueryBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ userQuery_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object sessionId_ = "";
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return Whether the sessionId field is set.
+ */
+ public boolean hasSessionId() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The sessionId.
+ */
+ public java.lang.String getSessionId() {
+ java.lang.Object ref = sessionId_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ sessionId_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The bytes for sessionId.
+ */
+ public com.google.protobuf.ByteString getSessionIdBytes() {
+ java.lang.Object ref = sessionId_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ sessionId_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @param value The sessionId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSessionId(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ sessionId_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearSessionId() {
+ sessionId_ = getDefaultInstance().getSessionId();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @param value The bytes for sessionId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSessionIdBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ sessionId_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ private boolean returnPropertyQuota_;
+
+ /**
+ *
+ *
+ * + * Optional. If true, the response will include the current state of this + * Analytics Property's quota. Quota is returned in + * [PropertyChatQuota](#PropertyChatQuota). + *+ * + *
bool return_property_quota = 4 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The returnPropertyQuota.
+ */
+ @java.lang.Override
+ public boolean getReturnPropertyQuota() {
+ return returnPropertyQuota_;
+ }
+
+ /**
+ *
+ *
+ * + * Optional. If true, the response will include the current state of this + * Analytics Property's quota. Quota is returned in + * [PropertyChatQuota](#PropertyChatQuota). + *+ * + *
bool return_property_quota = 4 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @param value The returnPropertyQuota to set.
+ * @return This builder for chaining.
+ */
+ public Builder setReturnPropertyQuota(boolean value) {
+
+ returnPropertyQuota_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Optional. If true, the response will include the current state of this + * Analytics Property's quota. Quota is returned in + * [PropertyChatQuota](#PropertyChatQuota). + *+ * + *
bool return_property_quota = 4 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearReturnPropertyQuota() {
+ bitField0_ = (bitField0_ & ~0x00000008);
+ returnPropertyQuota_ = false;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.ChatRequest)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.analytics.data.v1alpha.ChatRequest)
+ private static final com.google.analytics.data.v1alpha.ChatRequest DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.analytics.data.v1alpha.ChatRequest();
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatRequest getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The property.
+ */
+ java.lang.String getProperty();
+
+ /**
+ *
+ *
+ *
+ * Required. The property to chat about.
+ * Format: properties/{property}
+ *
+ *
+ *
+ * string property = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for property.
+ */
+ com.google.protobuf.ByteString getPropertyBytes();
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @return The userQuery.
+ */
+ java.lang.String getUserQuery();
+
+ /**
+ *
+ *
+ * + * Required. The user's query. + *+ * + *
string user_query = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ * @return The bytes for userQuery.
+ */
+ com.google.protobuf.ByteString getUserQueryBytes();
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return Whether the sessionId field is set.
+ */
+ boolean hasSessionId();
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The sessionId.
+ */
+ java.lang.String getSessionId();
+
+ /**
+ *
+ *
+ * + * Optional. Provide this session ID to continue an existing conversation + * and maintain context. If this field is empty or unset, a new chat + * session is created. Invalid session IDs will result in an error. + *+ * + *
optional string session_id = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The bytes for sessionId.
+ */
+ com.google.protobuf.ByteString getSessionIdBytes();
+
+ /**
+ *
+ *
+ * + * Optional. If true, the response will include the current state of this + * Analytics Property's quota. Quota is returned in + * [PropertyChatQuota](#PropertyChatQuota). + *+ * + *
bool return_property_quota = 4 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The returnPropertyQuota.
+ */
+ boolean getReturnPropertyQuota();
+}
diff --git a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ChatResponse.java b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ChatResponse.java
new file mode 100644
index 000000000000..47a6bfef3987
--- /dev/null
+++ b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ChatResponse.java
@@ -0,0 +1,1438 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/analytics/data/v1alpha/analytics_data_api.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.analytics.data.v1alpha;
+
+/**
+ *
+ *
+ * + * Response message for the Chat method. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ChatResponse} + */ +@com.google.protobuf.Generated +public final class ChatResponse extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ChatResponse) + ChatResponseOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "ChatResponse"); + } + + // Use ChatResponse.newBuilder() to construct. + private ChatResponse(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private ChatResponse() { + sessionId_ = ""; + blocks_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.AnalyticsDataApiProto + .internal_static_google_analytics_data_v1alpha_ChatResponse_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.AnalyticsDataApiProto + .internal_static_google_analytics_data_v1alpha_ChatResponse_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ChatResponse.class, + com.google.analytics.data.v1alpha.ChatResponse.Builder.class); + } + + private int bitField0_; + public static final int SESSION_ID_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object sessionId_ = ""; + + /** + * + * + *
+ * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @return The sessionId.
+ */
+ @java.lang.Override
+ public java.lang.String getSessionId() {
+ java.lang.Object ref = sessionId_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ sessionId_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @return The bytes for sessionId.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getSessionIdBytes() {
+ java.lang.Object ref = sessionId_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ sessionId_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int BLOCKS_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private java.util.List+ * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ @java.lang.Override
+ public java.util.List+ * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ @java.lang.Override
+ public java.util.List extends com.google.analytics.data.v1alpha.ResponseBlockOrBuilder>
+ getBlocksOrBuilderList() {
+ return blocks_;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ @java.lang.Override
+ public int getBlocksCount() {
+ return blocks_.size();
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock getBlocks(int index) {
+ return blocks_.get(index);
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlockOrBuilder getBlocksOrBuilder(int index) {
+ return blocks_.get(index);
+ }
+
+ public static final int PROPERTY_QUOTA_FIELD_NUMBER = 3;
+ private com.google.analytics.data.v1alpha.PropertyChatQuota propertyQuota_;
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ *
+ * @return Whether the propertyQuota field is set.
+ */
+ @java.lang.Override
+ public boolean hasPropertyQuota() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ *
+ * @return The propertyQuota.
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.PropertyChatQuota getPropertyQuota() {
+ return propertyQuota_ == null
+ ? com.google.analytics.data.v1alpha.PropertyChatQuota.getDefaultInstance()
+ : propertyQuota_;
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.PropertyChatQuotaOrBuilder getPropertyQuotaOrBuilder() {
+ return propertyQuota_ == null
+ ? com.google.analytics.data.v1alpha.PropertyChatQuota.getDefaultInstance()
+ : propertyQuota_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sessionId_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, sessionId_);
+ }
+ for (int i = 0; i < blocks_.size(); i++) {
+ output.writeMessage(2, blocks_.get(i));
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeMessage(3, getPropertyQuota());
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(sessionId_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, sessionId_);
+ }
+ for (int i = 0; i < blocks_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, blocks_.get(i));
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getPropertyQuota());
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.analytics.data.v1alpha.ChatResponse)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ChatResponse other =
+ (com.google.analytics.data.v1alpha.ChatResponse) obj;
+
+ if (!getSessionId().equals(other.getSessionId())) return false;
+ if (!getBlocksList().equals(other.getBlocksList())) return false;
+ if (hasPropertyQuota() != other.hasPropertyQuota()) return false;
+ if (hasPropertyQuota()) {
+ if (!getPropertyQuota().equals(other.getPropertyQuota())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + SESSION_ID_FIELD_NUMBER;
+ hash = (53 * hash) + getSessionId().hashCode();
+ if (getBlocksCount() > 0) {
+ hash = (37 * hash) + BLOCKS_FIELD_NUMBER;
+ hash = (53 * hash) + getBlocksList().hashCode();
+ }
+ if (hasPropertyQuota()) {
+ hash = (37 * hash) + PROPERTY_QUOTA_FIELD_NUMBER;
+ hash = (53 * hash) + getPropertyQuota().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.analytics.data.v1alpha.ChatResponse prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * Response message for the Chat method. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ChatResponse} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @return The sessionId.
+ */
+ public java.lang.String getSessionId() {
+ java.lang.Object ref = sessionId_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ sessionId_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @return The bytes for sessionId.
+ */
+ public com.google.protobuf.ByteString getSessionIdBytes() {
+ java.lang.Object ref = sessionId_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ sessionId_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @param value The sessionId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSessionId(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ sessionId_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearSessionId() {
+ sessionId_ = getDefaultInstance().getSessionId();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @param value The bytes for sessionId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSessionIdBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ sessionId_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.util.List+ * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public java.util.List+ * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public int getBlocksCount() {
+ if (blocksBuilder_ == null) {
+ return blocks_.size();
+ } else {
+ return blocksBuilder_.getCount();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock getBlocks(int index) {
+ if (blocksBuilder_ == null) {
+ return blocks_.get(index);
+ } else {
+ return blocksBuilder_.getMessage(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder setBlocks(int index, com.google.analytics.data.v1alpha.ResponseBlock value) {
+ if (blocksBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureBlocksIsMutable();
+ blocks_.set(index, value);
+ onChanged();
+ } else {
+ blocksBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder setBlocks(
+ int index, com.google.analytics.data.v1alpha.ResponseBlock.Builder builderForValue) {
+ if (blocksBuilder_ == null) {
+ ensureBlocksIsMutable();
+ blocks_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ blocksBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder addBlocks(com.google.analytics.data.v1alpha.ResponseBlock value) {
+ if (blocksBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureBlocksIsMutable();
+ blocks_.add(value);
+ onChanged();
+ } else {
+ blocksBuilder_.addMessage(value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder addBlocks(int index, com.google.analytics.data.v1alpha.ResponseBlock value) {
+ if (blocksBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureBlocksIsMutable();
+ blocks_.add(index, value);
+ onChanged();
+ } else {
+ blocksBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder addBlocks(
+ com.google.analytics.data.v1alpha.ResponseBlock.Builder builderForValue) {
+ if (blocksBuilder_ == null) {
+ ensureBlocksIsMutable();
+ blocks_.add(builderForValue.build());
+ onChanged();
+ } else {
+ blocksBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder addBlocks(
+ int index, com.google.analytics.data.v1alpha.ResponseBlock.Builder builderForValue) {
+ if (blocksBuilder_ == null) {
+ ensureBlocksIsMutable();
+ blocks_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ blocksBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder addAllBlocks(
+ java.lang.Iterable extends com.google.analytics.data.v1alpha.ResponseBlock> values) {
+ if (blocksBuilder_ == null) {
+ ensureBlocksIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, blocks_);
+ onChanged();
+ } else {
+ blocksBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder clearBlocks() {
+ if (blocksBuilder_ == null) {
+ blocks_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ } else {
+ blocksBuilder_.clear();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public Builder removeBlocks(int index) {
+ if (blocksBuilder_ == null) {
+ ensureBlocksIsMutable();
+ blocks_.remove(index);
+ onChanged();
+ } else {
+ blocksBuilder_.remove(index);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.Builder getBlocksBuilder(int index) {
+ return internalGetBlocksFieldBuilder().getBuilder(index);
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlockOrBuilder getBlocksOrBuilder(int index) {
+ if (blocksBuilder_ == null) {
+ return blocks_.get(index);
+ } else {
+ return blocksBuilder_.getMessageOrBuilder(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public java.util.List extends com.google.analytics.data.v1alpha.ResponseBlockOrBuilder>
+ getBlocksOrBuilderList() {
+ if (blocksBuilder_ != null) {
+ return blocksBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(blocks_);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.Builder addBlocksBuilder() {
+ return internalGetBlocksFieldBuilder()
+ .addBuilder(com.google.analytics.data.v1alpha.ResponseBlock.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.Builder addBlocksBuilder(int index) {
+ return internalGetBlocksFieldBuilder()
+ .addBuilder(index, com.google.analytics.data.v1alpha.ResponseBlock.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ public java.util.List+ * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ *
+ * @return Whether the propertyQuota field is set.
+ */
+ public boolean hasPropertyQuota() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ *
+ * @return The propertyQuota.
+ */
+ public com.google.analytics.data.v1alpha.PropertyChatQuota getPropertyQuota() {
+ if (propertyQuotaBuilder_ == null) {
+ return propertyQuota_ == null
+ ? com.google.analytics.data.v1alpha.PropertyChatQuota.getDefaultInstance()
+ : propertyQuota_;
+ } else {
+ return propertyQuotaBuilder_.getMessage();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ public Builder setPropertyQuota(com.google.analytics.data.v1alpha.PropertyChatQuota value) {
+ if (propertyQuotaBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ propertyQuota_ = value;
+ } else {
+ propertyQuotaBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ public Builder setPropertyQuota(
+ com.google.analytics.data.v1alpha.PropertyChatQuota.Builder builderForValue) {
+ if (propertyQuotaBuilder_ == null) {
+ propertyQuota_ = builderForValue.build();
+ } else {
+ propertyQuotaBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ public Builder mergePropertyQuota(com.google.analytics.data.v1alpha.PropertyChatQuota value) {
+ if (propertyQuotaBuilder_ == null) {
+ if (((bitField0_ & 0x00000004) != 0)
+ && propertyQuota_ != null
+ && propertyQuota_
+ != com.google.analytics.data.v1alpha.PropertyChatQuota.getDefaultInstance()) {
+ getPropertyQuotaBuilder().mergeFrom(value);
+ } else {
+ propertyQuota_ = value;
+ }
+ } else {
+ propertyQuotaBuilder_.mergeFrom(value);
+ }
+ if (propertyQuota_ != null) {
+ bitField0_ |= 0x00000004;
+ onChanged();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ public Builder clearPropertyQuota() {
+ bitField0_ = (bitField0_ & ~0x00000004);
+ propertyQuota_ = null;
+ if (propertyQuotaBuilder_ != null) {
+ propertyQuotaBuilder_.dispose();
+ propertyQuotaBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ public com.google.analytics.data.v1alpha.PropertyChatQuota.Builder getPropertyQuotaBuilder() {
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return internalGetPropertyQuotaFieldBuilder().getBuilder();
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ public com.google.analytics.data.v1alpha.PropertyChatQuotaOrBuilder
+ getPropertyQuotaOrBuilder() {
+ if (propertyQuotaBuilder_ != null) {
+ return propertyQuotaBuilder_.getMessageOrBuilder();
+ } else {
+ return propertyQuota_ == null
+ ? com.google.analytics.data.v1alpha.PropertyChatQuota.getDefaultInstance()
+ : propertyQuota_;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.PropertyChatQuota,
+ com.google.analytics.data.v1alpha.PropertyChatQuota.Builder,
+ com.google.analytics.data.v1alpha.PropertyChatQuotaOrBuilder>
+ internalGetPropertyQuotaFieldBuilder() {
+ if (propertyQuotaBuilder_ == null) {
+ propertyQuotaBuilder_ =
+ new com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.PropertyChatQuota,
+ com.google.analytics.data.v1alpha.PropertyChatQuota.Builder,
+ com.google.analytics.data.v1alpha.PropertyChatQuotaOrBuilder>(
+ getPropertyQuota(), getParentForChildren(), isClean());
+ propertyQuota_ = null;
+ }
+ return propertyQuotaBuilder_;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.ChatResponse)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.analytics.data.v1alpha.ChatResponse)
+ private static final com.google.analytics.data.v1alpha.ChatResponse DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.analytics.data.v1alpha.ChatResponse();
+ }
+
+ public static com.google.analytics.data.v1alpha.ChatResponse getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser+ * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @return The sessionId.
+ */
+ java.lang.String getSessionId();
+
+ /**
+ *
+ *
+ * + * The unique identifier for this chat session. Provide this ID in subsequent + * requests to maintain conversational context. + *+ * + *
string session_id = 1;
+ *
+ * @return The bytes for sessionId.
+ */
+ com.google.protobuf.ByteString getSessionIdBytes();
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ java.util.List+ * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock getBlocks(int index);
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ int getBlocksCount();
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ java.util.List extends com.google.analytics.data.v1alpha.ResponseBlockOrBuilder>
+ getBlocksOrBuilderList();
+
+ /**
+ *
+ *
+ * + * The response blocks that make up the chat response. This can include text, + * tables, and lists. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock blocks = 2;
+ */
+ com.google.analytics.data.v1alpha.ResponseBlockOrBuilder getBlocksOrBuilder(int index);
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ *
+ * @return Whether the propertyQuota field is set.
+ */
+ boolean hasPropertyQuota();
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ *
+ * @return The propertyQuota.
+ */
+ com.google.analytics.data.v1alpha.PropertyChatQuota getPropertyQuota();
+
+ /**
+ *
+ *
+ * + * This Analytics Property's quota state including this request. + *+ * + *
.google.analytics.data.v1alpha.PropertyChatQuota property_quota = 3;
+ */
+ com.google.analytics.data.v1alpha.PropertyChatQuotaOrBuilder getPropertyQuotaOrBuilder();
+}
diff --git a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/PropertyChatQuota.java b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/PropertyChatQuota.java
new file mode 100644
index 000000000000..33f2f8519706
--- /dev/null
+++ b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/PropertyChatQuota.java
@@ -0,0 +1,985 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/analytics/data/v1alpha/data.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.analytics.data.v1alpha;
+
+/**
+ *
+ *
+ * + * Property quota for chatbot specific fields. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.PropertyChatQuota} + */ +@com.google.protobuf.Generated +public final class PropertyChatQuota extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.PropertyChatQuota) + PropertyChatQuotaOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "PropertyChatQuota"); + } + + // Use PropertyChatQuota.newBuilder() to construct. + private PropertyChatQuota(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private PropertyChatQuota() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_PropertyChatQuota_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_PropertyChatQuota_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.PropertyChatQuota.class, + com.google.analytics.data.v1alpha.PropertyChatQuota.Builder.class); + } + + private int bitField0_; + public static final int TOKENS_PER_DAY_FIELD_NUMBER = 1; + private com.google.analytics.data.v1alpha.QuotaStatus tokensPerDay_; + + /** + * + * + *
+ * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ *
+ * @return Whether the tokensPerDay field is set.
+ */
+ @java.lang.Override
+ public boolean hasTokensPerDay() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ *
+ * @return The tokensPerDay.
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.QuotaStatus getTokensPerDay() {
+ return tokensPerDay_ == null
+ ? com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()
+ : tokensPerDay_;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.QuotaStatusOrBuilder getTokensPerDayOrBuilder() {
+ return tokensPerDay_ == null
+ ? com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()
+ : tokensPerDay_;
+ }
+
+ public static final int TOKENS_PER_HOUR_FIELD_NUMBER = 2;
+ private com.google.analytics.data.v1alpha.QuotaStatus tokensPerHour_;
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ *
+ * @return Whether the tokensPerHour field is set.
+ */
+ @java.lang.Override
+ public boolean hasTokensPerHour() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ *
+ * @return The tokensPerHour.
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.QuotaStatus getTokensPerHour() {
+ return tokensPerHour_ == null
+ ? com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()
+ : tokensPerHour_;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.QuotaStatusOrBuilder getTokensPerHourOrBuilder() {
+ return tokensPerHour_ == null
+ ? com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()
+ : tokensPerHour_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeMessage(1, getTokensPerDay());
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ output.writeMessage(2, getTokensPerHour());
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, getTokensPerDay());
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getTokensPerHour());
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.analytics.data.v1alpha.PropertyChatQuota)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.PropertyChatQuota other =
+ (com.google.analytics.data.v1alpha.PropertyChatQuota) obj;
+
+ if (hasTokensPerDay() != other.hasTokensPerDay()) return false;
+ if (hasTokensPerDay()) {
+ if (!getTokensPerDay().equals(other.getTokensPerDay())) return false;
+ }
+ if (hasTokensPerHour() != other.hasTokensPerHour()) return false;
+ if (hasTokensPerHour()) {
+ if (!getTokensPerHour().equals(other.getTokensPerHour())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasTokensPerDay()) {
+ hash = (37 * hash) + TOKENS_PER_DAY_FIELD_NUMBER;
+ hash = (53 * hash) + getTokensPerDay().hashCode();
+ }
+ if (hasTokensPerHour()) {
+ hash = (37 * hash) + TOKENS_PER_HOUR_FIELD_NUMBER;
+ hash = (53 * hash) + getTokensPerHour().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.analytics.data.v1alpha.PropertyChatQuota prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * Property quota for chatbot specific fields. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.PropertyChatQuota} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ *
+ * @return Whether the tokensPerDay field is set.
+ */
+ public boolean hasTokensPerDay() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ *
+ * @return The tokensPerDay.
+ */
+ public com.google.analytics.data.v1alpha.QuotaStatus getTokensPerDay() {
+ if (tokensPerDayBuilder_ == null) {
+ return tokensPerDay_ == null
+ ? com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()
+ : tokensPerDay_;
+ } else {
+ return tokensPerDayBuilder_.getMessage();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ public Builder setTokensPerDay(com.google.analytics.data.v1alpha.QuotaStatus value) {
+ if (tokensPerDayBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ tokensPerDay_ = value;
+ } else {
+ tokensPerDayBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ public Builder setTokensPerDay(
+ com.google.analytics.data.v1alpha.QuotaStatus.Builder builderForValue) {
+ if (tokensPerDayBuilder_ == null) {
+ tokensPerDay_ = builderForValue.build();
+ } else {
+ tokensPerDayBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ public Builder mergeTokensPerDay(com.google.analytics.data.v1alpha.QuotaStatus value) {
+ if (tokensPerDayBuilder_ == null) {
+ if (((bitField0_ & 0x00000001) != 0)
+ && tokensPerDay_ != null
+ && tokensPerDay_
+ != com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()) {
+ getTokensPerDayBuilder().mergeFrom(value);
+ } else {
+ tokensPerDay_ = value;
+ }
+ } else {
+ tokensPerDayBuilder_.mergeFrom(value);
+ }
+ if (tokensPerDay_ != null) {
+ bitField0_ |= 0x00000001;
+ onChanged();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ public Builder clearTokensPerDay() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ tokensPerDay_ = null;
+ if (tokensPerDayBuilder_ != null) {
+ tokensPerDayBuilder_.dispose();
+ tokensPerDayBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ public com.google.analytics.data.v1alpha.QuotaStatus.Builder getTokensPerDayBuilder() {
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return internalGetTokensPerDayFieldBuilder().getBuilder();
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ public com.google.analytics.data.v1alpha.QuotaStatusOrBuilder getTokensPerDayOrBuilder() {
+ if (tokensPerDayBuilder_ != null) {
+ return tokensPerDayBuilder_.getMessageOrBuilder();
+ } else {
+ return tokensPerDay_ == null
+ ? com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()
+ : tokensPerDay_;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.QuotaStatus,
+ com.google.analytics.data.v1alpha.QuotaStatus.Builder,
+ com.google.analytics.data.v1alpha.QuotaStatusOrBuilder>
+ internalGetTokensPerDayFieldBuilder() {
+ if (tokensPerDayBuilder_ == null) {
+ tokensPerDayBuilder_ =
+ new com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.QuotaStatus,
+ com.google.analytics.data.v1alpha.QuotaStatus.Builder,
+ com.google.analytics.data.v1alpha.QuotaStatusOrBuilder>(
+ getTokensPerDay(), getParentForChildren(), isClean());
+ tokensPerDay_ = null;
+ }
+ return tokensPerDayBuilder_;
+ }
+
+ private com.google.analytics.data.v1alpha.QuotaStatus tokensPerHour_;
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.QuotaStatus,
+ com.google.analytics.data.v1alpha.QuotaStatus.Builder,
+ com.google.analytics.data.v1alpha.QuotaStatusOrBuilder>
+ tokensPerHourBuilder_;
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ *
+ * @return Whether the tokensPerHour field is set.
+ */
+ public boolean hasTokensPerHour() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ *
+ * @return The tokensPerHour.
+ */
+ public com.google.analytics.data.v1alpha.QuotaStatus getTokensPerHour() {
+ if (tokensPerHourBuilder_ == null) {
+ return tokensPerHour_ == null
+ ? com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()
+ : tokensPerHour_;
+ } else {
+ return tokensPerHourBuilder_.getMessage();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ public Builder setTokensPerHour(com.google.analytics.data.v1alpha.QuotaStatus value) {
+ if (tokensPerHourBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ tokensPerHour_ = value;
+ } else {
+ tokensPerHourBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ public Builder setTokensPerHour(
+ com.google.analytics.data.v1alpha.QuotaStatus.Builder builderForValue) {
+ if (tokensPerHourBuilder_ == null) {
+ tokensPerHour_ = builderForValue.build();
+ } else {
+ tokensPerHourBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ public Builder mergeTokensPerHour(com.google.analytics.data.v1alpha.QuotaStatus value) {
+ if (tokensPerHourBuilder_ == null) {
+ if (((bitField0_ & 0x00000002) != 0)
+ && tokensPerHour_ != null
+ && tokensPerHour_
+ != com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()) {
+ getTokensPerHourBuilder().mergeFrom(value);
+ } else {
+ tokensPerHour_ = value;
+ }
+ } else {
+ tokensPerHourBuilder_.mergeFrom(value);
+ }
+ if (tokensPerHour_ != null) {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ public Builder clearTokensPerHour() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ tokensPerHour_ = null;
+ if (tokensPerHourBuilder_ != null) {
+ tokensPerHourBuilder_.dispose();
+ tokensPerHourBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ public com.google.analytics.data.v1alpha.QuotaStatus.Builder getTokensPerHourBuilder() {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return internalGetTokensPerHourFieldBuilder().getBuilder();
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ public com.google.analytics.data.v1alpha.QuotaStatusOrBuilder getTokensPerHourOrBuilder() {
+ if (tokensPerHourBuilder_ != null) {
+ return tokensPerHourBuilder_.getMessageOrBuilder();
+ } else {
+ return tokensPerHour_ == null
+ ? com.google.analytics.data.v1alpha.QuotaStatus.getDefaultInstance()
+ : tokensPerHour_;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.QuotaStatus,
+ com.google.analytics.data.v1alpha.QuotaStatus.Builder,
+ com.google.analytics.data.v1alpha.QuotaStatusOrBuilder>
+ internalGetTokensPerHourFieldBuilder() {
+ if (tokensPerHourBuilder_ == null) {
+ tokensPerHourBuilder_ =
+ new com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.QuotaStatus,
+ com.google.analytics.data.v1alpha.QuotaStatus.Builder,
+ com.google.analytics.data.v1alpha.QuotaStatusOrBuilder>(
+ getTokensPerHour(), getParentForChildren(), isClean());
+ tokensPerHour_ = null;
+ }
+ return tokensPerHourBuilder_;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.PropertyChatQuota)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.analytics.data.v1alpha.PropertyChatQuota)
+ private static final com.google.analytics.data.v1alpha.PropertyChatQuota DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.analytics.data.v1alpha.PropertyChatQuota();
+ }
+
+ public static com.google.analytics.data.v1alpha.PropertyChatQuota getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser+ * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ *
+ * @return Whether the tokensPerDay field is set.
+ */
+ boolean hasTokensPerDay();
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ *
+ * @return The tokensPerDay.
+ */
+ com.google.analytics.data.v1alpha.QuotaStatus getTokensPerDay();
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per day. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_day = 1;
+ */
+ com.google.analytics.data.v1alpha.QuotaStatusOrBuilder getTokensPerDayOrBuilder();
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ *
+ * @return Whether the tokensPerHour field is set.
+ */
+ boolean hasTokensPerHour();
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ *
+ * @return The tokensPerHour.
+ */
+ com.google.analytics.data.v1alpha.QuotaStatus getTokensPerHour();
+
+ /**
+ *
+ *
+ * + * Chat tokens consumed per hour. + *+ * + *
.google.analytics.data.v1alpha.QuotaStatus tokens_per_hour = 2;
+ */
+ com.google.analytics.data.v1alpha.QuotaStatusOrBuilder getTokensPerHourOrBuilder();
+}
diff --git a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ReportingApiProto.java b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ReportingApiProto.java
index 4e77478131af..e414dd5fc92d 100644
--- a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ReportingApiProto.java
+++ b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ReportingApiProto.java
@@ -144,6 +144,14 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r
internal_static_google_analytics_data_v1alpha_ResponseMetaData_SchemaRestrictionResponse_ActiveMetricRestriction_descriptor;
static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
internal_static_google_analytics_data_v1alpha_ResponseMetaData_SchemaRestrictionResponse_ActiveMetricRestriction_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_DataTruncationDateRange_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_DataTruncationDateRange_fieldAccessorTable;
static final com.google.protobuf.Descriptors.Descriptor
internal_static_google_analytics_data_v1alpha_DimensionHeader_descriptor;
static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
@@ -192,6 +200,26 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r
internal_static_google_analytics_data_v1alpha_FunnelSubReport_descriptor;
static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
internal_static_google_analytics_data_v1alpha_FunnelSubReport_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableCell_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableCell_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableHeader_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableHeader_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableRow_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableRow_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTable_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTable_fieldAccessorTable;
static final com.google.protobuf.Descriptors.Descriptor
internal_static_google_analytics_data_v1alpha_UserSegment_descriptor;
static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
@@ -344,6 +372,10 @@ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry r
internal_static_google_analytics_data_v1alpha_ConversionMetadata_descriptor;
static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
internal_static_google_analytics_data_v1alpha_ConversionMetadata_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_analytics_data_v1alpha_PropertyChatQuota_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_analytics_data_v1alpha_PropertyChatQuota_fieldAccessorTable;
public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
return descriptor;
@@ -486,7 +518,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\006WEEKLY\020\002\022\013\n"
+ "\007MONTHLY\020\003\"*\n"
+ "\024CohortReportSettings\022\022\n\n"
- + "accumulate\030\001 \001(\010\"\323\006\n"
+ + "accumulate\030\001 \001(\010\"\261\017\n"
+ "\020ResponseMetaData\022 \n"
+ "\030data_loss_from_other_row\030\003 \001(\010\022s\n"
+ "\033schema_restriction_response\030\004 \001(\0132I.google.analytics.data.v1alp"
@@ -498,15 +530,47 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\022sampling_metadatas\030\t \003(\0132/.go"
+ "ogle.analytics.data.v1alpha.SamplingMetadata\0227\n"
+ "\007section\030\n"
- + " \001(\0162&.google.analytics.data.v1alpha.Section\032\277\002\n"
+ + " \001(\0162&.google.analytics.data.v1alpha.Section\022e\n"
+ + "\027data_truncation_reasons\030\013 \003(\0132D.google.analytics.data.v"
+ + "1alpha.ResponseMetaData.DataTruncationReason\032\277\002\n"
+ "\031SchemaRestrictionResponse\022\205\001\n"
- + "\032active_metric_restrictions\030\001 \003(\0132a.google.analytics.data.v1alpha"
- + ".ResponseMetaData.SchemaRestrictionResponse.ActiveMetricRestriction\032\231\001\n"
+ + "\032active_metric_restrictions\030\001 \003(\0132a.google"
+ + ".analytics.data.v1alpha.ResponseMetaData"
+ + ".SchemaRestrictionResponse.ActiveMetricRestriction\032\231\001\n"
+ "\027ActiveMetricRestriction\022\030\n"
+ "\013metric_name\030\001 \001(\tH\000\210\001\001\022T\n"
- + "\027restricted_metric_types\030\002 \003(\01623.goo"
- + "gle.analytics.data.v1alpha.RestrictedMetricTypeB\016\n"
- + "\014_metric_nameB\036\n"
+ + "\027restricted_metric_types\030\002"
+ + " \003(\01623.google.analytics.data.v1alpha.RestrictedMetricTypeB\016\n"
+ + "\014_metric_name\032\364\007\n"
+ + "\024DataTruncationReason\022z\n"
+ + "\024data_truncation_type\030\001 \001(\0162W.google.analytics"
+ + ".data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationTypeH\000\210\001\001\022$\n"
+ + "\027data_truncation_message\030\002 \001(\tH\001\210\001\001\022!\n"
+ + "\024data_truncation_date\030\003 \001(\tH\002\210\001\001\022\201\001\n"
+ + "\033data_truncation_date_ranges\030\004 \003(\0132\\.google.anal"
+ + "ytics.data.v1alpha.ResponseMetaData.Data"
+ + "TruncationReason.DataTruncationDateRange\032e\n"
+ + "\027DataTruncationDateRange\022\027\n\n"
+ + "start_date\030\001 \001(\tH\000\210\001\001\022\025\n"
+ + "\010end_date\030\002 \001(\tH\001\210\001\001B\r\n"
+ + "\013_start_dateB\013\n"
+ + "\t_end_date\"\335\003\n"
+ + "\022DataTruncationType\022$\n"
+ + " DATA_TRUNCATION_TYPE_UNSPECIFIED\020\000\022+\n"
+ + "\'DATA_TRUNCATION_TYPE_RULES_BASED_MODELS\020\001\0220\n"
+ + ",DATA_TRUNCATION_TYPE_DATA_DRIVEN_ATTRIBUTION\020\002\022\036\n"
+ + "\032DATA_TRUNCATION_TYPE_DV360\020\003\022\036\n"
+ + "\032DATA_TRUNCATION_TYPE_CM360\020\004\0226\n"
+ + "2DATA_TRUNCATION_TYPE_ITEM_SCOPED_ECOMMERCE_METRICS\020\005\0227\n"
+ + "3DATA_TRUNCATION_TYPE_EVENT_SCOPED_ECOMMERCE_METRICS\020\006\022#\n"
+ + "\037DATA_TRUNCATION_TYPE_DATE_RANGE\020\007\022!\n"
+ + "\035DATA_TRUNCATION_TYPE_PROPERTY\020\010\022$\n"
+ + " DATA_TRUNCATION_TYPE_CONVERSIONS\020\t\022#\n"
+ + "\037DATA_TRUNCATION_TYPE_GOOGLE_ADS\020\n"
+ + "B\027\n"
+ + "\025_data_truncation_typeB\032\n"
+ + "\030_data_truncation_messageB\027\n"
+ + "\025_data_truncation_dateB\036\n"
+ "\034_schema_restriction_responseB\020\n"
+ "\016_currency_codeB\014\n\n"
+ "_time_zoneB\017\n\r"
@@ -530,12 +594,12 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "PropertyQuota\022B\n"
+ "\016tokens_per_day\030\001"
+ " \001(\0132*.google.analytics.data.v1alpha.QuotaStatus\022C\n"
- + "\017tokens_per_hour\030\002"
- + " \001(\0132*.google.analytics.data.v1alpha.QuotaStatus\022G\n"
- + "\023concurrent_requests\030\003 \001(\0132*."
- + "google.analytics.data.v1alpha.QuotaStatus\022V\n"
- + "\"server_errors_per_project_per_hour\030\004"
- + " \001(\0132*.google.analytics.data.v1alpha.QuotaStatus\022]\n"
+ + "\017tokens_per_hour\030\002 \001"
+ + "(\0132*.google.analytics.data.v1alpha.QuotaStatus\022G\n"
+ + "\023concurrent_requests\030\003 \001(\0132*.go"
+ + "ogle.analytics.data.v1alpha.QuotaStatus\022V\n"
+ + "\"server_errors_per_project_per_hour\030\004 "
+ + "\001(\0132*.google.analytics.data.v1alpha.QuotaStatus\022]\n"
+ ")potentially_thresholded_requests_per_hour\030\005"
+ " \001(\0132*.google.analytics.data.v1alpha.QuotaStatus\022O\n"
+ "\033tokens_per_project_per_hour\030\006"
@@ -544,8 +608,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\010consumed\030\001 \001(\005\022\021\n"
+ "\tremaining\030\002 \001(\005\"v\n"
+ "\017FunnelBreakdown\022E\n"
- + "\023breakdown_dimension\030\001"
- + " \001(\0132(.google.analytics.data.v1alpha.Dimension\022\022\n"
+ + "\023breakdown_dimension\030\001 "
+ + "\001(\0132(.google.analytics.data.v1alpha.Dimension\022\022\n"
+ "\005limit\030\002 \001(\003H\000\210\001\001B\010\n"
+ "\006_limit\"y\n"
+ "\020FunnelNextAction\022G\n"
@@ -565,227 +629,245 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ " \001(\01325.google.analytics.data.v1alpha.FunnelFilterExpressionB\"\n"
+ " _within_duration_from_prior_step\"\234\002\n"
+ "\017FunnelSubReport\022I\n"
- + "\021dimension_headers\030\001 \003(\0132..googl"
- + "e.analytics.data.v1alpha.DimensionHeader\022C\n"
+ + "\021dimension_headers\030\001 \003(\0132..google."
+ + "analytics.data.v1alpha.DimensionHeader\022C\n"
+ "\016metric_headers\030\002"
+ " \003(\0132+.google.analytics.data.v1alpha.MetricHeader\0220\n"
+ "\004rows\030\003 \003(\0132\".google.analytics.data.v1alpha.Row\022G\n"
+ "\010metadata\030\004"
- + " \001(\01325.google.analytics.data.v1alpha.FunnelResponseMetadata\"\252\001\n"
+ + " \001(\01325.google.analytics.data.v1alpha.FunnelResponseMetadata\"\312\003\n\r"
+ + "ResponseBlock\022\016\n"
+ + "\004text\030\001 \001(\tH\000\022G\n"
+ + "\005table\030\002 \001(\0132"
+ + "6.google.analytics.data.v1alpha.ResponseBlock.DataTableH\000\032\036\n\r"
+ + "DataTableCell\022\r\n"
+ + "\005value\030\001 \001(\t\0324\n"
+ + "\017DataTableHeader\022\016\n"
+ + "\006header\030\001 \001(\t\022\021\n"
+ + "\tdata_type\030\002 \001(\t\032[\n"
+ + "\014DataTableRow\022K\n"
+ + "\007columns\030\001"
+ + " \003(\0132:.google.analytics.data.v1alpha.ResponseBlock.DataTableCell\032\243\001\n"
+ + "\tDataTable\022M\n"
+ + "\007headers\030\001 \003(\0132<.google.ana"
+ + "lytics.data.v1alpha.ResponseBlock.DataTableHeader\022G\n"
+ + "\004rows\030\002 \003(\01329.google.analyti"
+ + "cs.data.v1alpha.ResponseBlock.DataTableRowB\007\n"
+ + "\005block\"\252\001\n"
+ "\013UserSegment\022S\n"
- + "\027user_inclusion_criteria\030\001 \001("
- + "\01322.google.analytics.data.v1alpha.UserSegmentCriteria\022F\n"
- + "\texclusion\030\002 \001(\01323.googl"
- + "e.analytics.data.v1alpha.UserSegmentExclusion\"\303\001\n"
+ + "\027user_inclusion_criteria\030\001"
+ + " \001(\01322.google.analytics.data.v1alpha.UserSegmentCriteria\022F\n"
+ + "\texclusion\030\002"
+ + " \001(\01323.google.analytics.data.v1alpha.UserSegmentExclusion\"\303\001\n"
+ "\023UserSegmentCriteria\022V\n"
- + "\024and_condition_groups\030\001"
- + " \003(\01328.google.analytics.data.v1alpha.UserSegmentConditionGroup\022T\n"
- + "\023and_sequence_groups\030\002 \003(\01327.google.anal"
- + "ytics.data.v1alpha.UserSegmentSequenceGroup\"\305\001\n"
+ + "\024and_condition_groups\030\001 \003(\01328"
+ + ".google.analytics.data.v1alpha.UserSegmentConditionGroup\022T\n"
+ + "\023and_sequence_groups\030\002"
+ + " \003(\01327.google.analytics.data.v1alpha.UserSegmentSequenceGroup\"\305\001\n"
+ "\031UserSegmentConditionGroup\022M\n"
- + "\021condition_scoping\030\001"
- + " \001(\01622.google.analytics.data.v1alpha.UserCriteriaScoping\022Y\n"
- + "\031segment_filter_expression\030\002 \001(\01326.google.ana"
- + "lytics.data.v1alpha.SegmentFilterExpression\"\364\001\n"
+ + "\021condition_scoping\030\001 \001(\0162"
+ + "2.google.analytics.data.v1alpha.UserCriteriaScoping\022Y\n"
+ + "\031segment_filter_expression\030\002"
+ + " \001(\01326.google.analytics.data.v1alpha.SegmentFilterExpression\"\364\001\n"
+ "\030UserSegmentSequenceGroup\022L\n"
- + "\020sequence_scoping\030\001"
- + " \001(\01622.google.analytics.data.v1alpha.UserCriteriaScoping\022<\n"
+ + "\020sequence_scoping\030\001 \001(\01622."
+ + "google.analytics.data.v1alpha.UserCriteriaScoping\022<\n"
+ "\031sequence_maximum_duration\030\002 \001(\0132\031.google.protobuf.Duration\022L\n"
- + "\023user_sequence_steps\030\003 \003("
- + "\0132/.google.analytics.data.v1alpha.UserSequenceStep\"\330\001\n"
+ + "\023user_sequence_steps\030\003"
+ + " \003(\0132/.google.analytics.data.v1alpha.UserSequenceStep\"\330\001\n"
+ "\020UserSequenceStep\022\037\n"
+ "\027is_directly_followed_by\030\001 \001(\010\022H\n"
+ "\014step_scoping\030\002"
+ " \001(\01622.google.analytics.data.v1alpha.UserCriteriaScoping\022Y\n"
- + "\031segment_filter_expression\030\003"
- + " \001(\01326.google.analytics.data.v1alpha.SegmentFilterExpression\"\302\001\n"
+ + "\031segment_filter_expression\030\003 \001(\01326.googl"
+ + "e.analytics.data.v1alpha.SegmentFilterExpression\"\302\001\n"
+ "\024UserSegmentExclusion\022U\n"
- + "\027user_exclusion_duration\030\001"
- + " \001(\01624.google.analytics.data.v1alpha.UserExclusionDuration\022S\n"
- + "\027user_exclusion_criteria\030\002"
- + " \001(\01322.google.analytics.data.v1alpha.UserSegmentCriteria\"\266\001\n"
+ + "\027user_exclusion_duration\030\001 \001(\01624.google.anal"
+ + "ytics.data.v1alpha.UserExclusionDuration\022S\n"
+ + "\027user_exclusion_criteria\030\002 \001(\01322.goog"
+ + "le.analytics.data.v1alpha.UserSegmentCriteria\"\266\001\n"
+ "\016SessionSegment\022Y\n"
- + "\032session_inclusion_criteria\030\001 \001("
- + "\01325.google.analytics.data.v1alpha.SessionSegmentCriteria\022I\n"
- + "\texclusion\030\002 \001(\01326.go"
- + "ogle.analytics.data.v1alpha.SessionSegmentExclusion\"s\n"
+ + "\032session_inclusion_criteria\030\001"
+ + " \001(\01325.google.analytics.data.v1alpha.SessionSegmentCriteria\022I\n"
+ + "\texclusion\030\002"
+ + " \001(\01326.google.analytics.data.v1alpha.SessionSegmentExclusion\"s\n"
+ "\026SessionSegmentCriteria\022Y\n"
- + "\024and_condition_groups\030\001 \003(\0132;.google.ana"
- + "lytics.data.v1alpha.SessionSegmentConditionGroup\"\313\001\n"
+ + "\024and_condition_groups\030\001"
+ + " \003(\0132;.google.analytics.data.v1alpha.SessionSegmentConditionGroup\"\313\001\n"
+ "\034SessionSegmentConditionGroup\022P\n"
- + "\021condition_scoping\030\001 \001(\01625.google.an"
- + "alytics.data.v1alpha.SessionCriteriaScoping\022Y\n"
- + "\031segment_filter_expression\030\002 \001(\01326"
- + ".google.analytics.data.v1alpha.SegmentFilterExpression\"\321\001\n"
+ + "\021condition_scoping\030\001"
+ + " \001(\01625.google.analytics.data.v1alpha.SessionCriteriaScoping\022Y\n"
+ + "\031segment_filter_expression\030\002"
+ + " \001(\01326.google.analytics.data.v1alpha.SegmentFilterExpression\"\321\001\n"
+ "\027SessionSegmentExclusion\022[\n"
- + "\032session_exclusion_duration\030\001 \001(\01627"
- + ".google.analytics.data.v1alpha.SessionExclusionDuration\022Y\n"
- + "\032session_exclusion_criteria\030\002"
- + " \001(\01325.google.analytics.data.v1alpha.SessionSegmentCriteria\"\256\001\n"
+ + "\032session_exclusion_duration\030\001"
+ + " \001(\01627.google.analytics.data.v1alpha.SessionExclusionDuration\022Y\n"
+ + "\032session_exclusion_criteria\030\002 \001(\01325.google."
+ + "analytics.data.v1alpha.SessionSegmentCriteria\"\256\001\n"
+ "\014EventSegment\022U\n"
- + "\030event_inclusion_criteria\030\001 \001(\01323."
- + "google.analytics.data.v1alpha.EventSegmentCriteria\022G\n"
- + "\texclusion\030\002 \001(\01324.google.a"
- + "nalytics.data.v1alpha.EventSegmentExclusion\"o\n"
+ + "\030event_inclusion_criteria\030\001"
+ + " \001(\01323.google.analytics.data.v1alpha.EventSegmentCriteria\022G\n"
+ + "\texclusion\030\002"
+ + " \001(\01324.google.analytics.data.v1alpha.EventSegmentExclusion\"o\n"
+ "\024EventSegmentCriteria\022W\n"
- + "\024and_condition_groups\030\001"
- + " \003(\01329.google.analytics.data.v1alpha.EventSegmentConditionGroup\"\307\001\n"
+ + "\024and_condition_groups\030\001 \003(\01329.g"
+ + "oogle.analytics.data.v1alpha.EventSegmentConditionGroup\"\307\001\n"
+ "\032EventSegmentConditionGroup\022N\n"
- + "\021condition_scoping\030\001"
- + " \001(\01623.google.analytics.data.v1alpha.EventCriteriaScoping\022Y\n"
- + "\031segment_filter_expression\030\002 \001(\01326.google.analytic"
- + "s.data.v1alpha.SegmentFilterExpression\"\307\001\n"
+ + "\021condition_scoping\030\001 \001(\01623.goog"
+ + "le.analytics.data.v1alpha.EventCriteriaScoping\022Y\n"
+ + "\031segment_filter_expression\030\002 \001("
+ + "\01326.google.analytics.data.v1alpha.SegmentFilterExpression\"\307\001\n"
+ "\025EventSegmentExclusion\022W\n"
- + "\030event_exclusion_duration\030\001"
- + " \001(\01625.google.analytics.data.v1alpha.EventExclusionDuration\022U\n"
- + "\030event_exclusion_criteria\030\002 \001(\01323.google.ana"
- + "lytics.data.v1alpha.EventSegmentCriteria\"\200\002\n"
+ + "\030event_exclusion_duration\030\001 \001(\01625."
+ + "google.analytics.data.v1alpha.EventExclusionDuration\022U\n"
+ + "\030event_exclusion_criteria\030\002"
+ + " \001(\01323.google.analytics.data.v1alpha.EventSegmentCriteria\"\200\002\n"
+ "\007Segment\022\014\n"
+ "\004name\030\001 \001(\t\022B\n"
+ "\014user_segment\030\002"
+ " \001(\0132*.google.analytics.data.v1alpha.UserSegmentH\000\022H\n"
- + "\017session_segment\030\003 \001(\0132"
- + "-.google.analytics.data.v1alpha.SessionSegmentH\000\022D\n\r"
- + "event_segment\030\004 \001(\0132+.google"
- + ".analytics.data.v1alpha.EventSegmentH\000B\023\n"
+ + "\017session_segment\030\003"
+ + " \001(\0132-.google.analytics.data.v1alpha.SessionSegmentH\000\022D\n\r"
+ + "event_segment\030\004"
+ + " \001(\0132+.google.analytics.data.v1alpha.EventSegmentH\000B\023\n"
+ "\021one_segment_scope\"\257\003\n"
+ "\027SegmentFilterExpression\022O\n"
- + "\tand_group\030\001 \001(\0132:.google.anal"
- + "ytics.data.v1alpha.SegmentFilterExpressionListH\000\022N\n"
- + "\010or_group\030\002 \001(\0132:.google.anal"
- + "ytics.data.v1alpha.SegmentFilterExpressionListH\000\022P\n"
- + "\016not_expression\030\003 \001(\01326.googl"
- + "e.analytics.data.v1alpha.SegmentFilterExpressionH\000\022F\n"
- + "\016segment_filter\030\004 \001(\0132,.goo"
- + "gle.analytics.data.v1alpha.SegmentFilterH\000\022Q\n"
- + "\024segment_event_filter\030\005 \001(\01321.googl"
- + "e.analytics.data.v1alpha.SegmentEventFilterH\000B\006\n"
+ + "\tand_group\030\001"
+ + " \001(\0132:.google.analytics.data.v1alpha.SegmentFilterExpressionListH\000\022N\n"
+ + "\010or_group\030\002"
+ + " \001(\0132:.google.analytics.data.v1alpha.SegmentFilterExpressionListH\000\022P\n"
+ + "\016not_expression\030\003"
+ + " \001(\01326.google.analytics.data.v1alpha.SegmentFilterExpressionH\000\022F\n"
+ + "\016segment_filter\030\004"
+ + " \001(\0132,.google.analytics.data.v1alpha.SegmentFilterH\000\022Q\n"
+ + "\024segment_event_filter\030\005"
+ + " \001(\01321.google.analytics.data.v1alpha.SegmentEventFilterH\000B\006\n"
+ "\004expr\"j\n"
+ "\033SegmentFilterExpressionList\022K\n"
- + "\013expressions\030\001 \003(\01326.google.analy"
- + "tics.data.v1alpha.SegmentFilterExpression\"\233\003\n\r"
+ + "\013expressions\030\001"
+ + " \003(\01326.google.analytics.data.v1alpha.SegmentFilterExpression\"\233\003\n\r"
+ "SegmentFilter\022\022\n\n"
+ "field_name\030\001 \001(\t\022D\n\r"
- + "string_filter\030\004"
- + " \001(\0132+.google.analytics.data.v1alpha.StringFilterH\000\022E\n"
- + "\016in_list_filter\030\005"
- + " \001(\0132+.google.analytics.data.v1alpha.InListFilterH\000\022F\n"
+ + "string_filter\030\004 \001("
+ + "\0132+.google.analytics.data.v1alpha.StringFilterH\000\022E\n"
+ + "\016in_list_filter\030\005 \001(\0132+.googl"
+ + "e.analytics.data.v1alpha.InListFilterH\000\022F\n"
+ "\016numeric_filter\030\006"
+ " \001(\0132,.google.analytics.data.v1alpha.NumericFilterH\000\022F\n"
- + "\016between_filter\030\007 \001(\0132,.g"
- + "oogle.analytics.data.v1alpha.BetweenFilterH\000\022K\n"
- + "\016filter_scoping\030\010 \001(\01323.google.an"
- + "alytics.data.v1alpha.SegmentFilterScopingB\014\n\n"
+ + "\016between_filter\030\007"
+ + " \001(\0132,.google.analytics.data.v1alpha.BetweenFilterH\000\022K\n"
+ + "\016filter_scoping\030\010"
+ + " \001(\01323.google.analytics.data.v1alpha.SegmentFilterScopingB\014\n\n"
+ "one_filter\"R\n"
+ "\024SegmentFilterScoping\022!\n"
+ "\024at_any_point_in_time\030\001 \001(\010H\000\210\001\001B\027\n"
+ "\025_at_any_point_in_time\"\327\001\n"
+ "\022SegmentEventFilter\022\027\n\n"
+ "event_name\030\001 \001(\tH\000\210\001\001\022q\n"
- + "#segment_parameter_filter_expression\030\002 \001(\0132?.googl"
- + "e.analytics.data.v1alpha.SegmentParameterFilterExpressionH\001\210\001\001B\r\n"
+ + "#segment_parameter_filter_expression\030\002 \001(\0132?.google.analytics.data.v1al"
+ + "pha.SegmentParameterFilterExpressionH\001\210\001\001B\r\n"
+ "\013_event_nameB&\n"
+ "$_segment_parameter_filter_expression\"\223\003\n"
+ " SegmentParameterFilterExpression\022X\n"
- + "\tand_group\030\001 \001(\0132C.google.analytics.data.v1"
- + "alpha.SegmentParameterFilterExpressionListH\000\022W\n"
- + "\010or_group\030\002 \001(\0132C.google.analytic"
- + "s.data.v1alpha.SegmentParameterFilterExpressionListH\000\022Y\n"
- + "\016not_expression\030\003 \001(\0132?."
- + "google.analytics.data.v1alpha.SegmentParameterFilterExpressionH\000\022Y\n"
- + "\030segment_parameter_filter\030\004"
- + " \001(\01325.google.analytics.data.v1alpha.SegmentParameterFilterH\000B\006\n"
+ + "\tand_group\030\001 \001(\0132C.googl"
+ + "e.analytics.data.v1alpha.SegmentParameterFilterExpressionListH\000\022W\n"
+ + "\010or_group\030\002 \001("
+ + "\0132C.google.analytics.data.v1alpha.SegmentParameterFilterExpressionListH\000\022Y\n"
+ + "\016not_expression\030\003 \001(\0132?.google.analytics.data"
+ + ".v1alpha.SegmentParameterFilterExpressionH\000\022Y\n"
+ + "\030segment_parameter_filter\030\004 \001(\01325."
+ + "google.analytics.data.v1alpha.SegmentParameterFilterH\000B\006\n"
+ "\004expr\"|\n"
+ "$SegmentParameterFilterExpressionList\022T\n"
- + "\013expressions\030\001 \003(\0132?.google.analyt"
- + "ics.data.v1alpha.SegmentParameterFilterExpression\"\351\003\n"
+ + "\013expressions\030\001 "
+ + "\003(\0132?.google.analytics.data.v1alpha.SegmentParameterFilterExpression\"\351\003\n"
+ "\026SegmentParameterFilter\022\036\n"
+ "\024event_parameter_name\030\001 \001(\tH\000\022\035\n"
+ "\023item_parameter_name\030\002 \001(\tH\000\022D\n\r"
- + "string_filter\030\004 \001"
- + "(\0132+.google.analytics.data.v1alpha.StringFilterH\001\022E\n"
- + "\016in_list_filter\030\005 \001(\0132+.goog"
- + "le.analytics.data.v1alpha.InListFilterH\001\022F\n"
- + "\016numeric_filter\030\006"
- + " \001(\0132,.google.analytics.data.v1alpha.NumericFilterH\001\022F\n"
- + "\016between_filter\030\007"
- + " \001(\0132,.google.analytics.data.v1alpha.BetweenFilterH\001\022T\n"
- + "\016filter_scoping\030\010"
- + " \001(\0132<.google.analytics.data.v1alpha.SegmentParameterFilterScopingB\017\n\r"
+ + "string_filter\030\004"
+ + " \001(\0132+.google.analytics.data.v1alpha.StringFilterH\001\022E\n"
+ + "\016in_list_filter\030\005"
+ + " \001(\0132+.google.analytics.data.v1alpha.InListFilterH\001\022F\n"
+ + "\016numeric_filter\030\006 "
+ + "\001(\0132,.google.analytics.data.v1alpha.NumericFilterH\001\022F\n"
+ + "\016between_filter\030\007 \001(\0132,.go"
+ + "ogle.analytics.data.v1alpha.BetweenFilterH\001\022T\n"
+ + "\016filter_scoping\030\010 \001(\0132<.google.ana"
+ + "lytics.data.v1alpha.SegmentParameterFilterScopingB\017\n\r"
+ "one_parameterB\014\n\n"
+ "one_filter\"Y\n"
+ "\035SegmentParameterFilterScoping\022 \n"
+ "\023in_any_n_day_period\030\001 \001(\003H\000\210\001\001B\026\n"
+ "\024_in_any_n_day_period\"\262\003\n"
+ "\026FunnelFilterExpression\022N\n"
- + "\tand_group\030\001 \001(\01329"
- + ".google.analytics.data.v1alpha.FunnelFilterExpressionListH\000\022M\n"
- + "\010or_group\030\002 \001(\01329."
- + "google.analytics.data.v1alpha.FunnelFilterExpressionListH\000\022O\n"
- + "\016not_expression\030\003 \001"
- + "(\01325.google.analytics.data.v1alpha.FunnelFilterExpressionH\000\022O\n"
- + "\023funnel_field_filter\030\004"
- + " \001(\01320.google.analytics.data.v1alpha.FunnelFieldFilterH\000\022O\n"
- + "\023funnel_event_filter\030\005"
- + " \001(\01320.google.analytics.data.v1alpha.FunnelEventFilterH\000B\006\n"
+ + "\tand_group\030\001 \001(\01329.google.analytics.dat"
+ + "a.v1alpha.FunnelFilterExpressionListH\000\022M\n"
+ + "\010or_group\030\002"
+ + " \001(\01329.google.analytics.data.v1alpha.FunnelFilterExpressionListH\000\022O\n"
+ + "\016not_expression\030\003 \001(\01325.google.analytics"
+ + ".data.v1alpha.FunnelFilterExpressionH\000\022O\n"
+ + "\023funnel_field_filter\030\004 \001(\01320.google.ana"
+ + "lytics.data.v1alpha.FunnelFieldFilterH\000\022O\n"
+ + "\023funnel_event_filter\030\005 \001(\01320.google.an"
+ + "alytics.data.v1alpha.FunnelEventFilterH\000B\006\n"
+ "\004expr\"h\n"
+ "\032FunnelFilterExpressionList\022J\n"
- + "\013expressions\030\001 \003(\013"
- + "25.google.analytics.data.v1alpha.FunnelFilterExpression\"\322\002\n"
- + "\021FunnelFieldFilter\022\022\n"
- + "\n"
+ + "\013expressions\030\001"
+ + " \003(\01325.google.analytics.data.v1alpha.FunnelFilterExpression\"\322\002\n"
+ + "\021FunnelFieldFilter\022\022\n\n"
+ "field_name\030\001 \001(\t\022D\n\r"
- + "string_filter\030\004 \001(\013"
- + "2+.google.analytics.data.v1alpha.StringFilterH\000\022E\n"
- + "\016in_list_filter\030\005 \001(\0132+.google"
- + ".analytics.data.v1alpha.InListFilterH\000\022F\n"
- + "\016numeric_filter\030\006"
- + " \001(\0132,.google.analytics.data.v1alpha.NumericFilterH\000\022F\n"
- + "\016between_filter\030\007"
- + " \001(\0132,.google.analytics.data.v1alpha.BetweenFilterH\000B\014\n\n"
+ + "string_filter\030\004"
+ + " \001(\0132+.google.analytics.data.v1alpha.StringFilterH\000\022E\n"
+ + "\016in_list_filter\030\005"
+ + " \001(\0132+.google.analytics.data.v1alpha.InListFilterH\000\022F\n"
+ + "\016numeric_filter\030\006 \001("
+ + "\0132,.google.analytics.data.v1alpha.NumericFilterH\000\022F\n"
+ + "\016between_filter\030\007 \001(\0132,.goog"
+ + "le.analytics.data.v1alpha.BetweenFilterH\000B\014\n\n"
+ "one_filter\"\323\001\n"
- + "\021FunnelEventFilter\022\027\n\n"
+ + "\021FunnelEventFilter\022\027\n"
+ + "\n"
+ "event_name\030\001 \001(\tH\000\210\001\001\022o\n"
- + "\"funnel_parameter_filter_expression\030\002"
- + " \001(\0132>.google.analytics.data.v1alpha.FunnelParameterFilterExpressionH\001\210\001\001B\r\n"
+ + "\"funnel_parameter_filter_expression\030\002 \001(\0132>.google.anal"
+ + "ytics.data.v1alpha.FunnelParameterFilterExpressionH\001\210\001\001B\r\n"
+ "\013_event_nameB%\n"
+ "#_funnel_parameter_filter_expression\"\215\003\n"
+ "\037FunnelParameterFilterExpression\022W\n"
- + "\tand_group\030\001 \001(\0132B.google.analy"
- + "tics.data.v1alpha.FunnelParameterFilterExpressionListH\000\022V\n"
- + "\010or_group\030\002 \001(\0132B.goog"
- + "le.analytics.data.v1alpha.FunnelParameterFilterExpressionListH\000\022X\n"
- + "\016not_expression\030\003"
- + " \001(\0132>.google.analytics.data.v1alpha.FunnelParameterFilterExpressionH\000\022W\n"
- + "\027funnel_parameter_filter\030\004 \001(\01324.google.anal"
- + "ytics.data.v1alpha.FunnelParameterFilterH\000B\006\n"
+ + "\tand_group\030\001"
+ + " \001(\0132B.google.analytics.data.v1alpha.FunnelParameterFilterExpressionListH\000\022V\n"
+ + "\010or_group\030\002 \001(\0132B.google.analytics.data.v1a"
+ + "lpha.FunnelParameterFilterExpressionListH\000\022X\n"
+ + "\016not_expression\030\003 \001(\0132>.google.anal"
+ + "ytics.data.v1alpha.FunnelParameterFilterExpressionH\000\022W\n"
+ + "\027funnel_parameter_filter\030\004"
+ + " \001(\01324.google.analytics.data.v1alpha.FunnelParameterFilterH\000B\006\n"
+ "\004expr\"z\n"
+ "#FunnelParameterFilterExpressionList\022S\n"
- + "\013expressions\030\001 \003(\0132>.google."
- + "analytics.data.v1alpha.FunnelParameterFilterExpression\"\222\003\n"
+ + "\013expressions\030\001"
+ + " \003(\0132>.google.analytics.data.v1alpha.FunnelParameterFilterExpression\"\222\003\n"
+ "\025FunnelParameterFilter\022\036\n"
+ "\024event_parameter_name\030\001 \001(\tH\000\022\035\n"
+ "\023item_parameter_name\030\002 \001(\tH\000\022D\n\r"
+ "string_filter\030\004"
+ " \001(\0132+.google.analytics.data.v1alpha.StringFilterH\001\022E\n"
- + "\016in_list_filter\030\005 \001(\0132+."
- + "google.analytics.data.v1alpha.InListFilterH\001\022F\n"
+ + "\016in_list_filter\030\005"
+ + " \001(\0132+.google.analytics.data.v1alpha.InListFilterH\001\022F\n"
+ "\016numeric_filter\030\006"
+ " \001(\0132,.google.analytics.data.v1alpha.NumericFilterH\001\022F\n"
- + "\016between_filter\030\007"
- + " \001(\0132,.google.analytics.data.v1alpha.BetweenFilterH\001B\017\n\r"
+ + "\016between_filter\030\007 \001(\0132"
+ + ",.google.analytics.data.v1alpha.BetweenFilterH\001B\017\n\r"
+ "one_parameterB\014\n\n"
+ "one_filter\"e\n"
+ "\026FunnelResponseMetadata\022K\n"
- + "\022sampling_metadatas\030\001 \003(\0132/.goog"
- + "le.analytics.data.v1alpha.SamplingMetadata\"K\n"
+ + "\022sampling_metadatas\030\001"
+ + " \003(\0132/.google.analytics.data.v1alpha.SamplingMetadata\"K\n"
+ "\020SamplingMetadata\022\032\n"
+ "\022samples_read_count\030\001 \001(\003\022\033\n"
+ "\023sampling_space_size\030\002 \001(\003\"\337\001\n"
+ "\016ConversionSpec\022\032\n"
+ "\022conversion_actions\030\001 \003(\t\022Y\n"
- + "\021attribution_model\030\002 \001(\0162>.goog"
- + "le.analytics.data.v1alpha.ConversionSpec.AttributionModel\"V\n"
+ + "\021attribution_model\030\002"
+ + " \001(\0162>.google.analytics.data.v1alpha.ConversionSpec.AttributionModel\"V\n"
+ "\020AttributionModel\022!\n"
+ "\035ATTRIBUTION_MODEL_UNSPECIFIED\020\000\022\017\n"
+ "\013DATA_DRIVEN\020\001\022\016\n\n"
@@ -806,8 +888,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\004type\030\005 \001(\0162).google.analytics.data.v1alpha.MetricType\022\022\n\n"
+ "expression\030\006 \001(\t\022\031\n"
+ "\021custom_definition\030\007 \001(\010\022T\n"
- + "\017blocked_reasons\030\010 \003(\0162;.google."
- + "analytics.data.v1alpha.MetricMetadata.BlockedReason\022\020\n"
+ + "\017blocked_reas",
+ "ons\030\010 \003(\0162;.google.analytics.data.v1alpha.MetricMetadata.BlockedReason\022\020\n"
+ "\010category\030\t \001(\t\0228\n"
+ "\010sections\030\n"
+ " \003(\0162&.google.analytics.data.v1alpha.Section\"\\\n\r"
@@ -821,7 +903,11 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\013description\030\003 \001(\t\"E\n"
+ "\022ConversionMetadata\022\031\n"
+ "\021conversion_action\030\001 \001(\t\022\024\n"
- + "\014display_name\030\002 \001(\t*O\n"
+ + "\014display_name\030\002 \001(\t\"\234\001\n"
+ + "\021PropertyChatQuota\022B\n"
+ + "\016tokens_per_day\030\001 \001(\0132*.go"
+ + "ogle.analytics.data.v1alpha.QuotaStatus\022C\n"
+ + "\017tokens_per_hour\030\002 \001(\0132*.google.analytics.data.v1alpha.QuotaStatus*O\n"
+ "\007Section\022\027\n"
+ "\023SECTION_UNSPECIFIED\020\000\022\022\n"
+ "\016SECTION_REPORT\020\001\022\027\n"
@@ -866,17 +952,22 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "TYPE_STANDARD\020\010\022\021\n\r"
+ "TYPE_CURRENCY\020\t\022\r\n"
+ "\tTYPE_FEET\020\n"
- + "\022\016\n",
- "\nTYPE_MILES\020\013\022\017\n\013TYPE_METERS\020\014\022\023\n\017TYPE_K"
- + "ILOMETERS\020\r*_\n\024RestrictedMetricType\022&\n\"R"
- + "ESTRICTED_METRIC_TYPE_UNSPECIFIED\020\000\022\r\n\tC"
- + "OST_DATA\020\001\022\020\n\014REVENUE_DATA\020\002*S\n\rSampling"
- + "Level\022\036\n\032SAMPLING_LEVEL_UNSPECIFIED\020\000\022\007\n"
- + "\003LOW\020\001\022\n\n\006MEDIUM\020\002\022\r\n\tUNSAMPLED\020\003B{\n!com"
- + ".google.analytics.data.v1alphaB\021Reportin"
- + "gApiProtoP\001ZAgoogle.golang.org/genproto/"
- + "googleapis/analytics/data/v1alpha;datab\006"
- + "proto3"
+ + "\022\016\n\n"
+ + "TYPE_MILES\020\013\022\017\n"
+ + "\013TYPE_METERS\020\014\022\023\n"
+ + "\017TYPE_KILOMETERS\020\r"
+ + "*_\n"
+ + "\024RestrictedMetricType\022&\n"
+ + "\"RESTRICTED_METRIC_TYPE_UNSPECIFIED\020\000\022\r\n"
+ + "\tCOST_DATA\020\001\022\020\n"
+ + "\014REVENUE_DATA\020\002*S\n\r"
+ + "SamplingLevel\022\036\n"
+ + "\032SAMPLING_LEVEL_UNSPECIFIED\020\000\022\007\n"
+ + "\003LOW\020\001\022\n\n"
+ + "\006MEDIUM\020\002\022\r\n"
+ + "\tUNSAMPLED\020\003B{\n"
+ + "!com.google.analytics.data.v1alphaB\021ReportingApiProtoP\001ZAgoogle.go"
+ + "lang.org/genproto/googleapis/analytics/data/v1alpha;datab\006proto3"
};
descriptor =
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
@@ -1088,6 +1179,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"SubjectToThresholding",
"SamplingMetadatas",
"Section",
+ "DataTruncationReasons",
});
internal_static_google_analytics_data_v1alpha_ResponseMetaData_SchemaRestrictionResponse_descriptor =
internal_static_google_analytics_data_v1alpha_ResponseMetaData_descriptor.getNestedType(0);
@@ -1106,6 +1198,26 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
new java.lang.String[] {
"MetricName", "RestrictedMetricTypes",
});
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_descriptor =
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_descriptor.getNestedType(1);
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_descriptor,
+ new java.lang.String[] {
+ "DataTruncationType",
+ "DataTruncationMessage",
+ "DataTruncationDate",
+ "DataTruncationDateRanges",
+ });
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_DataTruncationDateRange_descriptor =
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_descriptor
+ .getNestedType(0);
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_DataTruncationDateRange_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_DataTruncationDateRange_descriptor,
+ new java.lang.String[] {
+ "StartDate", "EndDate",
+ });
internal_static_google_analytics_data_v1alpha_DimensionHeader_descriptor =
getDescriptor().getMessageType(20);
internal_static_google_analytics_data_v1alpha_DimensionHeader_fieldAccessorTable =
@@ -1207,8 +1319,48 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
new java.lang.String[] {
"DimensionHeaders", "MetricHeaders", "Rows", "Metadata",
});
- internal_static_google_analytics_data_v1alpha_UserSegment_descriptor =
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_descriptor =
getDescriptor().getMessageType(32);
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_descriptor,
+ new java.lang.String[] {
+ "Text", "Table", "Block",
+ });
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableCell_descriptor =
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_descriptor.getNestedType(0);
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableCell_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableCell_descriptor,
+ new java.lang.String[] {
+ "Value",
+ });
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableHeader_descriptor =
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_descriptor.getNestedType(1);
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableHeader_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableHeader_descriptor,
+ new java.lang.String[] {
+ "Header", "DataType",
+ });
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableRow_descriptor =
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_descriptor.getNestedType(2);
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableRow_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableRow_descriptor,
+ new java.lang.String[] {
+ "Columns",
+ });
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTable_descriptor =
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_descriptor.getNestedType(3);
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTable_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTable_descriptor,
+ new java.lang.String[] {
+ "Headers", "Rows",
+ });
+ internal_static_google_analytics_data_v1alpha_UserSegment_descriptor =
+ getDescriptor().getMessageType(33);
internal_static_google_analytics_data_v1alpha_UserSegment_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_UserSegment_descriptor,
@@ -1216,7 +1368,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"UserInclusionCriteria", "Exclusion",
});
internal_static_google_analytics_data_v1alpha_UserSegmentCriteria_descriptor =
- getDescriptor().getMessageType(33);
+ getDescriptor().getMessageType(34);
internal_static_google_analytics_data_v1alpha_UserSegmentCriteria_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_UserSegmentCriteria_descriptor,
@@ -1224,7 +1376,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"AndConditionGroups", "AndSequenceGroups",
});
internal_static_google_analytics_data_v1alpha_UserSegmentConditionGroup_descriptor =
- getDescriptor().getMessageType(34);
+ getDescriptor().getMessageType(35);
internal_static_google_analytics_data_v1alpha_UserSegmentConditionGroup_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_UserSegmentConditionGroup_descriptor,
@@ -1232,7 +1384,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"ConditionScoping", "SegmentFilterExpression",
});
internal_static_google_analytics_data_v1alpha_UserSegmentSequenceGroup_descriptor =
- getDescriptor().getMessageType(35);
+ getDescriptor().getMessageType(36);
internal_static_google_analytics_data_v1alpha_UserSegmentSequenceGroup_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_UserSegmentSequenceGroup_descriptor,
@@ -1240,7 +1392,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"SequenceScoping", "SequenceMaximumDuration", "UserSequenceSteps",
});
internal_static_google_analytics_data_v1alpha_UserSequenceStep_descriptor =
- getDescriptor().getMessageType(36);
+ getDescriptor().getMessageType(37);
internal_static_google_analytics_data_v1alpha_UserSequenceStep_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_UserSequenceStep_descriptor,
@@ -1248,7 +1400,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"IsDirectlyFollowedBy", "StepScoping", "SegmentFilterExpression",
});
internal_static_google_analytics_data_v1alpha_UserSegmentExclusion_descriptor =
- getDescriptor().getMessageType(37);
+ getDescriptor().getMessageType(38);
internal_static_google_analytics_data_v1alpha_UserSegmentExclusion_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_UserSegmentExclusion_descriptor,
@@ -1256,7 +1408,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"UserExclusionDuration", "UserExclusionCriteria",
});
internal_static_google_analytics_data_v1alpha_SessionSegment_descriptor =
- getDescriptor().getMessageType(38);
+ getDescriptor().getMessageType(39);
internal_static_google_analytics_data_v1alpha_SessionSegment_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SessionSegment_descriptor,
@@ -1264,7 +1416,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"SessionInclusionCriteria", "Exclusion",
});
internal_static_google_analytics_data_v1alpha_SessionSegmentCriteria_descriptor =
- getDescriptor().getMessageType(39);
+ getDescriptor().getMessageType(40);
internal_static_google_analytics_data_v1alpha_SessionSegmentCriteria_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SessionSegmentCriteria_descriptor,
@@ -1272,7 +1424,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"AndConditionGroups",
});
internal_static_google_analytics_data_v1alpha_SessionSegmentConditionGroup_descriptor =
- getDescriptor().getMessageType(40);
+ getDescriptor().getMessageType(41);
internal_static_google_analytics_data_v1alpha_SessionSegmentConditionGroup_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SessionSegmentConditionGroup_descriptor,
@@ -1280,7 +1432,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"ConditionScoping", "SegmentFilterExpression",
});
internal_static_google_analytics_data_v1alpha_SessionSegmentExclusion_descriptor =
- getDescriptor().getMessageType(41);
+ getDescriptor().getMessageType(42);
internal_static_google_analytics_data_v1alpha_SessionSegmentExclusion_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SessionSegmentExclusion_descriptor,
@@ -1288,7 +1440,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"SessionExclusionDuration", "SessionExclusionCriteria",
});
internal_static_google_analytics_data_v1alpha_EventSegment_descriptor =
- getDescriptor().getMessageType(42);
+ getDescriptor().getMessageType(43);
internal_static_google_analytics_data_v1alpha_EventSegment_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_EventSegment_descriptor,
@@ -1296,7 +1448,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"EventInclusionCriteria", "Exclusion",
});
internal_static_google_analytics_data_v1alpha_EventSegmentCriteria_descriptor =
- getDescriptor().getMessageType(43);
+ getDescriptor().getMessageType(44);
internal_static_google_analytics_data_v1alpha_EventSegmentCriteria_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_EventSegmentCriteria_descriptor,
@@ -1304,7 +1456,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"AndConditionGroups",
});
internal_static_google_analytics_data_v1alpha_EventSegmentConditionGroup_descriptor =
- getDescriptor().getMessageType(44);
+ getDescriptor().getMessageType(45);
internal_static_google_analytics_data_v1alpha_EventSegmentConditionGroup_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_EventSegmentConditionGroup_descriptor,
@@ -1312,7 +1464,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"ConditionScoping", "SegmentFilterExpression",
});
internal_static_google_analytics_data_v1alpha_EventSegmentExclusion_descriptor =
- getDescriptor().getMessageType(45);
+ getDescriptor().getMessageType(46);
internal_static_google_analytics_data_v1alpha_EventSegmentExclusion_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_EventSegmentExclusion_descriptor,
@@ -1320,7 +1472,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"EventExclusionDuration", "EventExclusionCriteria",
});
internal_static_google_analytics_data_v1alpha_Segment_descriptor =
- getDescriptor().getMessageType(46);
+ getDescriptor().getMessageType(47);
internal_static_google_analytics_data_v1alpha_Segment_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_Segment_descriptor,
@@ -1328,7 +1480,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Name", "UserSegment", "SessionSegment", "EventSegment", "OneSegmentScope",
});
internal_static_google_analytics_data_v1alpha_SegmentFilterExpression_descriptor =
- getDescriptor().getMessageType(47);
+ getDescriptor().getMessageType(48);
internal_static_google_analytics_data_v1alpha_SegmentFilterExpression_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentFilterExpression_descriptor,
@@ -1336,7 +1488,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"AndGroup", "OrGroup", "NotExpression", "SegmentFilter", "SegmentEventFilter", "Expr",
});
internal_static_google_analytics_data_v1alpha_SegmentFilterExpressionList_descriptor =
- getDescriptor().getMessageType(48);
+ getDescriptor().getMessageType(49);
internal_static_google_analytics_data_v1alpha_SegmentFilterExpressionList_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentFilterExpressionList_descriptor,
@@ -1344,7 +1496,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Expressions",
});
internal_static_google_analytics_data_v1alpha_SegmentFilter_descriptor =
- getDescriptor().getMessageType(49);
+ getDescriptor().getMessageType(50);
internal_static_google_analytics_data_v1alpha_SegmentFilter_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentFilter_descriptor,
@@ -1358,7 +1510,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"OneFilter",
});
internal_static_google_analytics_data_v1alpha_SegmentFilterScoping_descriptor =
- getDescriptor().getMessageType(50);
+ getDescriptor().getMessageType(51);
internal_static_google_analytics_data_v1alpha_SegmentFilterScoping_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentFilterScoping_descriptor,
@@ -1366,7 +1518,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"AtAnyPointInTime",
});
internal_static_google_analytics_data_v1alpha_SegmentEventFilter_descriptor =
- getDescriptor().getMessageType(51);
+ getDescriptor().getMessageType(52);
internal_static_google_analytics_data_v1alpha_SegmentEventFilter_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentEventFilter_descriptor,
@@ -1374,7 +1526,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"EventName", "SegmentParameterFilterExpression",
});
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterExpression_descriptor =
- getDescriptor().getMessageType(52);
+ getDescriptor().getMessageType(53);
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterExpression_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterExpression_descriptor,
@@ -1382,7 +1534,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"AndGroup", "OrGroup", "NotExpression", "SegmentParameterFilter", "Expr",
});
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterExpressionList_descriptor =
- getDescriptor().getMessageType(53);
+ getDescriptor().getMessageType(54);
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterExpressionList_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterExpressionList_descriptor,
@@ -1390,7 +1542,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Expressions",
});
internal_static_google_analytics_data_v1alpha_SegmentParameterFilter_descriptor =
- getDescriptor().getMessageType(54);
+ getDescriptor().getMessageType(55);
internal_static_google_analytics_data_v1alpha_SegmentParameterFilter_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentParameterFilter_descriptor,
@@ -1406,7 +1558,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"OneFilter",
});
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterScoping_descriptor =
- getDescriptor().getMessageType(55);
+ getDescriptor().getMessageType(56);
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterScoping_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SegmentParameterFilterScoping_descriptor,
@@ -1414,7 +1566,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"InAnyNDayPeriod",
});
internal_static_google_analytics_data_v1alpha_FunnelFilterExpression_descriptor =
- getDescriptor().getMessageType(56);
+ getDescriptor().getMessageType(57);
internal_static_google_analytics_data_v1alpha_FunnelFilterExpression_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_FunnelFilterExpression_descriptor,
@@ -1427,7 +1579,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Expr",
});
internal_static_google_analytics_data_v1alpha_FunnelFilterExpressionList_descriptor =
- getDescriptor().getMessageType(57);
+ getDescriptor().getMessageType(58);
internal_static_google_analytics_data_v1alpha_FunnelFilterExpressionList_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_FunnelFilterExpressionList_descriptor,
@@ -1435,7 +1587,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Expressions",
});
internal_static_google_analytics_data_v1alpha_FunnelFieldFilter_descriptor =
- getDescriptor().getMessageType(58);
+ getDescriptor().getMessageType(59);
internal_static_google_analytics_data_v1alpha_FunnelFieldFilter_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_FunnelFieldFilter_descriptor,
@@ -1448,7 +1600,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"OneFilter",
});
internal_static_google_analytics_data_v1alpha_FunnelEventFilter_descriptor =
- getDescriptor().getMessageType(59);
+ getDescriptor().getMessageType(60);
internal_static_google_analytics_data_v1alpha_FunnelEventFilter_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_FunnelEventFilter_descriptor,
@@ -1456,7 +1608,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"EventName", "FunnelParameterFilterExpression",
});
internal_static_google_analytics_data_v1alpha_FunnelParameterFilterExpression_descriptor =
- getDescriptor().getMessageType(60);
+ getDescriptor().getMessageType(61);
internal_static_google_analytics_data_v1alpha_FunnelParameterFilterExpression_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_FunnelParameterFilterExpression_descriptor,
@@ -1464,7 +1616,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"AndGroup", "OrGroup", "NotExpression", "FunnelParameterFilter", "Expr",
});
internal_static_google_analytics_data_v1alpha_FunnelParameterFilterExpressionList_descriptor =
- getDescriptor().getMessageType(61);
+ getDescriptor().getMessageType(62);
internal_static_google_analytics_data_v1alpha_FunnelParameterFilterExpressionList_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_FunnelParameterFilterExpressionList_descriptor,
@@ -1472,7 +1624,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Expressions",
});
internal_static_google_analytics_data_v1alpha_FunnelParameterFilter_descriptor =
- getDescriptor().getMessageType(62);
+ getDescriptor().getMessageType(63);
internal_static_google_analytics_data_v1alpha_FunnelParameterFilter_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_FunnelParameterFilter_descriptor,
@@ -1487,7 +1639,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"OneFilter",
});
internal_static_google_analytics_data_v1alpha_FunnelResponseMetadata_descriptor =
- getDescriptor().getMessageType(63);
+ getDescriptor().getMessageType(64);
internal_static_google_analytics_data_v1alpha_FunnelResponseMetadata_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_FunnelResponseMetadata_descriptor,
@@ -1495,7 +1647,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"SamplingMetadatas",
});
internal_static_google_analytics_data_v1alpha_SamplingMetadata_descriptor =
- getDescriptor().getMessageType(64);
+ getDescriptor().getMessageType(65);
internal_static_google_analytics_data_v1alpha_SamplingMetadata_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_SamplingMetadata_descriptor,
@@ -1503,7 +1655,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"SamplesReadCount", "SamplingSpaceSize",
});
internal_static_google_analytics_data_v1alpha_ConversionSpec_descriptor =
- getDescriptor().getMessageType(65);
+ getDescriptor().getMessageType(66);
internal_static_google_analytics_data_v1alpha_ConversionSpec_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_ConversionSpec_descriptor,
@@ -1511,7 +1663,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"ConversionActions", "AttributionModel",
});
internal_static_google_analytics_data_v1alpha_DimensionMetadata_descriptor =
- getDescriptor().getMessageType(66);
+ getDescriptor().getMessageType(67);
internal_static_google_analytics_data_v1alpha_DimensionMetadata_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_DimensionMetadata_descriptor,
@@ -1525,7 +1677,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Sections",
});
internal_static_google_analytics_data_v1alpha_MetricMetadata_descriptor =
- getDescriptor().getMessageType(67);
+ getDescriptor().getMessageType(68);
internal_static_google_analytics_data_v1alpha_MetricMetadata_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_MetricMetadata_descriptor,
@@ -1542,7 +1694,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"Sections",
});
internal_static_google_analytics_data_v1alpha_ComparisonMetadata_descriptor =
- getDescriptor().getMessageType(68);
+ getDescriptor().getMessageType(69);
internal_static_google_analytics_data_v1alpha_ComparisonMetadata_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_ComparisonMetadata_descriptor,
@@ -1550,13 +1702,21 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
"ApiName", "UiName", "Description",
});
internal_static_google_analytics_data_v1alpha_ConversionMetadata_descriptor =
- getDescriptor().getMessageType(69);
+ getDescriptor().getMessageType(70);
internal_static_google_analytics_data_v1alpha_ConversionMetadata_fieldAccessorTable =
new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
internal_static_google_analytics_data_v1alpha_ConversionMetadata_descriptor,
new java.lang.String[] {
"ConversionAction", "DisplayName",
});
+ internal_static_google_analytics_data_v1alpha_PropertyChatQuota_descriptor =
+ getDescriptor().getMessageType(71);
+ internal_static_google_analytics_data_v1alpha_PropertyChatQuota_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_analytics_data_v1alpha_PropertyChatQuota_descriptor,
+ new java.lang.String[] {
+ "TokensPerDay", "TokensPerHour",
+ });
descriptor.resolveAllFeaturesImmutable();
com.google.protobuf.DurationProto.getDescriptor();
}
diff --git a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseBlock.java b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseBlock.java
new file mode 100644
index 000000000000..579defab25cc
--- /dev/null
+++ b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseBlock.java
@@ -0,0 +1,5132 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/analytics/data/v1alpha/data.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.analytics.data.v1alpha;
+
+/**
+ *
+ *
+ * + * One block of structured data in chat response. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock} + */ +@com.google.protobuf.Generated +public final class ResponseBlock extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ResponseBlock) + ResponseBlockOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "ResponseBlock"); + } + + // Use ResponseBlock.newBuilder() to construct. + private ResponseBlock(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private ResponseBlock() {} + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ResponseBlock.class, + com.google.analytics.data.v1alpha.ResponseBlock.Builder.class); + } + + public interface DataTableCellOrBuilder + extends + // @@protoc_insertion_point(interface_extends:google.analytics.data.v1alpha.ResponseBlock.DataTableCell) + com.google.protobuf.MessageOrBuilder { + + /** + * + * + *
+ * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @return The value.
+ */
+ java.lang.String getValue();
+
+ /**
+ *
+ *
+ * + * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @return The bytes for value.
+ */
+ com.google.protobuf.ByteString getValueBytes();
+ }
+
+ /**
+ *
+ *
+ * + * A cell in a data table. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock.DataTableCell} + */ + public static final class DataTableCell extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ResponseBlock.DataTableCell) + DataTableCellOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "DataTableCell"); + } + + // Use DataTableCell.newBuilder() to construct. + private DataTableCell(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private DataTableCell() { + value_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableCell_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableCell_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.class, + com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.Builder.class); + } + + public static final int VALUE_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object value_ = ""; + + /** + * + * + *
+ * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @return The value.
+ */
+ @java.lang.Override
+ public java.lang.String getValue() {
+ java.lang.Object ref = value_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ value_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @return The bytes for value.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getValueBytes() {
+ java.lang.Object ref = value_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ value_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(value_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, value_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(value_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, value_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell other =
+ (com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell) obj;
+
+ if (!getValue().equals(other.getValue())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + VALUE_FIELD_NUMBER;
+ hash = (53 * hash) + getValue().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * A cell in a data table. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock.DataTableCell} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @return The value.
+ */
+ public java.lang.String getValue() {
+ java.lang.Object ref = value_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ value_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @return The bytes for value.
+ */
+ public com.google.protobuf.ByteString getValueBytes() {
+ java.lang.Object ref = value_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ value_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @param value The value to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValue(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ value_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearValue() {
+ value_ = getDefaultInstance().getValue();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The value of the cell. + *+ * + *
string value = 1;
+ *
+ * @param value The bytes for value to set.
+ * @return This builder for chaining.
+ */
+ public Builder setValueBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ value_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.ResponseBlock.DataTableCell)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.analytics.data.v1alpha.ResponseBlock.DataTableCell)
+ private static final com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell();
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser+ * The header name. + *+ * + *
string header = 1;
+ *
+ * @return The header.
+ */
+ java.lang.String getHeader();
+
+ /**
+ *
+ *
+ * + * The header name. + *+ * + *
string header = 1;
+ *
+ * @return The bytes for header.
+ */
+ com.google.protobuf.ByteString getHeaderBytes();
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @return The dataType.
+ */
+ java.lang.String getDataType();
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @return The bytes for dataType.
+ */
+ com.google.protobuf.ByteString getDataTypeBytes();
+ }
+
+ /**
+ *
+ *
+ * + * Describes a column header in a DataTable. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock.DataTableHeader} + */ + public static final class DataTableHeader extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ResponseBlock.DataTableHeader) + DataTableHeaderOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "DataTableHeader"); + } + + // Use DataTableHeader.newBuilder() to construct. + private DataTableHeader(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private DataTableHeader() { + header_ = ""; + dataType_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableHeader_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableHeader_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader.class, + com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader.Builder.class); + } + + public static final int HEADER_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object header_ = ""; + + /** + * + * + *
+ * The header name. + *+ * + *
string header = 1;
+ *
+ * @return The header.
+ */
+ @java.lang.Override
+ public java.lang.String getHeader() {
+ java.lang.Object ref = header_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ header_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The header name. + *+ * + *
string header = 1;
+ *
+ * @return The bytes for header.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getHeaderBytes() {
+ java.lang.Object ref = header_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ header_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DATA_TYPE_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object dataType_ = "";
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @return The dataType.
+ */
+ @java.lang.Override
+ public java.lang.String getDataType() {
+ java.lang.Object ref = dataType_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ dataType_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @return The bytes for dataType.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getDataTypeBytes() {
+ java.lang.Object ref = dataType_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ dataType_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(header_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, header_);
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataType_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 2, dataType_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(header_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, header_);
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(dataType_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(2, dataType_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader other =
+ (com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader) obj;
+
+ if (!getHeader().equals(other.getHeader())) return false;
+ if (!getDataType().equals(other.getDataType())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + HEADER_FIELD_NUMBER;
+ hash = (53 * hash) + getHeader().hashCode();
+ hash = (37 * hash) + DATA_TYPE_FIELD_NUMBER;
+ hash = (53 * hash) + getDataType().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader
+ parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * Describes a column header in a DataTable. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock.DataTableHeader} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * The header name. + *+ * + *
string header = 1;
+ *
+ * @return The header.
+ */
+ public java.lang.String getHeader() {
+ java.lang.Object ref = header_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ header_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The header name. + *+ * + *
string header = 1;
+ *
+ * @return The bytes for header.
+ */
+ public com.google.protobuf.ByteString getHeaderBytes() {
+ java.lang.Object ref = header_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ header_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The header name. + *+ * + *
string header = 1;
+ *
+ * @param value The header to set.
+ * @return This builder for chaining.
+ */
+ public Builder setHeader(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ header_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The header name. + *+ * + *
string header = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearHeader() {
+ header_ = getDefaultInstance().getHeader();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The header name. + *+ * + *
string header = 1;
+ *
+ * @param value The bytes for header to set.
+ * @return This builder for chaining.
+ */
+ public Builder setHeaderBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ header_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object dataType_ = "";
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @return The dataType.
+ */
+ public java.lang.String getDataType() {
+ java.lang.Object ref = dataType_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ dataType_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @return The bytes for dataType.
+ */
+ public com.google.protobuf.ByteString getDataTypeBytes() {
+ java.lang.Object ref = dataType_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ dataType_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @param value The dataType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataType(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ dataType_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDataType() {
+ dataType_ = getDefaultInstance().getDataType();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The data type. + *+ * + *
string data_type = 2;
+ *
+ * @param value The bytes for dataType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataTypeBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ dataType_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.ResponseBlock.DataTableHeader)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.analytics.data.v1alpha.ResponseBlock.DataTableHeader)
+ private static final com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader();
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser+ * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ java.util.List+ * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell getColumns(int index);
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ int getColumnsCount();
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ java.util.List extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableCellOrBuilder>
+ getColumnsOrBuilderList();
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCellOrBuilder getColumnsOrBuilder(
+ int index);
+ }
+
+ /**
+ *
+ *
+ * + * A row in a DataTable. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock.DataTableRow} + */ + public static final class DataTableRow extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ResponseBlock.DataTableRow) + DataTableRowOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "DataTableRow"); + } + + // Use DataTableRow.newBuilder() to construct. + private DataTableRow(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private DataTableRow() { + columns_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableRow_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTableRow_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.class, + com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.Builder.class); + } + + public static final int COLUMNS_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List
+ * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ @java.lang.Override
+ public java.util.List+ * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ @java.lang.Override
+ public java.util.List<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableCellOrBuilder>
+ getColumnsOrBuilderList() {
+ return columns_;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ @java.lang.Override
+ public int getColumnsCount() {
+ return columns_.size();
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell getColumns(int index) {
+ return columns_.get(index);
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableCellOrBuilder
+ getColumnsOrBuilder(int index) {
+ return columns_.get(index);
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ for (int i = 0; i < columns_.size(); i++) {
+ output.writeMessage(1, columns_.get(i));
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ for (int i = 0; i < columns_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, columns_.get(i));
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow other =
+ (com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow) obj;
+
+ if (!getColumnsList().equals(other.getColumnsList())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (getColumnsCount() > 0) {
+ hash = (37 * hash) + COLUMNS_FIELD_NUMBER;
+ hash = (53 * hash) + getColumnsList().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * A row in a DataTable. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock.DataTableRow} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public java.util.List+ * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public int getColumnsCount() {
+ if (columnsBuilder_ == null) {
+ return columns_.size();
+ } else {
+ return columnsBuilder_.getCount();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell getColumns(int index) {
+ if (columnsBuilder_ == null) {
+ return columns_.get(index);
+ } else {
+ return columnsBuilder_.getMessage(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder setColumns(
+ int index, com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell value) {
+ if (columnsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureColumnsIsMutable();
+ columns_.set(index, value);
+ onChanged();
+ } else {
+ columnsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder setColumns(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.Builder builderForValue) {
+ if (columnsBuilder_ == null) {
+ ensureColumnsIsMutable();
+ columns_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ columnsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder addColumns(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell value) {
+ if (columnsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureColumnsIsMutable();
+ columns_.add(value);
+ onChanged();
+ } else {
+ columnsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder addColumns(
+ int index, com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell value) {
+ if (columnsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureColumnsIsMutable();
+ columns_.add(index, value);
+ onChanged();
+ } else {
+ columnsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder addColumns(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.Builder builderForValue) {
+ if (columnsBuilder_ == null) {
+ ensureColumnsIsMutable();
+ columns_.add(builderForValue.build());
+ onChanged();
+ } else {
+ columnsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder addColumns(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.Builder builderForValue) {
+ if (columnsBuilder_ == null) {
+ ensureColumnsIsMutable();
+ columns_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ columnsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder addAllColumns(
+ java.lang.Iterable<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell>
+ values) {
+ if (columnsBuilder_ == null) {
+ ensureColumnsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, columns_);
+ onChanged();
+ } else {
+ columnsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder clearColumns() {
+ if (columnsBuilder_ == null) {
+ columns_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ } else {
+ columnsBuilder_.clear();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public Builder removeColumns(int index) {
+ if (columnsBuilder_ == null) {
+ ensureColumnsIsMutable();
+ columns_.remove(index);
+ onChanged();
+ } else {
+ columnsBuilder_.remove(index);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.Builder
+ getColumnsBuilder(int index) {
+ return internalGetColumnsFieldBuilder().getBuilder(index);
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableCellOrBuilder
+ getColumnsOrBuilder(int index) {
+ if (columnsBuilder_ == null) {
+ return columns_.get(index);
+ } else {
+ return columnsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public java.util.List<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableCellOrBuilder>
+ getColumnsOrBuilderList() {
+ if (columnsBuilder_ != null) {
+ return columnsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(columns_);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.Builder
+ addColumnsBuilder() {
+ return internalGetColumnsFieldBuilder()
+ .addBuilder(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.Builder
+ addColumnsBuilder(int index) {
+ return internalGetColumnsFieldBuilder()
+ .addBuilder(
+ index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableCell.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * The cell values in the row. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableCell columns = 1;
+ *
+ */
+ public java.util.List+ * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ java.util.List+ * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader getHeaders(int index);
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ int getHeadersCount();
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ java.util.List<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeaderOrBuilder>
+ getHeadersOrBuilderList();
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeaderOrBuilder getHeadersOrBuilder(
+ int index);
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ java.util.List+ * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow getRows(int index);
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ int getRowsCount();
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ java.util.List extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableRowOrBuilder>
+ getRowsOrBuilderList();
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRowOrBuilder getRowsOrBuilder(
+ int index);
+ }
+
+ /**
+ *
+ *
+ * + * A table of data. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock.DataTable} + */ + public static final class DataTable extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ResponseBlock.DataTable) + DataTableOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "DataTable"); + } + + // Use DataTable.newBuilder() to construct. + private DataTable(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private DataTable() { + headers_ = java.util.Collections.emptyList(); + rows_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTable_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseBlock_DataTable_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ResponseBlock.DataTable.class, + com.google.analytics.data.v1alpha.ResponseBlock.DataTable.Builder.class); + } + + public static final int HEADERS_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private java.util.List
+ * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ @java.lang.Override
+ public java.util.List+ * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ @java.lang.Override
+ public java.util.List<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeaderOrBuilder>
+ getHeadersOrBuilderList() {
+ return headers_;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ @java.lang.Override
+ public int getHeadersCount() {
+ return headers_.size();
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader getHeaders(int index) {
+ return headers_.get(index);
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeaderOrBuilder
+ getHeadersOrBuilder(int index) {
+ return headers_.get(index);
+ }
+
+ public static final int ROWS_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private java.util.List+ * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ @java.lang.Override
+ public java.util.List+ * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ @java.lang.Override
+ public java.util.List<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableRowOrBuilder>
+ getRowsOrBuilderList() {
+ return rows_;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ @java.lang.Override
+ public int getRowsCount() {
+ return rows_.size();
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow getRows(int index) {
+ return rows_.get(index);
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableRowOrBuilder getRowsOrBuilder(
+ int index) {
+ return rows_.get(index);
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ for (int i = 0; i < headers_.size(); i++) {
+ output.writeMessage(1, headers_.get(i));
+ }
+ for (int i = 0; i < rows_.size(); i++) {
+ output.writeMessage(2, rows_.get(i));
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ for (int i = 0; i < headers_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, headers_.get(i));
+ }
+ for (int i = 0; i < rows_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, rows_.get(i));
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.analytics.data.v1alpha.ResponseBlock.DataTable)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable other =
+ (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) obj;
+
+ if (!getHeadersList().equals(other.getHeadersList())) return false;
+ if (!getRowsList().equals(other.getRowsList())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (getHeadersCount() > 0) {
+ hash = (37 * hash) + HEADERS_FIELD_NUMBER;
+ hash = (53 * hash) + getHeadersList().hashCode();
+ }
+ if (getRowsCount() > 0) {
+ hash = (37 * hash) + ROWS_FIELD_NUMBER;
+ hash = (53 * hash) + getRowsList().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock.DataTable parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * A table of data. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock.DataTable} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public java.util.List+ * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public int getHeadersCount() {
+ if (headersBuilder_ == null) {
+ return headers_.size();
+ } else {
+ return headersBuilder_.getCount();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader getHeaders(int index) {
+ if (headersBuilder_ == null) {
+ return headers_.get(index);
+ } else {
+ return headersBuilder_.getMessage(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder setHeaders(
+ int index, com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader value) {
+ if (headersBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureHeadersIsMutable();
+ headers_.set(index, value);
+ onChanged();
+ } else {
+ headersBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder setHeaders(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader.Builder builderForValue) {
+ if (headersBuilder_ == null) {
+ ensureHeadersIsMutable();
+ headers_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ headersBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder addHeaders(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader value) {
+ if (headersBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureHeadersIsMutable();
+ headers_.add(value);
+ onChanged();
+ } else {
+ headersBuilder_.addMessage(value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder addHeaders(
+ int index, com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader value) {
+ if (headersBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureHeadersIsMutable();
+ headers_.add(index, value);
+ onChanged();
+ } else {
+ headersBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder addHeaders(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader.Builder builderForValue) {
+ if (headersBuilder_ == null) {
+ ensureHeadersIsMutable();
+ headers_.add(builderForValue.build());
+ onChanged();
+ } else {
+ headersBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder addHeaders(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader.Builder builderForValue) {
+ if (headersBuilder_ == null) {
+ ensureHeadersIsMutable();
+ headers_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ headersBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder addAllHeaders(
+ java.lang.Iterable<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader>
+ values) {
+ if (headersBuilder_ == null) {
+ ensureHeadersIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, headers_);
+ onChanged();
+ } else {
+ headersBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder clearHeaders() {
+ if (headersBuilder_ == null) {
+ headers_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ } else {
+ headersBuilder_.clear();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public Builder removeHeaders(int index) {
+ if (headersBuilder_ == null) {
+ ensureHeadersIsMutable();
+ headers_.remove(index);
+ onChanged();
+ } else {
+ headersBuilder_.remove(index);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader.Builder
+ getHeadersBuilder(int index) {
+ return internalGetHeadersFieldBuilder().getBuilder(index);
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeaderOrBuilder
+ getHeadersOrBuilder(int index) {
+ if (headersBuilder_ == null) {
+ return headers_.get(index);
+ } else {
+ return headersBuilder_.getMessageOrBuilder(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public java.util.List<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeaderOrBuilder>
+ getHeadersOrBuilderList() {
+ if (headersBuilder_ != null) {
+ return headersBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(headers_);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader.Builder
+ addHeadersBuilder() {
+ return internalGetHeadersFieldBuilder()
+ .addBuilder(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader
+ .getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader.Builder
+ addHeadersBuilder(int index) {
+ return internalGetHeadersFieldBuilder()
+ .addBuilder(
+ index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableHeader
+ .getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * Describes dimension columns. The number of headers and ordering of + * headers matches the dimensions present in rows. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableHeader headers = 1;
+ *
+ */
+ public java.util.List+ * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public java.util.List+ * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public int getRowsCount() {
+ if (rowsBuilder_ == null) {
+ return rows_.size();
+ } else {
+ return rowsBuilder_.getCount();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow getRows(int index) {
+ if (rowsBuilder_ == null) {
+ return rows_.get(index);
+ } else {
+ return rowsBuilder_.getMessage(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder setRows(
+ int index, com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow value) {
+ if (rowsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureRowsIsMutable();
+ rows_.set(index, value);
+ onChanged();
+ } else {
+ rowsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder setRows(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.Builder builderForValue) {
+ if (rowsBuilder_ == null) {
+ ensureRowsIsMutable();
+ rows_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ rowsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder addRows(com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow value) {
+ if (rowsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureRowsIsMutable();
+ rows_.add(value);
+ onChanged();
+ } else {
+ rowsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder addRows(
+ int index, com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow value) {
+ if (rowsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureRowsIsMutable();
+ rows_.add(index, value);
+ onChanged();
+ } else {
+ rowsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder addRows(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.Builder builderForValue) {
+ if (rowsBuilder_ == null) {
+ ensureRowsIsMutable();
+ rows_.add(builderForValue.build());
+ onChanged();
+ } else {
+ rowsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder addRows(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.Builder builderForValue) {
+ if (rowsBuilder_ == null) {
+ ensureRowsIsMutable();
+ rows_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ rowsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder addAllRows(
+ java.lang.Iterable extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow>
+ values) {
+ if (rowsBuilder_ == null) {
+ ensureRowsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, rows_);
+ onChanged();
+ } else {
+ rowsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder clearRows() {
+ if (rowsBuilder_ == null) {
+ rows_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ } else {
+ rowsBuilder_.clear();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public Builder removeRows(int index) {
+ if (rowsBuilder_ == null) {
+ ensureRowsIsMutable();
+ rows_.remove(index);
+ onChanged();
+ } else {
+ rowsBuilder_.remove(index);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.Builder getRowsBuilder(
+ int index) {
+ return internalGetRowsFieldBuilder().getBuilder(index);
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableRowOrBuilder getRowsOrBuilder(
+ int index) {
+ if (rowsBuilder_ == null) {
+ return rows_.get(index);
+ } else {
+ return rowsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public java.util.List<
+ ? extends com.google.analytics.data.v1alpha.ResponseBlock.DataTableRowOrBuilder>
+ getRowsOrBuilderList() {
+ if (rowsBuilder_ != null) {
+ return rowsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(rows_);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.Builder addRowsBuilder() {
+ return internalGetRowsFieldBuilder()
+ .addBuilder(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.Builder addRowsBuilder(
+ int index) {
+ return internalGetRowsFieldBuilder()
+ .addBuilder(
+ index,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableRow.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * Rows of dimension value combinations and metric values in the report. + *+ * + *
repeated .google.analytics.data.v1alpha.ResponseBlock.DataTableRow rows = 2;
+ */
+ public java.util.List+ * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return Whether the text field is set.
+ */
+ public boolean hasText() {
+ return blockCase_ == 1;
+ }
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return The text.
+ */
+ public java.lang.String getText() {
+ java.lang.Object ref = "";
+ if (blockCase_ == 1) {
+ ref = block_;
+ }
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (blockCase_ == 1) {
+ block_ = s;
+ }
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return The bytes for text.
+ */
+ public com.google.protobuf.ByteString getTextBytes() {
+ java.lang.Object ref = "";
+ if (blockCase_ == 1) {
+ ref = block_;
+ }
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ if (blockCase_ == 1) {
+ block_ = b;
+ }
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int TABLE_FIELD_NUMBER = 2;
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ *
+ * @return Whether the table field is set.
+ */
+ @java.lang.Override
+ public boolean hasTable() {
+ return blockCase_ == 2;
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ *
+ * @return The table.
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTable getTable() {
+ if (blockCase_ == 2) {
+ return (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) block_;
+ }
+ return com.google.analytics.data.v1alpha.ResponseBlock.DataTable.getDefaultInstance();
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableOrBuilder getTableOrBuilder() {
+ if (blockCase_ == 2) {
+ return (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) block_;
+ }
+ return com.google.analytics.data.v1alpha.ResponseBlock.DataTable.getDefaultInstance();
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (blockCase_ == 1) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, block_);
+ }
+ if (blockCase_ == 2) {
+ output.writeMessage(2, (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) block_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (blockCase_ == 1) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, block_);
+ }
+ if (blockCase_ == 2) {
+ size +=
+ com.google.protobuf.CodedOutputStream.computeMessageSize(
+ 2, (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) block_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.analytics.data.v1alpha.ResponseBlock)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ResponseBlock other =
+ (com.google.analytics.data.v1alpha.ResponseBlock) obj;
+
+ if (!getBlockCase().equals(other.getBlockCase())) return false;
+ switch (blockCase_) {
+ case 1:
+ if (!getText().equals(other.getText())) return false;
+ break;
+ case 2:
+ if (!getTable().equals(other.getTable())) return false;
+ break;
+ case 0:
+ default:
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ switch (blockCase_) {
+ case 1:
+ hash = (37 * hash) + TEXT_FIELD_NUMBER;
+ hash = (53 * hash) + getText().hashCode();
+ break;
+ case 2:
+ hash = (37 * hash) + TABLE_FIELD_NUMBER;
+ hash = (53 * hash) + getTable().hashCode();
+ break;
+ case 0:
+ default:
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.analytics.data.v1alpha.ResponseBlock prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * One block of structured data in chat response. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseBlock} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return Whether the text field is set.
+ */
+ @java.lang.Override
+ public boolean hasText() {
+ return blockCase_ == 1;
+ }
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return The text.
+ */
+ @java.lang.Override
+ public java.lang.String getText() {
+ java.lang.Object ref = "";
+ if (blockCase_ == 1) {
+ ref = block_;
+ }
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ if (blockCase_ == 1) {
+ block_ = s;
+ }
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return The bytes for text.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getTextBytes() {
+ java.lang.Object ref = "";
+ if (blockCase_ == 1) {
+ ref = block_;
+ }
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ if (blockCase_ == 1) {
+ block_ = b;
+ }
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @param value The text to set.
+ * @return This builder for chaining.
+ */
+ public Builder setText(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ blockCase_ = 1;
+ block_ = value;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearText() {
+ if (blockCase_ == 1) {
+ blockCase_ = 0;
+ block_ = null;
+ onChanged();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @param value The bytes for text to set.
+ * @return This builder for chaining.
+ */
+ public Builder setTextBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ blockCase_ = 1;
+ block_ = value;
+ onChanged();
+ return this;
+ }
+
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable.Builder,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableOrBuilder>
+ tableBuilder_;
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ *
+ * @return Whether the table field is set.
+ */
+ @java.lang.Override
+ public boolean hasTable() {
+ return blockCase_ == 2;
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ *
+ * @return The table.
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTable getTable() {
+ if (tableBuilder_ == null) {
+ if (blockCase_ == 2) {
+ return (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) block_;
+ }
+ return com.google.analytics.data.v1alpha.ResponseBlock.DataTable.getDefaultInstance();
+ } else {
+ if (blockCase_ == 2) {
+ return tableBuilder_.getMessage();
+ }
+ return com.google.analytics.data.v1alpha.ResponseBlock.DataTable.getDefaultInstance();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ public Builder setTable(com.google.analytics.data.v1alpha.ResponseBlock.DataTable value) {
+ if (tableBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ block_ = value;
+ onChanged();
+ } else {
+ tableBuilder_.setMessage(value);
+ }
+ blockCase_ = 2;
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ public Builder setTable(
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable.Builder builderForValue) {
+ if (tableBuilder_ == null) {
+ block_ = builderForValue.build();
+ onChanged();
+ } else {
+ tableBuilder_.setMessage(builderForValue.build());
+ }
+ blockCase_ = 2;
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ public Builder mergeTable(com.google.analytics.data.v1alpha.ResponseBlock.DataTable value) {
+ if (tableBuilder_ == null) {
+ if (blockCase_ == 2
+ && block_
+ != com.google.analytics.data.v1alpha.ResponseBlock.DataTable.getDefaultInstance()) {
+ block_ =
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable.newBuilder(
+ (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) block_)
+ .mergeFrom(value)
+ .buildPartial();
+ } else {
+ block_ = value;
+ }
+ onChanged();
+ } else {
+ if (blockCase_ == 2) {
+ tableBuilder_.mergeFrom(value);
+ } else {
+ tableBuilder_.setMessage(value);
+ }
+ }
+ blockCase_ = 2;
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ public Builder clearTable() {
+ if (tableBuilder_ == null) {
+ if (blockCase_ == 2) {
+ blockCase_ = 0;
+ block_ = null;
+ onChanged();
+ }
+ } else {
+ if (blockCase_ == 2) {
+ blockCase_ = 0;
+ block_ = null;
+ }
+ tableBuilder_.clear();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTable.Builder getTableBuilder() {
+ return internalGetTableFieldBuilder().getBuilder();
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseBlock.DataTableOrBuilder getTableOrBuilder() {
+ if ((blockCase_ == 2) && (tableBuilder_ != null)) {
+ return tableBuilder_.getMessageOrBuilder();
+ } else {
+ if (blockCase_ == 2) {
+ return (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) block_;
+ }
+ return com.google.analytics.data.v1alpha.ResponseBlock.DataTable.getDefaultInstance();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable.Builder,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableOrBuilder>
+ internalGetTableFieldBuilder() {
+ if (tableBuilder_ == null) {
+ if (!(blockCase_ == 2)) {
+ block_ = com.google.analytics.data.v1alpha.ResponseBlock.DataTable.getDefaultInstance();
+ }
+ tableBuilder_ =
+ new com.google.protobuf.SingleFieldBuilder<
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable.Builder,
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableOrBuilder>(
+ (com.google.analytics.data.v1alpha.ResponseBlock.DataTable) block_,
+ getParentForChildren(),
+ isClean());
+ block_ = null;
+ }
+ blockCase_ = 2;
+ onChanged();
+ return tableBuilder_;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.ResponseBlock)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.analytics.data.v1alpha.ResponseBlock)
+ private static final com.google.analytics.data.v1alpha.ResponseBlock DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.analytics.data.v1alpha.ResponseBlock();
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseBlock getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser+ * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return Whether the text field is set.
+ */
+ boolean hasText();
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return The text.
+ */
+ java.lang.String getText();
+
+ /**
+ *
+ *
+ * + * A block of text. + *+ * + *
string text = 1;
+ *
+ * @return The bytes for text.
+ */
+ com.google.protobuf.ByteString getTextBytes();
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ *
+ * @return Whether the table field is set.
+ */
+ boolean hasTable();
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ *
+ * @return The table.
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTable getTable();
+
+ /**
+ *
+ *
+ * + * A block of table data. + *+ * + *
.google.analytics.data.v1alpha.ResponseBlock.DataTable table = 2;
+ */
+ com.google.analytics.data.v1alpha.ResponseBlock.DataTableOrBuilder getTableOrBuilder();
+
+ com.google.analytics.data.v1alpha.ResponseBlock.BlockCase getBlockCase();
+}
diff --git a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseMetaData.java b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseMetaData.java
index 588af9301e9c..d733ec84a7d8 100644
--- a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseMetaData.java
+++ b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseMetaData.java
@@ -57,6 +57,7 @@ private ResponseMetaData() {
emptyReason_ = "";
samplingMetadatas_ = java.util.Collections.emptyList();
section_ = 0;
+ dataTruncationReasons_ = java.util.Collections.emptyList();
}
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
@@ -2558,6 +2559,3326 @@ public com.google.protobuf.Parser+ * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return Whether the dataTruncationType field is set.
+ */
+ boolean hasDataTruncationType();
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return The enum numeric value on the wire for dataTruncationType.
+ */
+ int getDataTruncationTypeValue();
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return The dataTruncationType.
+ */
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType
+ getDataTruncationType();
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return Whether the dataTruncationMessage field is set.
+ */
+ boolean hasDataTruncationMessage();
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return The dataTruncationMessage.
+ */
+ java.lang.String getDataTruncationMessage();
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return The bytes for dataTruncationMessage.
+ */
+ com.google.protobuf.ByteString getDataTruncationMessageBytes();
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return Whether the dataTruncationDate field is set.
+ */
+ boolean hasDataTruncationDate();
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return The dataTruncationDate.
+ */
+ java.lang.String getDataTruncationDate();
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return The bytes for dataTruncationDate.
+ */
+ com.google.protobuf.ByteString getDataTruncationDateBytes();
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ java.util.List<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange>
+ getDataTruncationDateRangesList();
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange
+ getDataTruncationDateRanges(int index);
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ int getDataTruncationDateRangesCount();
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ java.util.List<
+ ? extends
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder>
+ getDataTruncationDateRangesOrBuilderList();
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder
+ getDataTruncationDateRangesOrBuilder(int index);
+ }
+
+ /**
+ *
+ *
+ * + * Describes a reason for data truncation in the report. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason} + */ + public static final class DataTruncationReason extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason) + DataTruncationReasonOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "DataTruncationReason"); + } + + // Use DataTruncationReason.newBuilder() to construct. + private DataTruncationReason(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private DataTruncationReason() { + dataTruncationType_ = 0; + dataTruncationMessage_ = ""; + dataTruncationDate_ = ""; + dataTruncationDateRanges_ = java.util.Collections.emptyList(); + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.class, + com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder + .class); + } + + /** + * + * + *
+ * The type of data truncation. + *+ * + * Protobuf enum {@code + * google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType} + */ + public enum DataTruncationType implements com.google.protobuf.ProtocolMessageEnum { + /** + * + * + *
+ * Unspecified type. + *+ * + *
DATA_TRUNCATION_TYPE_UNSPECIFIED = 0;
+ */
+ DATA_TRUNCATION_TYPE_UNSPECIFIED(0),
+ /**
+ *
+ *
+ * + * Data is truncated in attribution report for rules-based models golden + * date. + *+ * + *
DATA_TRUNCATION_TYPE_RULES_BASED_MODELS = 1;
+ */
+ DATA_TRUNCATION_TYPE_RULES_BASED_MODELS(1),
+ /**
+ *
+ *
+ * + * Data is truncated in attribution report for data driven attribution + * golden date. + *+ * + *
DATA_TRUNCATION_TYPE_DATA_DRIVEN_ATTRIBUTION = 2;
+ */
+ DATA_TRUNCATION_TYPE_DATA_DRIVEN_ATTRIBUTION(2),
+ /**
+ *
+ *
+ * + * Data is truncated because DV360 policy does not permit data older than + * 2 years from being returned. + *+ * + *
DATA_TRUNCATION_TYPE_DV360 = 3;
+ */
+ DATA_TRUNCATION_TYPE_DV360(3),
+ /**
+ *
+ *
+ * + * Data is truncated because CM360 policy does not permit data older than + * 2 years from being returned. + *+ * + *
DATA_TRUNCATION_TYPE_CM360 = 4;
+ */
+ DATA_TRUNCATION_TYPE_CM360(4),
+ /**
+ *
+ *
+ * + * New item-scoped ecommerce metrics only have data after a specific date. + *+ * + *
DATA_TRUNCATION_TYPE_ITEM_SCOPED_ECOMMERCE_METRICS = 5;
+ */
+ DATA_TRUNCATION_TYPE_ITEM_SCOPED_ECOMMERCE_METRICS(5),
+ /**
+ *
+ *
+ * + * New event-scoped ecommerce metrics only have data after a specific + * date. + *+ * + *
DATA_TRUNCATION_TYPE_EVENT_SCOPED_ECOMMERCE_METRICS = 6;
+ */
+ DATA_TRUNCATION_TYPE_EVENT_SCOPED_ECOMMERCE_METRICS(6),
+ /**
+ *
+ *
+ * + * Query date range may not be fully served. + *+ * + *
DATA_TRUNCATION_TYPE_DATE_RANGE = 7;
+ */
+ DATA_TRUNCATION_TYPE_DATE_RANGE(7),
+ /**
+ *
+ *
+ * + * Data truncated because the query attempts to read event data prior + * to its retention date. + *+ * + *
DATA_TRUNCATION_TYPE_PROPERTY = 8;
+ */
+ DATA_TRUNCATION_TYPE_PROPERTY(8),
+ /**
+ *
+ *
+ * + * Data is truncated in conversions report. + *+ * + *
DATA_TRUNCATION_TYPE_CONVERSIONS = 9;
+ */
+ DATA_TRUNCATION_TYPE_CONVERSIONS(9),
+ /**
+ *
+ *
+ * + * Data is truncated due to Google Ads 36 month retention policy. + *+ * + *
DATA_TRUNCATION_TYPE_GOOGLE_ADS = 10;
+ */
+ DATA_TRUNCATION_TYPE_GOOGLE_ADS(10),
+ UNRECOGNIZED(-1),
+ ;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "DataTruncationType");
+ }
+
+ /**
+ *
+ *
+ * + * Unspecified type. + *+ * + *
DATA_TRUNCATION_TYPE_UNSPECIFIED = 0;
+ */
+ public static final int DATA_TRUNCATION_TYPE_UNSPECIFIED_VALUE = 0;
+
+ /**
+ *
+ *
+ * + * Data is truncated in attribution report for rules-based models golden + * date. + *+ * + *
DATA_TRUNCATION_TYPE_RULES_BASED_MODELS = 1;
+ */
+ public static final int DATA_TRUNCATION_TYPE_RULES_BASED_MODELS_VALUE = 1;
+
+ /**
+ *
+ *
+ * + * Data is truncated in attribution report for data driven attribution + * golden date. + *+ * + *
DATA_TRUNCATION_TYPE_DATA_DRIVEN_ATTRIBUTION = 2;
+ */
+ public static final int DATA_TRUNCATION_TYPE_DATA_DRIVEN_ATTRIBUTION_VALUE = 2;
+
+ /**
+ *
+ *
+ * + * Data is truncated because DV360 policy does not permit data older than + * 2 years from being returned. + *+ * + *
DATA_TRUNCATION_TYPE_DV360 = 3;
+ */
+ public static final int DATA_TRUNCATION_TYPE_DV360_VALUE = 3;
+
+ /**
+ *
+ *
+ * + * Data is truncated because CM360 policy does not permit data older than + * 2 years from being returned. + *+ * + *
DATA_TRUNCATION_TYPE_CM360 = 4;
+ */
+ public static final int DATA_TRUNCATION_TYPE_CM360_VALUE = 4;
+
+ /**
+ *
+ *
+ * + * New item-scoped ecommerce metrics only have data after a specific date. + *+ * + *
DATA_TRUNCATION_TYPE_ITEM_SCOPED_ECOMMERCE_METRICS = 5;
+ */
+ public static final int DATA_TRUNCATION_TYPE_ITEM_SCOPED_ECOMMERCE_METRICS_VALUE = 5;
+
+ /**
+ *
+ *
+ * + * New event-scoped ecommerce metrics only have data after a specific + * date. + *+ * + *
DATA_TRUNCATION_TYPE_EVENT_SCOPED_ECOMMERCE_METRICS = 6;
+ */
+ public static final int DATA_TRUNCATION_TYPE_EVENT_SCOPED_ECOMMERCE_METRICS_VALUE = 6;
+
+ /**
+ *
+ *
+ * + * Query date range may not be fully served. + *+ * + *
DATA_TRUNCATION_TYPE_DATE_RANGE = 7;
+ */
+ public static final int DATA_TRUNCATION_TYPE_DATE_RANGE_VALUE = 7;
+
+ /**
+ *
+ *
+ * + * Data truncated because the query attempts to read event data prior + * to its retention date. + *+ * + *
DATA_TRUNCATION_TYPE_PROPERTY = 8;
+ */
+ public static final int DATA_TRUNCATION_TYPE_PROPERTY_VALUE = 8;
+
+ /**
+ *
+ *
+ * + * Data is truncated in conversions report. + *+ * + *
DATA_TRUNCATION_TYPE_CONVERSIONS = 9;
+ */
+ public static final int DATA_TRUNCATION_TYPE_CONVERSIONS_VALUE = 9;
+
+ /**
+ *
+ *
+ * + * Data is truncated due to Google Ads 36 month retention policy. + *+ * + *
DATA_TRUNCATION_TYPE_GOOGLE_ADS = 10;
+ */
+ public static final int DATA_TRUNCATION_TYPE_GOOGLE_ADS_VALUE = 10;
+
+ public final int getNumber() {
+ if (this == UNRECOGNIZED) {
+ throw new java.lang.IllegalArgumentException(
+ "Can't get the number of an unknown enum value.");
+ }
+ return value;
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ * @deprecated Use {@link #forNumber(int)} instead.
+ */
+ @java.lang.Deprecated
+ public static DataTruncationType valueOf(int value) {
+ return forNumber(value);
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ */
+ public static DataTruncationType forNumber(int value) {
+ switch (value) {
+ case 0:
+ return DATA_TRUNCATION_TYPE_UNSPECIFIED;
+ case 1:
+ return DATA_TRUNCATION_TYPE_RULES_BASED_MODELS;
+ case 2:
+ return DATA_TRUNCATION_TYPE_DATA_DRIVEN_ATTRIBUTION;
+ case 3:
+ return DATA_TRUNCATION_TYPE_DV360;
+ case 4:
+ return DATA_TRUNCATION_TYPE_CM360;
+ case 5:
+ return DATA_TRUNCATION_TYPE_ITEM_SCOPED_ECOMMERCE_METRICS;
+ case 6:
+ return DATA_TRUNCATION_TYPE_EVENT_SCOPED_ECOMMERCE_METRICS;
+ case 7:
+ return DATA_TRUNCATION_TYPE_DATE_RANGE;
+ case 8:
+ return DATA_TRUNCATION_TYPE_PROPERTY;
+ case 9:
+ return DATA_TRUNCATION_TYPE_CONVERSIONS;
+ case 10:
+ return DATA_TRUNCATION_TYPE_GOOGLE_ADS;
+ default:
+ return null;
+ }
+ }
+
+ public static com.google.protobuf.Internal.EnumLiteMap+ * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return Whether the startDate field is set.
+ */
+ boolean hasStartDate();
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return The startDate.
+ */
+ java.lang.String getStartDate();
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return The bytes for startDate.
+ */
+ com.google.protobuf.ByteString getStartDateBytes();
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return Whether the endDate field is set.
+ */
+ boolean hasEndDate();
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return The endDate.
+ */
+ java.lang.String getEndDate();
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return The bytes for endDate.
+ */
+ com.google.protobuf.ByteString getEndDateBytes();
+ }
+
+ /**
+ *
+ *
+ * + * Define the truncated date range from start_date to end_date. + *+ * + * Protobuf type {@code + * google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange} + */ + public static final class DataTruncationDateRange extends com.google.protobuf.GeneratedMessage + implements + // @@protoc_insertion_point(message_implements:google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange) + DataTruncationDateRangeOrBuilder { + private static final long serialVersionUID = 0L; + + static { + com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion( + com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC, + /* major= */ 4, + /* minor= */ 33, + /* patch= */ 6, + /* suffix= */ "", + "DataTruncationDateRange"); + } + + // Use DataTruncationDateRange.newBuilder() to construct. + private DataTruncationDateRange(com.google.protobuf.GeneratedMessage.Builder> builder) { + super(builder); + } + + private DataTruncationDateRange() { + startDate_ = ""; + endDate_ = ""; + } + + public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_DataTruncationDateRange_descriptor; + } + + @java.lang.Override + protected com.google.protobuf.GeneratedMessage.FieldAccessorTable + internalGetFieldAccessorTable() { + return com.google.analytics.data.v1alpha.ReportingApiProto + .internal_static_google_analytics_data_v1alpha_ResponseMetaData_DataTruncationReason_DataTruncationDateRange_fieldAccessorTable + .ensureFieldAccessorsInitialized( + com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason + .DataTruncationDateRange.class, + com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason + .DataTruncationDateRange.Builder.class); + } + + private int bitField0_; + public static final int START_DATE_FIELD_NUMBER = 1; + + @SuppressWarnings("serial") + private volatile java.lang.Object startDate_ = ""; + + /** + * + * + *
+ * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return Whether the startDate field is set.
+ */
+ @java.lang.Override
+ public boolean hasStartDate() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return The startDate.
+ */
+ @java.lang.Override
+ public java.lang.String getStartDate() {
+ java.lang.Object ref = startDate_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ startDate_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return The bytes for startDate.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getStartDateBytes() {
+ java.lang.Object ref = startDate_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ startDate_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int END_DATE_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object endDate_ = "";
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return Whether the endDate field is set.
+ */
+ @java.lang.Override
+ public boolean hasEndDate() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return The endDate.
+ */
+ @java.lang.Override
+ public java.lang.String getEndDate() {
+ java.lang.Object ref = endDate_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ endDate_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return The bytes for endDate.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getEndDateBytes() {
+ java.lang.Object ref = endDate_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ endDate_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, startDate_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 2, endDate_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, startDate_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(2, endDate_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj
+ instanceof
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ other =
+ (com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange)
+ obj;
+
+ if (hasStartDate() != other.hasStartDate()) return false;
+ if (hasStartDate()) {
+ if (!getStartDate().equals(other.getStartDate())) return false;
+ }
+ if (hasEndDate() != other.hasEndDate()) return false;
+ if (hasEndDate()) {
+ if (!getEndDate().equals(other.getEndDate())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasStartDate()) {
+ hash = (37 * hash) + START_DATE_FIELD_NUMBER;
+ hash = (53 * hash) + getStartDate().hashCode();
+ }
+ if (hasEndDate()) {
+ hash = (37 * hash) + END_DATE_FIELD_NUMBER;
+ hash = (53 * hash) + getEndDate().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseDelimitedFrom(
+ java.io.InputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(
+ com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * Define the truncated date range from start_date to end_date. + *+ * + * Protobuf type {@code + * google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange} + */ + public static final class Builder + extends com.google.protobuf.GeneratedMessage.Builder
+ * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return Whether the startDate field is set.
+ */
+ public boolean hasStartDate() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return The startDate.
+ */
+ public java.lang.String getStartDate() {
+ java.lang.Object ref = startDate_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ startDate_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return The bytes for startDate.
+ */
+ public com.google.protobuf.ByteString getStartDateBytes() {
+ java.lang.Object ref = startDate_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ startDate_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @param value The startDate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setStartDate(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ startDate_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearStartDate() {
+ startDate_ = getDefaultInstance().getStartDate();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The start date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string start_date = 1;
+ *
+ * @param value The bytes for startDate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setStartDateBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ startDate_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object endDate_ = "";
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return Whether the endDate field is set.
+ */
+ public boolean hasEndDate() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return The endDate.
+ */
+ public java.lang.String getEndDate() {
+ java.lang.Object ref = endDate_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ endDate_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return The bytes for endDate.
+ */
+ public com.google.protobuf.ByteString getEndDateBytes() {
+ java.lang.Object ref = endDate_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ endDate_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @param value The endDate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setEndDate(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ endDate_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearEndDate() {
+ endDate_ = getDefaultInstance().getEndDate();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The end date in the format YYYY-MM-DD (inclusive). + *+ * + *
optional string end_date = 2;
+ *
+ * @param value The bytes for endDate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setEndDateBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ endDate_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange)
+ private static final com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE =
+ new com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange();
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser+ * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return Whether the dataTruncationType field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataTruncationType() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return The enum numeric value on the wire for dataTruncationType.
+ */
+ @java.lang.Override
+ public int getDataTruncationTypeValue() {
+ return dataTruncationType_;
+ }
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return The dataTruncationType.
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationType
+ getDataTruncationType() {
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType
+ result =
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationType.forNumber(dataTruncationType_);
+ return result == null
+ ? com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationType.UNRECOGNIZED
+ : result;
+ }
+
+ public static final int DATA_TRUNCATION_MESSAGE_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object dataTruncationMessage_ = "";
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return Whether the dataTruncationMessage field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataTruncationMessage() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return The dataTruncationMessage.
+ */
+ @java.lang.Override
+ public java.lang.String getDataTruncationMessage() {
+ java.lang.Object ref = dataTruncationMessage_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ dataTruncationMessage_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return The bytes for dataTruncationMessage.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getDataTruncationMessageBytes() {
+ java.lang.Object ref = dataTruncationMessage_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ dataTruncationMessage_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DATA_TRUNCATION_DATE_FIELD_NUMBER = 3;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object dataTruncationDate_ = "";
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return Whether the dataTruncationDate field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataTruncationDate() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return The dataTruncationDate.
+ */
+ @java.lang.Override
+ public java.lang.String getDataTruncationDate() {
+ java.lang.Object ref = dataTruncationDate_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ dataTruncationDate_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return The bytes for dataTruncationDate.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getDataTruncationDateBytes() {
+ java.lang.Object ref = dataTruncationDate_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ dataTruncationDate_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int DATA_TRUNCATION_DATE_RANGES_FIELD_NUMBER = 4;
+
+ @SuppressWarnings("serial")
+ private java.util.List<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange>
+ dataTruncationDateRanges_;
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ @java.lang.Override
+ public java.util.List<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange>
+ getDataTruncationDateRangesList() {
+ return dataTruncationDateRanges_;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ @java.lang.Override
+ public java.util.List<
+ ? extends
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder>
+ getDataTruncationDateRangesOrBuilderList() {
+ return dataTruncationDateRanges_;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ @java.lang.Override
+ public int getDataTruncationDateRangesCount() {
+ return dataTruncationDateRanges_.size();
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ getDataTruncationDateRanges(int index) {
+ return dataTruncationDateRanges_.get(index);
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder
+ getDataTruncationDateRangesOrBuilder(int index) {
+ return dataTruncationDateRanges_.get(index);
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeEnum(1, dataTruncationType_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 2, dataTruncationMessage_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 3, dataTruncationDate_);
+ }
+ for (int i = 0; i < dataTruncationDateRanges_.size(); i++) {
+ output.writeMessage(4, dataTruncationDateRanges_.get(i));
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeEnumSize(1, dataTruncationType_);
+ }
+ if (((bitField0_ & 0x00000002) != 0)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(2, dataTruncationMessage_);
+ }
+ if (((bitField0_ & 0x00000004) != 0)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(3, dataTruncationDate_);
+ }
+ for (int i = 0; i < dataTruncationDateRanges_.size(); i++) {
+ size +=
+ com.google.protobuf.CodedOutputStream.computeMessageSize(
+ 4, dataTruncationDateRanges_.get(i));
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj
+ instanceof com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason)) {
+ return super.equals(obj);
+ }
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason other =
+ (com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason) obj;
+
+ if (hasDataTruncationType() != other.hasDataTruncationType()) return false;
+ if (hasDataTruncationType()) {
+ if (dataTruncationType_ != other.dataTruncationType_) return false;
+ }
+ if (hasDataTruncationMessage() != other.hasDataTruncationMessage()) return false;
+ if (hasDataTruncationMessage()) {
+ if (!getDataTruncationMessage().equals(other.getDataTruncationMessage())) return false;
+ }
+ if (hasDataTruncationDate() != other.hasDataTruncationDate()) return false;
+ if (hasDataTruncationDate()) {
+ if (!getDataTruncationDate().equals(other.getDataTruncationDate())) return false;
+ }
+ if (!getDataTruncationDateRangesList().equals(other.getDataTruncationDateRangesList()))
+ return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (hasDataTruncationType()) {
+ hash = (37 * hash) + DATA_TRUNCATION_TYPE_FIELD_NUMBER;
+ hash = (53 * hash) + dataTruncationType_;
+ }
+ if (hasDataTruncationMessage()) {
+ hash = (37 * hash) + DATA_TRUNCATION_MESSAGE_FIELD_NUMBER;
+ hash = (53 * hash) + getDataTruncationMessage().hashCode();
+ }
+ if (hasDataTruncationDate()) {
+ hash = (37 * hash) + DATA_TRUNCATION_DATE_FIELD_NUMBER;
+ hash = (53 * hash) + getDataTruncationDate().hashCode();
+ }
+ if (getDataTruncationDateRangesCount() > 0) {
+ hash = (37 * hash) + DATA_TRUNCATION_DATE_RANGES_FIELD_NUMBER;
+ hash = (53 * hash) + getDataTruncationDateRangesList().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ byte[] data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ parseDelimitedFrom(java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ * + * Describes a reason for data truncation in the report. + *+ * + * Protobuf type {@code google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason} + */ + public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return Whether the dataTruncationType field is set.
+ */
+ @java.lang.Override
+ public boolean hasDataTruncationType() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return The enum numeric value on the wire for dataTruncationType.
+ */
+ @java.lang.Override
+ public int getDataTruncationTypeValue() {
+ return dataTruncationType_;
+ }
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @param value The enum numeric value on the wire for dataTruncationType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataTruncationTypeValue(int value) {
+ dataTruncationType_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return The dataTruncationType.
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationType
+ getDataTruncationType() {
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType
+ result =
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationType.forNumber(dataTruncationType_);
+ return result == null
+ ? com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationType.UNRECOGNIZED
+ : result;
+ }
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @param value The dataTruncationType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataTruncationType(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType
+ value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ dataTruncationType_ = value.getNumber();
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The type of data truncation. + *+ * + *
+ * optional .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationType data_truncation_type = 1;
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDataTruncationType() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ dataTruncationType_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object dataTruncationMessage_ = "";
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return Whether the dataTruncationMessage field is set.
+ */
+ public boolean hasDataTruncationMessage() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return The dataTruncationMessage.
+ */
+ public java.lang.String getDataTruncationMessage() {
+ java.lang.Object ref = dataTruncationMessage_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ dataTruncationMessage_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return The bytes for dataTruncationMessage.
+ */
+ public com.google.protobuf.ByteString getDataTruncationMessageBytes() {
+ java.lang.Object ref = dataTruncationMessage_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ dataTruncationMessage_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @param value The dataTruncationMessage to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataTruncationMessage(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ dataTruncationMessage_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDataTruncationMessage() {
+ dataTruncationMessage_ = getDefaultInstance().getDataTruncationMessage();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * A descriptive message explaining the data truncation. + *+ * + *
optional string data_truncation_message = 2;
+ *
+ * @param value The bytes for dataTruncationMessage to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataTruncationMessageBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ dataTruncationMessage_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object dataTruncationDate_ = "";
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return Whether the dataTruncationDate field is set.
+ */
+ public boolean hasDataTruncationDate() {
+ return ((bitField0_ & 0x00000004) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return The dataTruncationDate.
+ */
+ public java.lang.String getDataTruncationDate() {
+ java.lang.Object ref = dataTruncationDate_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ dataTruncationDate_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return The bytes for dataTruncationDate.
+ */
+ public com.google.protobuf.ByteString getDataTruncationDateBytes() {
+ java.lang.Object ref = dataTruncationDate_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ dataTruncationDate_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @param value The dataTruncationDate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataTruncationDate(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ dataTruncationDate_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDataTruncationDate() {
+ dataTruncationDate_ = getDefaultInstance().getDataTruncationDate();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The data truncation date in the format YYYY-MM-DD. + * Indicates data before this date is truncated. + *+ * + *
optional string data_truncation_date = 3;
+ *
+ * @param value The bytes for dataTruncationDate to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDataTruncationDateBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ dataTruncationDate_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ private java.util.List<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange>
+ dataTruncationDateRanges_ = java.util.Collections.emptyList();
+
+ private void ensureDataTruncationDateRangesIsMutable() {
+ if (!((bitField0_ & 0x00000008) != 0)) {
+ dataTruncationDateRanges_ =
+ new java.util.ArrayList<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange>(dataTruncationDateRanges_);
+ bitField0_ |= 0x00000008;
+ }
+ }
+
+ private com.google.protobuf.RepeatedFieldBuilder<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder>
+ dataTruncationDateRangesBuilder_;
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public java.util.List<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange>
+ getDataTruncationDateRangesList() {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ return java.util.Collections.unmodifiableList(dataTruncationDateRanges_);
+ } else {
+ return dataTruncationDateRangesBuilder_.getMessageList();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public int getDataTruncationDateRangesCount() {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ return dataTruncationDateRanges_.size();
+ } else {
+ return dataTruncationDateRangesBuilder_.getCount();
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ getDataTruncationDateRanges(int index) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ return dataTruncationDateRanges_.get(index);
+ } else {
+ return dataTruncationDateRangesBuilder_.getMessage(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder setDataTruncationDateRanges(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ value) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDataTruncationDateRangesIsMutable();
+ dataTruncationDateRanges_.set(index, value);
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder setDataTruncationDateRanges(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder
+ builderForValue) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ ensureDataTruncationDateRangesIsMutable();
+ dataTruncationDateRanges_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder addDataTruncationDateRanges(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ value) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDataTruncationDateRangesIsMutable();
+ dataTruncationDateRanges_.add(value);
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.addMessage(value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder addDataTruncationDateRanges(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange
+ value) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDataTruncationDateRangesIsMutable();
+ dataTruncationDateRanges_.add(index, value);
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder addDataTruncationDateRanges(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder
+ builderForValue) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ ensureDataTruncationDateRangesIsMutable();
+ dataTruncationDateRanges_.add(builderForValue.build());
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder addDataTruncationDateRanges(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder
+ builderForValue) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ ensureDataTruncationDateRangesIsMutable();
+ dataTruncationDateRanges_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder addAllDataTruncationDateRanges(
+ java.lang.Iterable<
+ ? extends
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange>
+ values) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ ensureDataTruncationDateRangesIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, dataTruncationDateRanges_);
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder clearDataTruncationDateRanges() {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ dataTruncationDateRanges_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000008);
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.clear();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public Builder removeDataTruncationDateRanges(int index) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ ensureDataTruncationDateRangesIsMutable();
+ dataTruncationDateRanges_.remove(index);
+ onChanged();
+ } else {
+ dataTruncationDateRangesBuilder_.remove(index);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder
+ getDataTruncationDateRangesBuilder(int index) {
+ return internalGetDataTruncationDateRangesFieldBuilder().getBuilder(index);
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder
+ getDataTruncationDateRangesOrBuilder(int index) {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ return dataTruncationDateRanges_.get(index);
+ } else {
+ return dataTruncationDateRangesBuilder_.getMessageOrBuilder(index);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public java.util.List<
+ ? extends
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder>
+ getDataTruncationDateRangesOrBuilderList() {
+ if (dataTruncationDateRangesBuilder_ != null) {
+ return dataTruncationDateRangesBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(dataTruncationDateRanges_);
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder
+ addDataTruncationDateRangesBuilder() {
+ return internalGetDataTruncationDateRangesFieldBuilder()
+ .addBuilder(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder
+ addDataTruncationDateRangesBuilder(int index) {
+ return internalGetDataTruncationDateRangesFieldBuilder()
+ .addBuilder(
+ index,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ * + * The truncated date ranges. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.DataTruncationDateRange data_truncation_date_ranges = 4;
+ *
+ */
+ public java.util.List<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder>
+ getDataTruncationDateRangesBuilderList() {
+ return internalGetDataTruncationDateRangesFieldBuilder().getBuilderList();
+ }
+
+ private com.google.protobuf.RepeatedFieldBuilder<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder>
+ internalGetDataTruncationDateRangesFieldBuilder() {
+ if (dataTruncationDateRangesBuilder_ == null) {
+ dataTruncationDateRangesBuilder_ =
+ new com.google.protobuf.RepeatedFieldBuilder<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRange.Builder,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .DataTruncationDateRangeOrBuilder>(
+ dataTruncationDateRanges_,
+ ((bitField0_ & 0x00000008) != 0),
+ getParentForChildren(),
+ isClean());
+ dataTruncationDateRanges_ = null;
+ }
+ return dataTruncationDateRangesBuilder_;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason)
+ private static final com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE =
+ new com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason();
+ }
+
+ public static com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser+ * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ @java.lang.Override
+ public java.util.List+ * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ @java.lang.Override
+ public java.util.List<
+ ? extends
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReasonOrBuilder>
+ getDataTruncationReasonsOrBuilderList() {
+ return dataTruncationReasons_;
+ }
+
+ /**
+ *
+ *
+ * + * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ @java.lang.Override
+ public int getDataTruncationReasonsCount() {
+ return dataTruncationReasons_.size();
+ }
+
+ /**
+ *
+ *
+ * + * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ getDataTruncationReasons(int index) {
+ return dataTruncationReasons_.get(index);
+ }
+
+ /**
+ *
+ *
+ * + * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReasonOrBuilder
+ getDataTruncationReasonsOrBuilder(int index) {
+ return dataTruncationReasons_.get(index);
+ }
+
private byte memoizedIsInitialized = -1;
@java.lang.Override
@@ -3141,6 +6554,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
if (section_ != com.google.analytics.data.v1alpha.Section.SECTION_UNSPECIFIED.getNumber()) {
output.writeEnum(10, section_);
}
+ for (int i = 0; i < dataTruncationReasons_.size(); i++) {
+ output.writeMessage(11, dataTruncationReasons_.get(i));
+ }
getUnknownFields().writeTo(output);
}
@@ -3177,6 +6593,11 @@ public int getSerializedSize() {
if (section_ != com.google.analytics.data.v1alpha.Section.SECTION_UNSPECIFIED.getNumber()) {
size += com.google.protobuf.CodedOutputStream.computeEnumSize(10, section_);
}
+ for (int i = 0; i < dataTruncationReasons_.size(); i++) {
+ size +=
+ com.google.protobuf.CodedOutputStream.computeMessageSize(
+ 11, dataTruncationReasons_.get(i));
+ }
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
@@ -3217,6 +6638,7 @@ public boolean equals(final java.lang.Object obj) {
}
if (!getSamplingMetadatasList().equals(other.getSamplingMetadatasList())) return false;
if (section_ != other.section_) return false;
+ if (!getDataTruncationReasonsList().equals(other.getDataTruncationReasonsList())) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@@ -3256,6 +6678,10 @@ public int hashCode() {
}
hash = (37 * hash) + SECTION_FIELD_NUMBER;
hash = (53 * hash) + section_;
+ if (getDataTruncationReasonsCount() > 0) {
+ hash = (37 * hash) + DATA_TRUNCATION_REASONS_FIELD_NUMBER;
+ hash = (53 * hash) + getDataTruncationReasonsList().hashCode();
+ }
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
@@ -3399,6 +6825,7 @@ private void maybeForceBuilderInitialization() {
if (com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders) {
internalGetSchemaRestrictionResponseFieldBuilder();
internalGetSamplingMetadatasFieldBuilder();
+ internalGetDataTruncationReasonsFieldBuilder();
}
}
@@ -3424,6 +6851,13 @@ public Builder clear() {
}
bitField0_ = (bitField0_ & ~0x00000040);
section_ = 0;
+ if (dataTruncationReasonsBuilder_ == null) {
+ dataTruncationReasons_ = java.util.Collections.emptyList();
+ } else {
+ dataTruncationReasons_ = null;
+ dataTruncationReasonsBuilder_.clear();
+ }
+ bitField0_ = (bitField0_ & ~0x00000100);
return this;
}
@@ -3470,6 +6904,15 @@ private void buildPartialRepeatedFields(
} else {
result.samplingMetadatas_ = samplingMetadatasBuilder_.build();
}
+ if (dataTruncationReasonsBuilder_ == null) {
+ if (((bitField0_ & 0x00000100) != 0)) {
+ dataTruncationReasons_ = java.util.Collections.unmodifiableList(dataTruncationReasons_);
+ bitField0_ = (bitField0_ & ~0x00000100);
+ }
+ result.dataTruncationReasons_ = dataTruncationReasons_;
+ } else {
+ result.dataTruncationReasons_ = dataTruncationReasonsBuilder_.build();
+ }
}
private void buildPartial0(com.google.analytics.data.v1alpha.ResponseMetaData result) {
@@ -3567,13 +7010,40 @@ public Builder mergeFrom(com.google.analytics.data.v1alpha.ResponseMetaData othe
? internalGetSamplingMetadatasFieldBuilder()
: null;
} else {
- samplingMetadatasBuilder_.addAllMessages(other.samplingMetadatas_);
+ samplingMetadatasBuilder_.addAllMessages(other.samplingMetadatas_);
+ }
+ }
+ }
+ if (other.section_ != 0) {
+ setSectionValue(other.getSectionValue());
+ }
+ if (dataTruncationReasonsBuilder_ == null) {
+ if (!other.dataTruncationReasons_.isEmpty()) {
+ if (dataTruncationReasons_.isEmpty()) {
+ dataTruncationReasons_ = other.dataTruncationReasons_;
+ bitField0_ = (bitField0_ & ~0x00000100);
+ } else {
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.addAll(other.dataTruncationReasons_);
+ }
+ onChanged();
+ }
+ } else {
+ if (!other.dataTruncationReasons_.isEmpty()) {
+ if (dataTruncationReasonsBuilder_.isEmpty()) {
+ dataTruncationReasonsBuilder_.dispose();
+ dataTruncationReasonsBuilder_ = null;
+ dataTruncationReasons_ = other.dataTruncationReasons_;
+ bitField0_ = (bitField0_ & ~0x00000100);
+ dataTruncationReasonsBuilder_ =
+ com.google.protobuf.GeneratedMessage.alwaysUseFieldBuilders
+ ? internalGetDataTruncationReasonsFieldBuilder()
+ : null;
+ } else {
+ dataTruncationReasonsBuilder_.addAllMessages(other.dataTruncationReasons_);
}
}
}
- if (other.section_ != 0) {
- setSectionValue(other.getSectionValue());
- }
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
@@ -3658,6 +7128,21 @@ public Builder mergeFrom(
bitField0_ |= 0x00000080;
break;
} // case 80
+ case 90:
+ {
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason m =
+ input.readMessage(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .parser(),
+ extensionRegistry);
+ if (dataTruncationReasonsBuilder_ == null) {
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.add(m);
+ } else {
+ dataTruncationReasonsBuilder_.addMessage(m);
+ }
+ break;
+ } // case 90
default:
{
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
@@ -4220,75 +7705,323 @@ public boolean hasTimeZone() {
*
*
* - * The property's current timezone. Intended to be used to interpret - * time-based dimensions like `hour` and `minute`. Formatted as strings from - * the IANA Time Zone database (https://www.iana.org/time-zones); for example - * "America/New_York" or "Asia/Tokyo". + * The property's current timezone. Intended to be used to interpret + * time-based dimensions like `hour` and `minute`. Formatted as strings from + * the IANA Time Zone database (https://www.iana.org/time-zones); for example + * "America/New_York" or "Asia/Tokyo". + *+ * + *
optional string time_zone = 6;
+ *
+ * @return The timeZone.
+ */
+ public java.lang.String getTimeZone() {
+ java.lang.Object ref = timeZone_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ timeZone_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The property's current timezone. Intended to be used to interpret + * time-based dimensions like `hour` and `minute`. Formatted as strings from + * the IANA Time Zone database (https://www.iana.org/time-zones); for example + * "America/New_York" or "Asia/Tokyo". + *+ * + *
optional string time_zone = 6;
+ *
+ * @return The bytes for timeZone.
+ */
+ public com.google.protobuf.ByteString getTimeZoneBytes() {
+ java.lang.Object ref = timeZone_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ timeZone_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * The property's current timezone. Intended to be used to interpret + * time-based dimensions like `hour` and `minute`. Formatted as strings from + * the IANA Time Zone database (https://www.iana.org/time-zones); for example + * "America/New_York" or "Asia/Tokyo". + *+ * + *
optional string time_zone = 6;
+ *
+ * @param value The timeZone to set.
+ * @return This builder for chaining.
+ */
+ public Builder setTimeZone(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ timeZone_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The property's current timezone. Intended to be used to interpret + * time-based dimensions like `hour` and `minute`. Formatted as strings from + * the IANA Time Zone database (https://www.iana.org/time-zones); for example + * "America/New_York" or "Asia/Tokyo". + *+ * + *
optional string time_zone = 6;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearTimeZone() {
+ timeZone_ = getDefaultInstance().getTimeZone();
+ bitField0_ = (bitField0_ & ~0x00000008);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * The property's current timezone. Intended to be used to interpret + * time-based dimensions like `hour` and `minute`. Formatted as strings from + * the IANA Time Zone database (https://www.iana.org/time-zones); for example + * "America/New_York" or "Asia/Tokyo". + *+ * + *
optional string time_zone = 6;
+ *
+ * @param value The bytes for timeZone to set.
+ * @return This builder for chaining.
+ */
+ public Builder setTimeZoneBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ timeZone_ = value;
+ bitField0_ |= 0x00000008;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object emptyReason_ = "";
+
+ /**
+ *
+ *
+ * + * If empty reason is specified, the report is empty for this reason. + *+ * + *
optional string empty_reason = 7;
+ *
+ * @return Whether the emptyReason field is set.
+ */
+ public boolean hasEmptyReason() {
+ return ((bitField0_ & 0x00000010) != 0);
+ }
+
+ /**
+ *
+ *
+ * + * If empty reason is specified, the report is empty for this reason. + *+ * + *
optional string empty_reason = 7;
+ *
+ * @return The emptyReason.
+ */
+ public java.lang.String getEmptyReason() {
+ java.lang.Object ref = emptyReason_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ emptyReason_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * If empty reason is specified, the report is empty for this reason. + *+ * + *
optional string empty_reason = 7;
+ *
+ * @return The bytes for emptyReason.
+ */
+ public com.google.protobuf.ByteString getEmptyReasonBytes() {
+ java.lang.Object ref = emptyReason_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ emptyReason_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ * + * If empty reason is specified, the report is empty for this reason. + *+ * + *
optional string empty_reason = 7;
+ *
+ * @param value The emptyReason to set.
+ * @return This builder for chaining.
+ */
+ public Builder setEmptyReason(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ emptyReason_ = value;
+ bitField0_ |= 0x00000010;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * If empty reason is specified, the report is empty for this reason. + *+ * + *
optional string empty_reason = 7;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearEmptyReason() {
+ emptyReason_ = getDefaultInstance().getEmptyReason();
+ bitField0_ = (bitField0_ & ~0x00000010);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ * + * If empty reason is specified, the report is empty for this reason. + *+ * + *
optional string empty_reason = 7;
+ *
+ * @param value The bytes for emptyReason to set.
+ * @return This builder for chaining.
+ */
+ public Builder setEmptyReasonBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ emptyReason_ = value;
+ bitField0_ |= 0x00000010;
+ onChanged();
+ return this;
+ }
+
+ private boolean subjectToThresholding_;
+
+ /**
+ *
+ *
+ *
+ * If `subjectToThresholding` is true, this report is subject to thresholding
+ * and only returns data that meets the minimum aggregation thresholds. It is
+ * possible for a request to be subject to thresholding thresholding and no
+ * data is absent from the report, and this happens when all data is above the
+ * thresholds. To learn more, see [Data
+ * thresholds](https://support.google.com/analytics/answer/9383630) and [About
+ * Demographics and
+ * Interests](https://support.google.com/analytics/answer/2799357).
*
*
- * optional string time_zone = 6;
+ * optional bool subject_to_thresholding = 8;
*
- * @return The timeZone.
+ * @return Whether the subjectToThresholding field is set.
*/
- public java.lang.String getTimeZone() {
- java.lang.Object ref = timeZone_;
- if (!(ref instanceof java.lang.String)) {
- com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
- java.lang.String s = bs.toStringUtf8();
- timeZone_ = s;
- return s;
- } else {
- return (java.lang.String) ref;
- }
+ @java.lang.Override
+ public boolean hasSubjectToThresholding() {
+ return ((bitField0_ & 0x00000020) != 0);
}
/**
*
*
*
- * The property's current timezone. Intended to be used to interpret
- * time-based dimensions like `hour` and `minute`. Formatted as strings from
- * the IANA Time Zone database (https://www.iana.org/time-zones); for example
- * "America/New_York" or "Asia/Tokyo".
+ * If `subjectToThresholding` is true, this report is subject to thresholding
+ * and only returns data that meets the minimum aggregation thresholds. It is
+ * possible for a request to be subject to thresholding thresholding and no
+ * data is absent from the report, and this happens when all data is above the
+ * thresholds. To learn more, see [Data
+ * thresholds](https://support.google.com/analytics/answer/9383630) and [About
+ * Demographics and
+ * Interests](https://support.google.com/analytics/answer/2799357).
*
*
- * optional string time_zone = 6;
+ * optional bool subject_to_thresholding = 8;
*
- * @return The bytes for timeZone.
+ * @return The subjectToThresholding.
*/
- public com.google.protobuf.ByteString getTimeZoneBytes() {
- java.lang.Object ref = timeZone_;
- if (ref instanceof String) {
- com.google.protobuf.ByteString b =
- com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
- timeZone_ = b;
- return b;
- } else {
- return (com.google.protobuf.ByteString) ref;
- }
+ @java.lang.Override
+ public boolean getSubjectToThresholding() {
+ return subjectToThresholding_;
}
/**
*
*
*
- * The property's current timezone. Intended to be used to interpret
- * time-based dimensions like `hour` and `minute`. Formatted as strings from
- * the IANA Time Zone database (https://www.iana.org/time-zones); for example
- * "America/New_York" or "Asia/Tokyo".
+ * If `subjectToThresholding` is true, this report is subject to thresholding
+ * and only returns data that meets the minimum aggregation thresholds. It is
+ * possible for a request to be subject to thresholding thresholding and no
+ * data is absent from the report, and this happens when all data is above the
+ * thresholds. To learn more, see [Data
+ * thresholds](https://support.google.com/analytics/answer/9383630) and [About
+ * Demographics and
+ * Interests](https://support.google.com/analytics/answer/2799357).
*
*
- * optional string time_zone = 6;
+ * optional bool subject_to_thresholding = 8;
*
- * @param value The timeZone to set.
+ * @param value The subjectToThresholding to set.
* @return This builder for chaining.
*/
- public Builder setTimeZone(java.lang.String value) {
- if (value == null) {
- throw new NullPointerException();
- }
- timeZone_ = value;
- bitField0_ |= 0x00000008;
+ public Builder setSubjectToThresholding(boolean value) {
+
+ subjectToThresholding_ = value;
+ bitField0_ |= 0x00000020;
onChanged();
return this;
}
@@ -4297,86 +8030,115 @@ public Builder setTimeZone(java.lang.String value) {
*
*
*
- * The property's current timezone. Intended to be used to interpret
- * time-based dimensions like `hour` and `minute`. Formatted as strings from
- * the IANA Time Zone database (https://www.iana.org/time-zones); for example
- * "America/New_York" or "Asia/Tokyo".
+ * If `subjectToThresholding` is true, this report is subject to thresholding
+ * and only returns data that meets the minimum aggregation thresholds. It is
+ * possible for a request to be subject to thresholding thresholding and no
+ * data is absent from the report, and this happens when all data is above the
+ * thresholds. To learn more, see [Data
+ * thresholds](https://support.google.com/analytics/answer/9383630) and [About
+ * Demographics and
+ * Interests](https://support.google.com/analytics/answer/2799357).
*
*
- * optional string time_zone = 6;
+ * optional bool subject_to_thresholding = 8;
*
* @return This builder for chaining.
*/
- public Builder clearTimeZone() {
- timeZone_ = getDefaultInstance().getTimeZone();
- bitField0_ = (bitField0_ & ~0x00000008);
+ public Builder clearSubjectToThresholding() {
+ bitField0_ = (bitField0_ & ~0x00000020);
+ subjectToThresholding_ = false;
onChanged();
return this;
}
+ private java.util.List- * The property's current timezone. Intended to be used to interpret - * time-based dimensions like `hour` and `minute`. Formatted as strings from - * the IANA Time Zone database (https://www.iana.org/time-zones); for example - * "America/New_York" or "Asia/Tokyo". - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional string time_zone = 6;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @param value The bytes for timeZone to set.
- * @return This builder for chaining.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder setTimeZoneBytes(com.google.protobuf.ByteString value) {
- if (value == null) {
- throw new NullPointerException();
+ public java.util.List- * If empty reason is specified, the report is empty for this reason. - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional string empty_reason = 7;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @return Whether the emptyReason field is set.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public boolean hasEmptyReason() {
- return ((bitField0_ & 0x00000010) != 0);
+ public int getSamplingMetadatasCount() {
+ if (samplingMetadatasBuilder_ == null) {
+ return samplingMetadatas_.size();
+ } else {
+ return samplingMetadatasBuilder_.getCount();
+ }
}
/**
*
*
* - * If empty reason is specified, the report is empty for this reason. - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional string empty_reason = 7;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @return The emptyReason.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public java.lang.String getEmptyReason() {
- java.lang.Object ref = emptyReason_;
- if (!(ref instanceof java.lang.String)) {
- com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
- java.lang.String s = bs.toStringUtf8();
- emptyReason_ = s;
- return s;
+ public com.google.analytics.data.v1alpha.SamplingMetadata getSamplingMetadatas(int index) {
+ if (samplingMetadatasBuilder_ == null) {
+ return samplingMetadatas_.get(index);
} else {
- return (java.lang.String) ref;
+ return samplingMetadatasBuilder_.getMessage(index);
}
}
@@ -4384,44 +8146,88 @@ public java.lang.String getEmptyReason() {
*
*
*
- * If empty reason is specified, the report is empty for this reason.
+ * If this report results is
+ * [sampled](https://support.google.com/analytics/answer/13331292), this
+ * describes the percentage of events used in this report. One
+ * `samplingMetadatas` is populated for each date range. Each
+ * `samplingMetadatas` corresponds to a date range in order that date ranges
+ * were specified in the request.
+ *
+ * However if the results are not sampled, this field will not be defined.
*
*
- * optional string empty_reason = 7;
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ */
+ public Builder setSamplingMetadatas(
+ int index, com.google.analytics.data.v1alpha.SamplingMetadata value) {
+ if (samplingMetadatasBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSamplingMetadatasIsMutable();
+ samplingMetadatas_.set(index, value);
+ onChanged();
+ } else {
+ samplingMetadatasBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
*
- * @return The bytes for emptyReason.
+ *
+ * + * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. + * + * However if the results are not sampled, this field will not be defined. + *+ * + *
repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public com.google.protobuf.ByteString getEmptyReasonBytes() {
- java.lang.Object ref = emptyReason_;
- if (ref instanceof String) {
- com.google.protobuf.ByteString b =
- com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
- emptyReason_ = b;
- return b;
+ public Builder setSamplingMetadatas(
+ int index, com.google.analytics.data.v1alpha.SamplingMetadata.Builder builderForValue) {
+ if (samplingMetadatasBuilder_ == null) {
+ ensureSamplingMetadatasIsMutable();
+ samplingMetadatas_.set(index, builderForValue.build());
+ onChanged();
} else {
- return (com.google.protobuf.ByteString) ref;
+ samplingMetadatasBuilder_.setMessage(index, builderForValue.build());
}
+ return this;
}
/**
*
*
* - * If empty reason is specified, the report is empty for this reason. - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional string empty_reason = 7;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @param value The emptyReason to set.
- * @return This builder for chaining.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder setEmptyReason(java.lang.String value) {
- if (value == null) {
- throw new NullPointerException();
+ public Builder addSamplingMetadatas(com.google.analytics.data.v1alpha.SamplingMetadata value) {
+ if (samplingMetadatasBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSamplingMetadatasIsMutable();
+ samplingMetadatas_.add(value);
+ onChanged();
+ } else {
+ samplingMetadatasBuilder_.addMessage(value);
}
- emptyReason_ = value;
- bitField0_ |= 0x00000010;
- onChanged();
return this;
}
@@ -4429,17 +8235,30 @@ public Builder setEmptyReason(java.lang.String value) {
*
*
* - * If empty reason is specified, the report is empty for this reason. - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional string empty_reason = 7;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @return This builder for chaining.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder clearEmptyReason() {
- emptyReason_ = getDefaultInstance().getEmptyReason();
- bitField0_ = (bitField0_ & ~0x00000010);
- onChanged();
+ public Builder addSamplingMetadatas(
+ int index, com.google.analytics.data.v1alpha.SamplingMetadata value) {
+ if (samplingMetadatasBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureSamplingMetadatasIsMutable();
+ samplingMetadatas_.add(index, value);
+ onChanged();
+ } else {
+ samplingMetadatasBuilder_.addMessage(index, value);
+ }
return this;
}
@@ -4447,97 +8266,110 @@ public Builder clearEmptyReason() {
*
*
* - * If empty reason is specified, the report is empty for this reason. - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional string empty_reason = 7;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @param value The bytes for emptyReason to set.
- * @return This builder for chaining.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder setEmptyReasonBytes(com.google.protobuf.ByteString value) {
- if (value == null) {
- throw new NullPointerException();
+ public Builder addSamplingMetadatas(
+ com.google.analytics.data.v1alpha.SamplingMetadata.Builder builderForValue) {
+ if (samplingMetadatasBuilder_ == null) {
+ ensureSamplingMetadatasIsMutable();
+ samplingMetadatas_.add(builderForValue.build());
+ onChanged();
+ } else {
+ samplingMetadatasBuilder_.addMessage(builderForValue.build());
}
- checkByteStringIsUtf8(value);
- emptyReason_ = value;
- bitField0_ |= 0x00000010;
- onChanged();
return this;
}
- private boolean subjectToThresholding_;
-
/**
*
*
* - * If `subjectToThresholding` is true, this report is subject to thresholding - * and only returns data that meets the minimum aggregation thresholds. It is - * possible for a request to be subject to thresholding thresholding and no - * data is absent from the report, and this happens when all data is above the - * thresholds. To learn more, see [Data - * thresholds](https://support.google.com/analytics/answer/9383630) and [About - * Demographics and - * Interests](https://support.google.com/analytics/answer/2799357). - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional bool subject_to_thresholding = 8;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @return Whether the subjectToThresholding field is set.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- @java.lang.Override
- public boolean hasSubjectToThresholding() {
- return ((bitField0_ & 0x00000020) != 0);
+ public Builder addSamplingMetadatas(
+ int index, com.google.analytics.data.v1alpha.SamplingMetadata.Builder builderForValue) {
+ if (samplingMetadatasBuilder_ == null) {
+ ensureSamplingMetadatasIsMutable();
+ samplingMetadatas_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ samplingMetadatasBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
}
/**
*
*
* - * If `subjectToThresholding` is true, this report is subject to thresholding - * and only returns data that meets the minimum aggregation thresholds. It is - * possible for a request to be subject to thresholding thresholding and no - * data is absent from the report, and this happens when all data is above the - * thresholds. To learn more, see [Data - * thresholds](https://support.google.com/analytics/answer/9383630) and [About - * Demographics and - * Interests](https://support.google.com/analytics/answer/2799357). - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional bool subject_to_thresholding = 8;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @return The subjectToThresholding.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- @java.lang.Override
- public boolean getSubjectToThresholding() {
- return subjectToThresholding_;
+ public Builder addAllSamplingMetadatas(
+ java.lang.Iterable extends com.google.analytics.data.v1alpha.SamplingMetadata> values) {
+ if (samplingMetadatasBuilder_ == null) {
+ ensureSamplingMetadatasIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, samplingMetadatas_);
+ onChanged();
+ } else {
+ samplingMetadatasBuilder_.addAllMessages(values);
+ }
+ return this;
}
/**
*
*
* - * If `subjectToThresholding` is true, this report is subject to thresholding - * and only returns data that meets the minimum aggregation thresholds. It is - * possible for a request to be subject to thresholding thresholding and no - * data is absent from the report, and this happens when all data is above the - * thresholds. To learn more, see [Data - * thresholds](https://support.google.com/analytics/answer/9383630) and [About - * Demographics and - * Interests](https://support.google.com/analytics/answer/2799357). - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional bool subject_to_thresholding = 8;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @param value The subjectToThresholding to set.
- * @return This builder for chaining.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder setSubjectToThresholding(boolean value) {
-
- subjectToThresholding_ = value;
- bitField0_ |= 0x00000020;
- onChanged();
+ public Builder clearSamplingMetadatas() {
+ if (samplingMetadatasBuilder_ == null) {
+ samplingMetadatas_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000040);
+ onChanged();
+ } else {
+ samplingMetadatasBuilder_.clear();
+ }
return this;
}
@@ -4545,45 +8377,29 @@ public Builder setSubjectToThresholding(boolean value) {
*
*
* - * If `subjectToThresholding` is true, this report is subject to thresholding - * and only returns data that meets the minimum aggregation thresholds. It is - * possible for a request to be subject to thresholding thresholding and no - * data is absent from the report, and this happens when all data is above the - * thresholds. To learn more, see [Data - * thresholds](https://support.google.com/analytics/answer/9383630) and [About - * Demographics and - * Interests](https://support.google.com/analytics/answer/2799357). - *+ * If this report results is + * [sampled](https://support.google.com/analytics/answer/13331292), this + * describes the percentage of events used in this report. One + * `samplingMetadatas` is populated for each date range. Each + * `samplingMetadatas` corresponds to a date range in order that date ranges + * were specified in the request. * - *
optional bool subject_to_thresholding = 8;
+ * However if the results are not sampled, this field will not be defined.
+ *
*
- * @return This builder for chaining.
+ * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder clearSubjectToThresholding() {
- bitField0_ = (bitField0_ & ~0x00000020);
- subjectToThresholding_ = false;
- onChanged();
- return this;
- }
-
- private java.util.Listrepeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public java.util.Listrepeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public int getSamplingMetadatasCount() {
+ public com.google.analytics.data.v1alpha.SamplingMetadataOrBuilder
+ getSamplingMetadatasOrBuilder(int index) {
if (samplingMetadatasBuilder_ == null) {
- return samplingMetadatas_.size();
+ return samplingMetadatas_.get(index);
} else {
- return samplingMetadatasBuilder_.getCount();
+ return samplingMetadatasBuilder_.getMessageOrBuilder(index);
}
}
@@ -4649,11 +8462,12 @@ public int getSamplingMetadatasCount() {
*
* repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public com.google.analytics.data.v1alpha.SamplingMetadata getSamplingMetadatas(int index) {
- if (samplingMetadatasBuilder_ == null) {
- return samplingMetadatas_.get(index);
+ public java.util.List extends com.google.analytics.data.v1alpha.SamplingMetadataOrBuilder>
+ getSamplingMetadatasOrBuilderList() {
+ if (samplingMetadatasBuilder_ != null) {
+ return samplingMetadatasBuilder_.getMessageOrBuilderList();
} else {
- return samplingMetadatasBuilder_.getMessage(index);
+ return java.util.Collections.unmodifiableList(samplingMetadatas_);
}
}
@@ -4673,19 +8487,10 @@ public com.google.analytics.data.v1alpha.SamplingMetadata getSamplingMetadatas(i
*
* repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder setSamplingMetadatas(
- int index, com.google.analytics.data.v1alpha.SamplingMetadata value) {
- if (samplingMetadatasBuilder_ == null) {
- if (value == null) {
- throw new NullPointerException();
- }
- ensureSamplingMetadatasIsMutable();
- samplingMetadatas_.set(index, value);
- onChanged();
- } else {
- samplingMetadatasBuilder_.setMessage(index, value);
- }
- return this;
+ public com.google.analytics.data.v1alpha.SamplingMetadata.Builder
+ addSamplingMetadatasBuilder() {
+ return internalGetSamplingMetadatasFieldBuilder()
+ .addBuilder(com.google.analytics.data.v1alpha.SamplingMetadata.getDefaultInstance());
}
/**
@@ -4704,16 +8509,11 @@ public Builder setSamplingMetadatas(
*
* repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder setSamplingMetadatas(
- int index, com.google.analytics.data.v1alpha.SamplingMetadata.Builder builderForValue) {
- if (samplingMetadatasBuilder_ == null) {
- ensureSamplingMetadatasIsMutable();
- samplingMetadatas_.set(index, builderForValue.build());
- onChanged();
- } else {
- samplingMetadatasBuilder_.setMessage(index, builderForValue.build());
- }
- return this;
+ public com.google.analytics.data.v1alpha.SamplingMetadata.Builder addSamplingMetadatasBuilder(
+ int index) {
+ return internalGetSamplingMetadatasFieldBuilder()
+ .addBuilder(
+ index, com.google.analytics.data.v1alpha.SamplingMetadata.getDefaultInstance());
}
/**
@@ -4732,17 +8532,65 @@ public Builder setSamplingMetadatas(
*
* repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
*/
- public Builder addSamplingMetadatas(com.google.analytics.data.v1alpha.SamplingMetadata value) {
+ public java.util.List+ * Identifies the type of data in the report. + *+ * + *
.google.analytics.data.v1alpha.Section section = 10;
+ *
+ * @return The enum numeric value on the wire for section.
+ */
+ @java.lang.Override
+ public int getSectionValue() {
+ return section_;
+ }
+
+ /**
+ *
+ *
+ * + * Identifies the type of data in the report. + *+ * + *
.google.analytics.data.v1alpha.Section section = 10;
+ *
+ * @param value The enum numeric value on the wire for section to set.
+ * @return This builder for chaining.
+ */
+ public Builder setSectionValue(int value) {
+ section_ = value;
+ bitField0_ |= 0x00000080;
+ onChanged();
return this;
}
@@ -4750,30 +8598,39 @@ public Builder addSamplingMetadatas(com.google.analytics.data.v1alpha.SamplingMe
*
*
* - * If this report results is - * [sampled](https://support.google.com/analytics/answer/13331292), this - * describes the percentage of events used in this report. One - * `samplingMetadatas` is populated for each date range. Each - * `samplingMetadatas` corresponds to a date range in order that date ranges - * were specified in the request. + * Identifies the type of data in the report. + ** - * However if the results are not sampled, this field will not be defined. + *
.google.analytics.data.v1alpha.Section section = 10;
+ *
+ * @return The section.
+ */
+ @java.lang.Override
+ public com.google.analytics.data.v1alpha.Section getSection() {
+ com.google.analytics.data.v1alpha.Section result =
+ com.google.analytics.data.v1alpha.Section.forNumber(section_);
+ return result == null ? com.google.analytics.data.v1alpha.Section.UNRECOGNIZED : result;
+ }
+
+ /**
+ *
+ *
+ *
+ * Identifies the type of data in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ * .google.analytics.data.v1alpha.Section section = 10;
+ *
+ * @param value The section to set.
+ * @return This builder for chaining.
*/
- public Builder addSamplingMetadatas(
- int index, com.google.analytics.data.v1alpha.SamplingMetadata value) {
- if (samplingMetadatasBuilder_ == null) {
- if (value == null) {
- throw new NullPointerException();
- }
- ensureSamplingMetadatasIsMutable();
- samplingMetadatas_.add(index, value);
- onChanged();
- } else {
- samplingMetadatasBuilder_.addMessage(index, value);
+ public Builder setSection(com.google.analytics.data.v1alpha.Section value) {
+ if (value == null) {
+ throw new NullPointerException();
}
+ bitField0_ |= 0x00000080;
+ section_ = value.getNumber();
+ onChanged();
return this;
}
@@ -4781,82 +8638,145 @@ public Builder addSamplingMetadatas(
*
*
* - * If this report results is - * [sampled](https://support.google.com/analytics/answer/13331292), this - * describes the percentage of events used in this report. One - * `samplingMetadatas` is populated for each date range. Each - * `samplingMetadatas` corresponds to a date range in order that date ranges - * were specified in the request. + * Identifies the type of data in the report. + ** - * However if the results are not sampled, this field will not be defined. + *
.google.analytics.data.v1alpha.Section section = 10;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearSection() {
+ bitField0_ = (bitField0_ & ~0x00000080);
+ section_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private java.util.List
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public Builder addSamplingMetadatas(
- com.google.analytics.data.v1alpha.SamplingMetadata.Builder builderForValue) {
- if (samplingMetadatasBuilder_ == null) {
- ensureSamplingMetadatasIsMutable();
- samplingMetadatas_.add(builderForValue.build());
- onChanged();
+ public java.util.List- * If this report results is - * [sampled](https://support.google.com/analytics/answer/13331292), this - * describes the percentage of events used in this report. One - * `samplingMetadatas` is populated for each date range. Each - * `samplingMetadatas` corresponds to a date range in order that date ranges - * were specified in the request. + * If set, indicate there is data truncation in the report. + ** - * However if the results are not sampled, this field will not be defined. + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ public int getDataTruncationReasonsCount() {
+ if (dataTruncationReasonsBuilder_ == null) {
+ return dataTruncationReasons_.size();
+ } else {
+ return dataTruncationReasonsBuilder_.getCount();
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public Builder addSamplingMetadatas(
- int index, com.google.analytics.data.v1alpha.SamplingMetadata.Builder builderForValue) {
- if (samplingMetadatasBuilder_ == null) {
- ensureSamplingMetadatasIsMutable();
- samplingMetadatas_.add(index, builderForValue.build());
- onChanged();
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ getDataTruncationReasons(int index) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ return dataTruncationReasons_.get(index);
} else {
- samplingMetadatasBuilder_.addMessage(index, builderForValue.build());
+ return dataTruncationReasonsBuilder_.getMessage(index);
}
- return this;
}
/**
*
*
* - * If this report results is - * [sampled](https://support.google.com/analytics/answer/13331292), this - * describes the percentage of events used in this report. One - * `samplingMetadatas` is populated for each date range. Each - * `samplingMetadatas` corresponds to a date range in order that date ranges - * were specified in the request. + * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ public Builder setDataTruncationReasons(
+ int index, com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason value) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.set(index, value);
+ onChanged();
+ } else {
+ dataTruncationReasonsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
*
- * However if the results are not sampled, this field will not be defined.
+ *
+ *
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public Builder addAllSamplingMetadatas(
- java.lang.Iterable extends com.google.analytics.data.v1alpha.SamplingMetadata> values) {
- if (samplingMetadatasBuilder_ == null) {
- ensureSamplingMetadatasIsMutable();
- com.google.protobuf.AbstractMessageLite.Builder.addAll(values, samplingMetadatas_);
+ public Builder setDataTruncationReasons(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder
+ builderForValue) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.set(index, builderForValue.build());
onChanged();
} else {
- samplingMetadatasBuilder_.addAllMessages(values);
+ dataTruncationReasonsBuilder_.setMessage(index, builderForValue.build());
}
return this;
}
@@ -4865,25 +8785,24 @@ public Builder addAllSamplingMetadatas(
*
*
*
- * If this report results is
- * [sampled](https://support.google.com/analytics/answer/13331292), this
- * describes the percentage of events used in this report. One
- * `samplingMetadatas` is populated for each date range. Each
- * `samplingMetadatas` corresponds to a date range in order that date ranges
- * were specified in the request.
- *
- * However if the results are not sampled, this field will not be defined.
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public Builder clearSamplingMetadatas() {
- if (samplingMetadatasBuilder_ == null) {
- samplingMetadatas_ = java.util.Collections.emptyList();
- bitField0_ = (bitField0_ & ~0x00000040);
+ public Builder addDataTruncationReasons(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason value) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.add(value);
onChanged();
} else {
- samplingMetadatasBuilder_.clear();
+ dataTruncationReasonsBuilder_.addMessage(value);
}
return this;
}
@@ -4892,25 +8811,24 @@ public Builder clearSamplingMetadatas() {
*
*
*
- * If this report results is
- * [sampled](https://support.google.com/analytics/answer/13331292), this
- * describes the percentage of events used in this report. One
- * `samplingMetadatas` is populated for each date range. Each
- * `samplingMetadatas` corresponds to a date range in order that date ranges
- * were specified in the request.
- *
- * However if the results are not sampled, this field will not be defined.
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public Builder removeSamplingMetadatas(int index) {
- if (samplingMetadatasBuilder_ == null) {
- ensureSamplingMetadatasIsMutable();
- samplingMetadatas_.remove(index);
+ public Builder addDataTruncationReasons(
+ int index, com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason value) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.add(index, value);
onChanged();
} else {
- samplingMetadatasBuilder_.remove(index);
+ dataTruncationReasonsBuilder_.addMessage(index, value);
}
return this;
}
@@ -4919,252 +8837,252 @@ public Builder removeSamplingMetadatas(int index) {
*
*
*
- * If this report results is
- * [sampled](https://support.google.com/analytics/answer/13331292), this
- * describes the percentage of events used in this report. One
- * `samplingMetadatas` is populated for each date range. Each
- * `samplingMetadatas` corresponds to a date range in order that date ranges
- * were specified in the request.
- *
- * However if the results are not sampled, this field will not be defined.
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public com.google.analytics.data.v1alpha.SamplingMetadata.Builder getSamplingMetadatasBuilder(
- int index) {
- return internalGetSamplingMetadatasFieldBuilder().getBuilder(index);
+ public Builder addDataTruncationReasons(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder
+ builderForValue) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.add(builderForValue.build());
+ onChanged();
+ } else {
+ dataTruncationReasonsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
}
/**
*
*
*
- * If this report results is
- * [sampled](https://support.google.com/analytics/answer/13331292), this
- * describes the percentage of events used in this report. One
- * `samplingMetadatas` is populated for each date range. Each
- * `samplingMetadatas` corresponds to a date range in order that date ranges
- * were specified in the request.
- *
- * However if the results are not sampled, this field will not be defined.
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public com.google.analytics.data.v1alpha.SamplingMetadataOrBuilder
- getSamplingMetadatasOrBuilder(int index) {
- if (samplingMetadatasBuilder_ == null) {
- return samplingMetadatas_.get(index);
+ public Builder addDataTruncationReasons(
+ int index,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder
+ builderForValue) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.add(index, builderForValue.build());
+ onChanged();
} else {
- return samplingMetadatasBuilder_.getMessageOrBuilder(index);
+ dataTruncationReasonsBuilder_.addMessage(index, builderForValue.build());
}
+ return this;
}
/**
*
*
*
- * If this report results is
- * [sampled](https://support.google.com/analytics/answer/13331292), this
- * describes the percentage of events used in this report. One
- * `samplingMetadatas` is populated for each date range. Each
- * `samplingMetadatas` corresponds to a date range in order that date ranges
- * were specified in the request.
- *
- * However if the results are not sampled, this field will not be defined.
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public java.util.List extends com.google.analytics.data.v1alpha.SamplingMetadataOrBuilder>
- getSamplingMetadatasOrBuilderList() {
- if (samplingMetadatasBuilder_ != null) {
- return samplingMetadatasBuilder_.getMessageOrBuilderList();
+ public Builder addAllDataTruncationReasons(
+ java.lang.Iterable<
+ ? extends com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason>
+ values) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ ensureDataTruncationReasonsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, dataTruncationReasons_);
+ onChanged();
} else {
- return java.util.Collections.unmodifiableList(samplingMetadatas_);
+ dataTruncationReasonsBuilder_.addAllMessages(values);
}
+ return this;
}
/**
*
*
*
- * If this report results is
- * [sampled](https://support.google.com/analytics/answer/13331292), this
- * describes the percentage of events used in this report. One
- * `samplingMetadatas` is populated for each date range. Each
- * `samplingMetadatas` corresponds to a date range in order that date ranges
- * were specified in the request.
- *
- * However if the results are not sampled, this field will not be defined.
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public com.google.analytics.data.v1alpha.SamplingMetadata.Builder
- addSamplingMetadatasBuilder() {
- return internalGetSamplingMetadatasFieldBuilder()
- .addBuilder(com.google.analytics.data.v1alpha.SamplingMetadata.getDefaultInstance());
+ public Builder clearDataTruncationReasons() {
+ if (dataTruncationReasonsBuilder_ == null) {
+ dataTruncationReasons_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000100);
+ onChanged();
+ } else {
+ dataTruncationReasonsBuilder_.clear();
+ }
+ return this;
}
/**
*
*
*
- * If this report results is
- * [sampled](https://support.google.com/analytics/answer/13331292), this
- * describes the percentage of events used in this report. One
- * `samplingMetadatas` is populated for each date range. Each
- * `samplingMetadatas` corresponds to a date range in order that date ranges
- * were specified in the request.
- *
- * However if the results are not sampled, this field will not be defined.
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public com.google.analytics.data.v1alpha.SamplingMetadata.Builder addSamplingMetadatasBuilder(
- int index) {
- return internalGetSamplingMetadatasFieldBuilder()
- .addBuilder(
- index, com.google.analytics.data.v1alpha.SamplingMetadata.getDefaultInstance());
+ public Builder removeDataTruncationReasons(int index) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ ensureDataTruncationReasonsIsMutable();
+ dataTruncationReasons_.remove(index);
+ onChanged();
+ } else {
+ dataTruncationReasonsBuilder_.remove(index);
+ }
+ return this;
}
/**
*
*
*
- * If this report results is
- * [sampled](https://support.google.com/analytics/answer/13331292), this
- * describes the percentage of events used in this report. One
- * `samplingMetadatas` is populated for each date range. Each
- * `samplingMetadatas` corresponds to a date range in order that date ranges
- * were specified in the request.
- *
- * However if the results are not sampled, this field will not be defined.
+ * If set, indicate there is data truncation in the report.
*
*
- * repeated .google.analytics.data.v1alpha.SamplingMetadata sampling_metadatas = 9;
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public java.util.List
- * Identifies the type of data in the report.
+ * If set, indicate there is data truncation in the report.
*
*
- * .google.analytics.data.v1alpha.Section section = 10;
- *
- * @return The enum numeric value on the wire for section.
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- @java.lang.Override
- public int getSectionValue() {
- return section_;
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReasonOrBuilder
+ getDataTruncationReasonsOrBuilder(int index) {
+ if (dataTruncationReasonsBuilder_ == null) {
+ return dataTruncationReasons_.get(index);
+ } else {
+ return dataTruncationReasonsBuilder_.getMessageOrBuilder(index);
+ }
}
/**
*
*
*
- * Identifies the type of data in the report.
+ * If set, indicate there is data truncation in the report.
*
*
- * .google.analytics.data.v1alpha.Section section = 10;
- *
- * @param value The enum numeric value on the wire for section to set.
- * @return This builder for chaining.
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public Builder setSectionValue(int value) {
- section_ = value;
- bitField0_ |= 0x00000080;
- onChanged();
- return this;
+ public java.util.List<
+ ? extends
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReasonOrBuilder>
+ getDataTruncationReasonsOrBuilderList() {
+ if (dataTruncationReasonsBuilder_ != null) {
+ return dataTruncationReasonsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(dataTruncationReasons_);
+ }
}
/**
*
*
*
- * Identifies the type of data in the report.
+ * If set, indicate there is data truncation in the report.
*
*
- * .google.analytics.data.v1alpha.Section section = 10;
- *
- * @return The section.
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- @java.lang.Override
- public com.google.analytics.data.v1alpha.Section getSection() {
- com.google.analytics.data.v1alpha.Section result =
- com.google.analytics.data.v1alpha.Section.forNumber(section_);
- return result == null ? com.google.analytics.data.v1alpha.Section.UNRECOGNIZED : result;
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder
+ addDataTruncationReasonsBuilder() {
+ return internalGetDataTruncationReasonsFieldBuilder()
+ .addBuilder(
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .getDefaultInstance());
}
/**
*
*
*
- * Identifies the type of data in the report.
+ * If set, indicate there is data truncation in the report.
*
*
- * .google.analytics.data.v1alpha.Section section = 10;
- *
- * @param value The section to set.
- * @return This builder for chaining.
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public Builder setSection(com.google.analytics.data.v1alpha.Section value) {
- if (value == null) {
- throw new NullPointerException();
- }
- bitField0_ |= 0x00000080;
- section_ = value.getNumber();
- onChanged();
- return this;
+ public com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder
+ addDataTruncationReasonsBuilder(int index) {
+ return internalGetDataTruncationReasonsFieldBuilder()
+ .addBuilder(
+ index,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason
+ .getDefaultInstance());
}
/**
*
*
*
- * Identifies the type of data in the report.
+ * If set, indicate there is data truncation in the report.
*
*
- * .google.analytics.data.v1alpha.Section section = 10;
- *
- * @return This builder for chaining.
+ *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
*/
- public Builder clearSection() {
- bitField0_ = (bitField0_ & ~0x00000080);
- section_ = 0;
- onChanged();
- return this;
+ public java.util.List<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder>
+ getDataTruncationReasonsBuilderList() {
+ return internalGetDataTruncationReasonsFieldBuilder().getBuilderList();
+ }
+
+ private com.google.protobuf.RepeatedFieldBuilder<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReasonOrBuilder>
+ internalGetDataTruncationReasonsFieldBuilder() {
+ if (dataTruncationReasonsBuilder_ == null) {
+ dataTruncationReasonsBuilder_ =
+ new com.google.protobuf.RepeatedFieldBuilder<
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason.Builder,
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReasonOrBuilder>(
+ dataTruncationReasons_,
+ ((bitField0_ & 0x00000100) != 0),
+ getParentForChildren(),
+ isClean());
+ dataTruncationReasons_ = null;
+ }
+ return dataTruncationReasonsBuilder_;
}
// @@protoc_insertion_point(builder_scope:google.analytics.data.v1alpha.ResponseMetaData)
diff --git a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseMetaDataOrBuilder.java b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseMetaDataOrBuilder.java
index 003c86c19cf6..f21f2732490b 100644
--- a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseMetaDataOrBuilder.java
+++ b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/java/com/google/analytics/data/v1alpha/ResponseMetaDataOrBuilder.java
@@ -413,4 +413,75 @@ com.google.analytics.data.v1alpha.SamplingMetadataOrBuilder getSamplingMetadatas
* @return The section.
*/
com.google.analytics.data.v1alpha.Section getSection();
+
+ /**
+ *
+ *
+ * + * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ java.util.List+ * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason getDataTruncationReasons(
+ int index);
+
+ /**
+ *
+ *
+ * + * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ int getDataTruncationReasonsCount();
+
+ /**
+ *
+ *
+ * + * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ java.util.List<
+ ? extends
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReasonOrBuilder>
+ getDataTruncationReasonsOrBuilderList();
+
+ /**
+ *
+ *
+ * + * If set, indicate there is data truncation in the report. + *+ * + *
+ * repeated .google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReason data_truncation_reasons = 11;
+ *
+ */
+ com.google.analytics.data.v1alpha.ResponseMetaData.DataTruncationReasonOrBuilder
+ getDataTruncationReasonsOrBuilder(int index);
}
diff --git a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/proto/google/analytics/data/v1alpha/analytics_data_api.proto b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/proto/google/analytics/data/v1alpha/analytics_data_api.proto
index c936b2d0ee6a..ba34efd6dac1 100644
--- a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/proto/google/analytics/data/v1alpha/analytics_data_api.proto
+++ b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/proto/google/analytics/data/v1alpha/analytics_data_api.proto
@@ -38,6 +38,7 @@ service AlphaAnalyticsData {
option (google.api.default_host) = "analyticsdata.googleapis.com";
option (google.api.oauth_scopes) =
"https://www.googleapis.com/auth/analytics,"
+ "https://www.googleapis.com/auth/analytics.chatbot.read,"
"https://www.googleapis.com/auth/analytics.readonly";
// Returns a customized funnel report of your Google Analytics event data. The
@@ -301,6 +302,24 @@ service AlphaAnalyticsData {
option (google.api.method_signature) = "parent";
}
+ // Provides a chat interface for interacting with Google Analytics data
+ // through the API.
+ //
+ // This product uses AI and may display inaccurate info. Your chat activity
+ // may be used to improve the product and your use is subject to Google's
+ // [Terms](https://policies.google.com/terms),
+ // [AI Use
+ // Policy](https://policies.google.com/terms/generative-ai/use-policy), and
+ // [Privacy Policy](https://policies.google.com/privacy).
+ // [Learn more about Chat AI
+ // Privacy](https://support.google.com/helpguide/answer/14185196).
+ rpc Chat(ChatRequest) returns (ChatResponse) {
+ option (google.api.http) = {
+ post: "/v1alpha/{property=properties/*}:chat"
+ body: "*"
+ };
+ }
+
// Returns a customized report of your Google Analytics event data. Reports
// contain statistics derived from data collected by the Google Analytics
// tracking code. The data returned from the API is as a table with columns
@@ -1240,6 +1259,45 @@ message ListReportTasksResponse {
optional string next_page_token = 2;
}
+// Request message for the Chat method.
+message ChatRequest {
+ // Required. The property to chat about.
+ // Format: properties/{property}
+ string property = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ type: "analyticsadmin.googleapis.com/Property"
+ }
+ ];
+
+ // Required. The user's query.
+ string user_query = 2 [(google.api.field_behavior) = REQUIRED];
+
+ // Optional. Provide this session ID to continue an existing conversation
+ // and maintain context. If this field is empty or unset, a new chat
+ // session is created. Invalid session IDs will result in an error.
+ optional string session_id = 3 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. If true, the response will include the current state of this
+ // Analytics Property's quota. Quota is returned in
+ // [PropertyChatQuota](#PropertyChatQuota).
+ bool return_property_quota = 4 [(google.api.field_behavior) = OPTIONAL];
+}
+
+// Response message for the Chat method.
+message ChatResponse {
+ // The unique identifier for this chat session. Provide this ID in subsequent
+ // requests to maintain conversational context.
+ string session_id = 1;
+
+ // The response blocks that make up the chat response. This can include text,
+ // tables, and lists.
+ repeated ResponseBlock blocks = 2;
+
+ // This Analytics Property's quota state including this request.
+ PropertyChatQuota property_quota = 3;
+}
+
// The request to generate a report.
message RunReportRequest {
// Required. A Google Analytics property identifier whose events are tracked.
diff --git a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/proto/google/analytics/data/v1alpha/data.proto b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/proto/google/analytics/data/v1alpha/data.proto
index 629c34ca7f1a..770cbad2b4cc 100644
--- a/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/proto/google/analytics/data/v1alpha/data.proto
+++ b/java-analytics-data/proto-google-analytics-data-v1alpha/src/main/proto/google/analytics/data/v1alpha/data.proto
@@ -546,6 +546,73 @@ message ResponseMetaData {
repeated ActiveMetricRestriction active_metric_restrictions = 1;
}
+ // Describes a reason for data truncation in the report.
+ message DataTruncationReason {
+ // The type of data truncation.
+ enum DataTruncationType {
+ // Unspecified type.
+ DATA_TRUNCATION_TYPE_UNSPECIFIED = 0;
+
+ // Data is truncated in attribution report for rules-based models golden
+ // date.
+ DATA_TRUNCATION_TYPE_RULES_BASED_MODELS = 1;
+
+ // Data is truncated in attribution report for data driven attribution
+ // golden date.
+ DATA_TRUNCATION_TYPE_DATA_DRIVEN_ATTRIBUTION = 2;
+
+ // Data is truncated because DV360 policy does not permit data older than
+ // 2 years from being returned.
+ DATA_TRUNCATION_TYPE_DV360 = 3;
+
+ // Data is truncated because CM360 policy does not permit data older than
+ // 2 years from being returned.
+ DATA_TRUNCATION_TYPE_CM360 = 4;
+
+ // New item-scoped ecommerce metrics only have data after a specific date.
+ DATA_TRUNCATION_TYPE_ITEM_SCOPED_ECOMMERCE_METRICS = 5;
+
+ // New event-scoped ecommerce metrics only have data after a specific
+ // date.
+ DATA_TRUNCATION_TYPE_EVENT_SCOPED_ECOMMERCE_METRICS = 6;
+
+ // Query date range may not be fully served.
+ DATA_TRUNCATION_TYPE_DATE_RANGE = 7;
+
+ // Data truncated because the query attempts to read event data prior
+ // to its retention date.
+ DATA_TRUNCATION_TYPE_PROPERTY = 8;
+
+ // Data is truncated in conversions report.
+ DATA_TRUNCATION_TYPE_CONVERSIONS = 9;
+
+ // Data is truncated due to Google Ads 36 month retention policy.
+ DATA_TRUNCATION_TYPE_GOOGLE_ADS = 10;
+ }
+
+ // Define the truncated date range from start_date to end_date.
+ message DataTruncationDateRange {
+ // The start date in the format YYYY-MM-DD (inclusive).
+ optional string start_date = 1;
+
+ // The end date in the format YYYY-MM-DD (inclusive).
+ optional string end_date = 2;
+ }
+
+ // The type of data truncation.
+ optional DataTruncationType data_truncation_type = 1;
+
+ // A descriptive message explaining the data truncation.
+ optional string data_truncation_message = 2;
+
+ // The data truncation date in the format YYYY-MM-DD.
+ // Indicates data before this date is truncated.
+ optional string data_truncation_date = 3;
+
+ // The truncated date ranges.
+ repeated DataTruncationDateRange data_truncation_date_ranges = 4;
+ }
+
// If true, indicates some buckets of dimension combinations are rolled into
// "(other)" row. This can happen for high cardinality reports.
//
@@ -610,6 +677,9 @@ message ResponseMetaData {
// Identifies the type of data in the report.
Section section = 10;
+
+ // If set, indicate there is data truncation in the report.
+ repeated DataTruncationReason data_truncation_reasons = 11;
}
// Describes a dimension column in the report. Dimensions requested in a report
@@ -849,6 +919,49 @@ message FunnelSubReport {
FunnelResponseMetadata metadata = 4;
}
+// One block of structured data in chat response.
+message ResponseBlock {
+ // A cell in a data table.
+ message DataTableCell {
+ // The value of the cell.
+ string value = 1;
+ }
+
+ // Describes a column header in a DataTable.
+ message DataTableHeader {
+ // The header name.
+ string header = 1;
+
+ // The data type.
+ string data_type = 2;
+ }
+
+ // A row in a DataTable.
+ message DataTableRow {
+ // The cell values in the row.
+ repeated DataTableCell columns = 1;
+ }
+
+ // A table of data.
+ message DataTable {
+ // Describes dimension columns. The number of headers and ordering of
+ // headers matches the dimensions present in rows.
+ repeated DataTableHeader headers = 1;
+
+ // Rows of dimension value combinations and metric values in the report.
+ repeated DataTableRow rows = 2;
+ }
+
+ // One block of structured data.
+ oneof block {
+ // A block of text.
+ string text = 1;
+
+ // A block of table data.
+ DataTable table = 2;
+ }
+}
+
// User segments are subsets of users who engaged with your site or app. For
// example, users who have previously purchased; users who added items to their
// shopping carts, but didn’t complete a purchase.
@@ -1812,3 +1925,12 @@ message ConversionMetadata {
// This conversion's name within the Google Analytics user interface.
string display_name = 2;
}
+
+// Property quota for chatbot specific fields.
+message PropertyChatQuota {
+ // Chat tokens consumed per day.
+ QuotaStatus tokens_per_day = 1;
+
+ // Chat tokens consumed per hour.
+ QuotaStatus tokens_per_hour = 2;
+}
diff --git a/java-analytics-data/samples/snippets/generated/com/google/analytics/data/v1alpha/alphaanalyticsdata/chat/AsyncChat.java b/java-analytics-data/samples/snippets/generated/com/google/analytics/data/v1alpha/alphaanalyticsdata/chat/AsyncChat.java
new file mode 100644
index 000000000000..497b8dea2c34
--- /dev/null
+++ b/java-analytics-data/samples/snippets/generated/com/google/analytics/data/v1alpha/alphaanalyticsdata/chat/AsyncChat.java
@@ -0,0 +1,52 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.google.analytics.data.v1alpha.samples;
+
+// [START analyticsdata_v1alpha_generated_AlphaAnalyticsData_Chat_async]
+import com.google.analytics.data.v1alpha.AlphaAnalyticsDataClient;
+import com.google.analytics.data.v1alpha.ChatRequest;
+import com.google.analytics.data.v1alpha.ChatResponse;
+import com.google.analytics.data.v1alpha.PropertyName;
+import com.google.api.core.ApiFuture;
+
+public class AsyncChat {
+
+ public static void main(String[] args) throws Exception {
+ asyncChat();
+ }
+
+ public static void asyncChat() throws Exception {
+ // This snippet has been automatically generated and should be regarded as a code template only.
+ // It will require modifications to work:
+ // - It may require correct/in-range values for request initialization.
+ // - It may require specifying regional endpoints when creating the service client as shown in
+ // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ try (AlphaAnalyticsDataClient alphaAnalyticsDataClient = AlphaAnalyticsDataClient.create()) {
+ ChatRequest request =
+ ChatRequest.newBuilder()
+ .setProperty(PropertyName.of("[PROPERTY]").toString())
+ .setUserQuery("userQuery326624189")
+ .setSessionId("sessionId607796817")
+ .setReturnPropertyQuota(true)
+ .build();
+ ApiFutureListMessagePins
Lists message pins in a space. Users can pin important messages in spaces for easy access. For more information, see [Pin or unpin a conversation in Google Chat](https://support.google.com/chat/answer/15622437). + *
Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following [authorization scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): + *
- `https://www.googleapis.com/auth/chat.spaces.pins.readonly` - `https://www.googleapis.com/auth/chat.spaces.pins` - `https://www.googleapis.com/auth/chat.spaces.readonly` - `https://www.googleapis.com/auth/chat.spaces`
Request object method variants only take one parameter, a request object, which must be constructed before the call.
+ *listMessagePins(ListMessagePinsRequest request) + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.
+ *listMessagePins(SpaceName parent) + *
listMessagePins(String parent) + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.
+ *listMessagePinsPagedCallable() + *
listMessagePinsCallable() + *
CreateMessagePin
Creates a message pin. + *
Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following [authorization scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): + *
- `https://www.googleapis.com/auth/chat.spaces.pins` - `https://www.googleapis.com/auth/chat.spaces`
Request object method variants only take one parameter, a request object, which must be constructed before the call.
+ *createMessagePin(CreateMessagePinRequest request) + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.
+ *createMessagePin(SpaceName parent, MessagePin messagePin) + *
createMessagePin(String parent, MessagePin messagePin) + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.
+ *createMessagePinCallable() + *
DeleteMessagePin
Deletes a message pin. + *
Requires [user authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user) with one of the following [authorization scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes): + *
- `https://www.googleapis.com/auth/chat.spaces.pins` - `https://www.googleapis.com/auth/chat.spaces`
Request object method variants only take one parameter, a request object, which must be constructed before the call.
+ *deleteMessagePin(DeleteMessagePinRequest request) + *
"Flattened" method variants have converted the fields of the request object into function parameters to enable multiple ways to call the same method.
+ *deleteMessagePin(MessagePinName name) + *
deleteMessagePin(String name) + *
Callable method variants take no parameters and return an immutable API callable object, which can be used to initiate calls to the service.
+ *deleteMessagePinCallable() + *
CreateCustomEmoji
Creates a custom emoji. *
Custom emojis are only available for Google Workspace accounts, and the administrator must turn custom emojis on for the organization. For more information, see [Learn about custom emojis in Google Chat](https://support.google.com/chat/answer/12800149) and [Manage custom emoji permissions](https://support.google.com/a/answer/12850085).
@@ -2957,11 +3021,13 @@ public final UnaryCallable For advanced filtering, the following functions are also available:
* - `has_link()`: Returns only messages that have at least one hyperlink in the message
* text. - `is_unread()`: Filters out messages that have been read by the calling user.
- * Using the `space.display_name` filter requires that the calling credentials include one
- * of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires that the
+ * calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
* - `https://www.googleapis.com/auth/chat.spaces.readonly` -
* `https://www.googleapis.com/auth/chat.spaces`
@@ -2996,6 +3062,8 @@ public final UnaryCallable For advanced filtering, the following functions are also available:
* - `has_link()`: Returns only messages that have at least one hyperlink in the message
* text. - `is_unread()`: Filters out messages that have been read by the calling user.
- * Using the `space.display_name` filter requires that the calling credentials include one
- * of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires that the
+ * calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
* - `https://www.googleapis.com/auth/chat.spaces.readonly` -
* `https://www.googleapis.com/auth/chat.spaces`
@@ -3132,6 +3202,8 @@ public final SearchMessagesPagedResponse searchMessages(
* returns messages that are in spaces with display names containing both `Project` and
* `Tasks`, whereas `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or `Tasks` or both. -
+ * `space.space_type` supports only the `OR` operator, for example: `space.space_type =
+ * "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`. -
* `annotations.user_mentions.user.name` supports the operators `AND` and `OR`, but not a mix
* of both. For example: `annotations.user_mentions.user.name:"users/1234567890" AND
* annotations.user_mentions.user.name:"users/0987654321"` returns only messages that mentions
@@ -6569,6 +6641,527 @@ public final UnaryCallable Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces.readonly` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ *
+ * - `https://www.googleapis.com/auth/chat.spaces.pins` -
+ * `https://www.googleapis.com/auth/chat.spaces`
+ *
+ * Sample code:
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * SpaceName parent = SpaceName.of("[SPACE]");
+ * for (MessagePin element : chatServiceClient.listMessagePins(parent).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param parent Required. The parent space which owns the collection of pinned items Format:
+ * `spaces/{space}`
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListMessagePinsPagedResponse listMessagePins(@Nullable SpaceName parent) {
+ ListMessagePinsRequest request =
+ ListMessagePinsRequest.newBuilder()
+ .setParent(parent == null ? null : parent.toString())
+ .build();
+ return listMessagePins(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists message pins in a space. Users can pin important messages in spaces for easy access. For
+ * more information, see [Pin or unpin a conversation in Google
+ * Chat](https://support.google.com/chat/answer/15622437).
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * String parent = SpaceName.of("[SPACE]").toString();
+ * for (MessagePin element : chatServiceClient.listMessagePins(parent).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param parent Required. The parent space which owns the collection of pinned items Format:
+ * `spaces/{space}`
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListMessagePinsPagedResponse listMessagePins(String parent) {
+ ListMessagePinsRequest request = ListMessagePinsRequest.newBuilder().setParent(parent).build();
+ return listMessagePins(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists message pins in a space. Users can pin important messages in spaces for easy access. For
+ * more information, see [Pin or unpin a conversation in Google
+ * Chat](https://support.google.com/chat/answer/15622437).
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * ListMessagePinsRequest request =
+ * ListMessagePinsRequest.newBuilder()
+ * .setParent(SpaceName.of("[SPACE]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * for (MessagePin element : chatServiceClient.listMessagePins(request).iterateAll()) {
+ * // doThingsWith(element);
+ * }
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final ListMessagePinsPagedResponse listMessagePins(ListMessagePinsRequest request) {
+ return listMessagePinsPagedCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Lists message pins in a space. Users can pin important messages in spaces for easy access. For
+ * more information, see [Pin or unpin a conversation in Google
+ * Chat](https://support.google.com/chat/answer/15622437).
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * ListMessagePinsRequest request =
+ * ListMessagePinsRequest.newBuilder()
+ * .setParent(SpaceName.of("[SPACE]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * ApiFuture
+ */
+ public final UnaryCallable{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * ListMessagePinsRequest request =
+ * ListMessagePinsRequest.newBuilder()
+ * .setParent(SpaceName.of("[SPACE]").toString())
+ * .setPageSize(883849137)
+ * .setPageToken("pageToken873572522")
+ * .build();
+ * while (true) {
+ * ListMessagePinsResponse response =
+ * chatServiceClient.listMessagePinsCallable().call(request);
+ * for (MessagePin element : response.getMessagePinsList()) {
+ * // doThingsWith(element);
+ * }
+ * String nextPageToken = response.getNextPageToken();
+ * if (!Strings.isNullOrEmpty(nextPageToken)) {
+ * request = request.toBuilder().setPageToken(nextPageToken).build();
+ * } else {
+ * break;
+ * }
+ * }
+ * }
+ * }
+ */
+ public final UnaryCallable{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * SpaceName parent = SpaceName.of("[SPACE]");
+ * MessagePin messagePin = MessagePin.newBuilder().build();
+ * MessagePin response = chatServiceClient.createMessagePin(parent, messagePin);
+ * }
+ * }
+ *
+ * @param parent Required. The parent space in which to create the message pin. Format:
+ * spaces/{space}
+ * @param messagePin Required. The MessagePin to create.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final MessagePin createMessagePin(@Nullable SpaceName parent, MessagePin messagePin) {
+ CreateMessagePinRequest request =
+ CreateMessagePinRequest.newBuilder()
+ .setParent(parent == null ? null : parent.toString())
+ .setMessagePin(messagePin)
+ .build();
+ return createMessagePin(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Creates a message pin.
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * String parent = SpaceName.of("[SPACE]").toString();
+ * MessagePin messagePin = MessagePin.newBuilder().build();
+ * MessagePin response = chatServiceClient.createMessagePin(parent, messagePin);
+ * }
+ * }
+ *
+ * @param parent Required. The parent space in which to create the message pin. Format:
+ * spaces/{space}
+ * @param messagePin Required. The MessagePin to create.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final MessagePin createMessagePin(String parent, MessagePin messagePin) {
+ CreateMessagePinRequest request =
+ CreateMessagePinRequest.newBuilder().setParent(parent).setMessagePin(messagePin).build();
+ return createMessagePin(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Creates a message pin.
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * CreateMessagePinRequest request =
+ * CreateMessagePinRequest.newBuilder()
+ * .setParent(SpaceName.of("[SPACE]").toString())
+ * .setMessagePin(MessagePin.newBuilder().build())
+ * .build();
+ * MessagePin response = chatServiceClient.createMessagePin(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final MessagePin createMessagePin(CreateMessagePinRequest request) {
+ return createMessagePinCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Creates a message pin.
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * CreateMessagePinRequest request =
+ * CreateMessagePinRequest.newBuilder()
+ * .setParent(SpaceName.of("[SPACE]").toString())
+ * .setMessagePin(MessagePin.newBuilder().build())
+ * .build();
+ * ApiFuture
+ */
+ public final UnaryCallable{@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * MessagePinName name = MessagePinName.of("[SPACE]", "[MESSAGE_PIN]");
+ * chatServiceClient.deleteMessagePin(name);
+ * }
+ * }
+ *
+ * @param name Required. The resource name of the message pin to remove. Format:
+ * spaces/{space}/messagePins/{message_pin}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final void deleteMessagePin(@Nullable MessagePinName name) {
+ DeleteMessagePinRequest request =
+ DeleteMessagePinRequest.newBuilder().setName(name == null ? null : name.toString()).build();
+ deleteMessagePin(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Deletes a message pin.
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * String name = MessagePinName.of("[SPACE]", "[MESSAGE_PIN]").toString();
+ * chatServiceClient.deleteMessagePin(name);
+ * }
+ * }
+ *
+ * @param name Required. The resource name of the message pin to remove. Format:
+ * spaces/{space}/messagePins/{message_pin}
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final void deleteMessagePin(String name) {
+ DeleteMessagePinRequest request = DeleteMessagePinRequest.newBuilder().setName(name).build();
+ deleteMessagePin(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Deletes a message pin.
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * DeleteMessagePinRequest request =
+ * DeleteMessagePinRequest.newBuilder()
+ * .setName(MessagePinName.of("[SPACE]", "[MESSAGE_PIN]").toString())
+ * .build();
+ * chatServiceClient.deleteMessagePin(request);
+ * }
+ * }
+ *
+ * @param request The request object containing all of the parameters for the API call.
+ * @throws com.google.api.gax.rpc.ApiException if the remote call fails
+ */
+ public final void deleteMessagePin(DeleteMessagePinRequest request) {
+ deleteMessagePinCallable().call(request);
+ }
+
+ // AUTO-GENERATED DOCUMENTATION AND METHOD.
+ /**
+ * Deletes a message pin.
+ *
+ * {@code
+ * // This snippet has been automatically generated and should be regarded as a code template only.
+ * // It will require modifications to work:
+ * // - It may require correct/in-range values for request initialization.
+ * // - It may require specifying regional endpoints when creating the service client as shown in
+ * // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ * try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ * DeleteMessagePinRequest request =
+ * DeleteMessagePinRequest.newBuilder()
+ * .setName(MessagePinName.of("[SPACE]", "[MESSAGE_PIN]").toString())
+ * .build();
+ * ApiFuture
+ */
+ public final UnaryCallable
+ * Lists message pins in a space. Users can pin important messages in spaces
+ * for easy access. For more information, see [Pin or unpin a conversation in
+ * Google Chat](https://support.google.com/chat/answer/15622437).
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly`
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces.readonly`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ default void listMessagePins(
+ com.google.chat.v1.ListMessagePinsRequest request,
+ io.grpc.stub.StreamObserver
+ * Creates a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ default void createMessagePin(
+ com.google.chat.v1.CreateMessagePinRequest request,
+ io.grpc.stub.StreamObserver
+ * Deletes a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ default void deleteMessagePin(
+ com.google.chat.v1.DeleteMessagePinRequest request,
+ io.grpc.stub.StreamObserver
+ * Lists message pins in a space. Users can pin important messages in spaces
+ * for easy access. For more information, see [Pin or unpin a conversation in
+ * Google Chat](https://support.google.com/chat/answer/15622437).
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly`
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces.readonly`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public void listMessagePins(
+ com.google.chat.v1.ListMessagePinsRequest request,
+ io.grpc.stub.StreamObserver
+ * Creates a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public void createMessagePin(
+ com.google.chat.v1.CreateMessagePinRequest request,
+ io.grpc.stub.StreamObserver
+ * Deletes a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public void deleteMessagePin(
+ com.google.chat.v1.DeleteMessagePinRequest request,
+ io.grpc.stub.StreamObserver
+ * Lists message pins in a space. Users can pin important messages in spaces
+ * for easy access. For more information, see [Pin or unpin a conversation in
+ * Google Chat](https://support.google.com/chat/answer/15622437).
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly`
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces.readonly`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public com.google.chat.v1.ListMessagePinsResponse listMessagePins(
+ com.google.chat.v1.ListMessagePinsRequest request) throws io.grpc.StatusException {
+ return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
+ getChannel(), getListMessagePinsMethod(), getCallOptions(), request);
+ }
+
+ /**
+ *
+ *
+ *
+ * Creates a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public com.google.chat.v1.MessagePin createMessagePin(
+ com.google.chat.v1.CreateMessagePinRequest request) throws io.grpc.StatusException {
+ return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
+ getChannel(), getCreateMessagePinMethod(), getCallOptions(), request);
+ }
+
+ /**
+ *
+ *
+ *
+ * Deletes a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public com.google.protobuf.Empty deleteMessagePin(
+ com.google.chat.v1.DeleteMessagePinRequest request) throws io.grpc.StatusException {
+ return io.grpc.stub.ClientCalls.blockingV2UnaryCall(
+ getChannel(), getDeleteMessagePinMethod(), getCallOptions(), request);
+ }
+
/**
*
*
@@ -7641,6 +7959,67 @@ public com.google.protobuf.Empty deleteReaction(
getChannel(), getDeleteReactionMethod(), getCallOptions(), request);
}
+ /**
+ *
+ *
+ *
+ * Lists message pins in a space. Users can pin important messages in spaces
+ * for easy access. For more information, see [Pin or unpin a conversation in
+ * Google Chat](https://support.google.com/chat/answer/15622437).
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins.readonly`
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces.readonly`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public com.google.chat.v1.ListMessagePinsResponse listMessagePins(
+ com.google.chat.v1.ListMessagePinsRequest request) {
+ return io.grpc.stub.ClientCalls.blockingUnaryCall(
+ getChannel(), getListMessagePinsMethod(), getCallOptions(), request);
+ }
+
+ /**
+ *
+ *
+ *
+ * Creates a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public com.google.chat.v1.MessagePin createMessagePin(
+ com.google.chat.v1.CreateMessagePinRequest request) {
+ return io.grpc.stub.ClientCalls.blockingUnaryCall(
+ getChannel(), getCreateMessagePinMethod(), getCallOptions(), request);
+ }
+
+ /**
+ *
+ *
+ *
+ * Deletes a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public com.google.protobuf.Empty deleteMessagePin(
+ com.google.chat.v1.DeleteMessagePinRequest request) {
+ return io.grpc.stub.ClientCalls.blockingUnaryCall(
+ getChannel(), getDeleteMessagePinMethod(), getCallOptions(), request);
+ }
+
/**
*
*
@@ -9130,6 +9509,68 @@ public com.google.common.util.concurrent.ListenableFuture
+ * Creates a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public com.google.common.util.concurrent.ListenableFuture
+ * Deletes a message pin.
+ * Requires [user
+ * authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ * with one of the following [authorization
+ * scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ * - `https://www.googleapis.com/auth/chat.spaces.pins`
+ * - `https://www.googleapis.com/auth/chat.spaces`
+ *
+ */
+ public com.google.common.util.concurrent.ListenableFuture
- * Output only. Annotations can be associated with the plain-text body of the
- * message or with chips that link to Google Workspace resources like Google
- * Docs or Sheets with `start_index` and `length` of 0. To add basic formatting
- * to a text message, see [Format text
+ * Annotations can be associated with the plain-text body of the message or
+ * with chips that link to Google Workspace resources like Google Docs or Sheets
+ * with `start_index` and `length` of 0. To add basic formatting to a text
+ * message, see [Format text
* messages](https://developers.google.com/workspace/chat/format-messages).
*
* Example plain-text message body:
@@ -715,10 +715,10 @@ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.Builder
*
*
*
*
*
- * Output only. Annotations can be associated with the plain-text body of the
- * message or with chips that link to Google Workspace resources like Google
- * Docs or Sheets with `start_index` and `length` of 0. To add basic formatting
- * to a text message, see [Format text
+ * Annotations can be associated with the plain-text body of the message or
+ * with chips that link to Google Workspace resources like Google Docs or Sheets
+ * with `start_index` and `length` of 0. To add basic formatting to a text
+ * message, see [Format text
* messages](https://developers.google.com/workspace/chat/format-messages).
*
* Example plain-text message body:
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/AppCommandMetadata.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/AppCommandMetadata.java
new file mode 100644
index 000000000000..294bb864df26
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/AppCommandMetadata.java
@@ -0,0 +1,863 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/chat/v1/app_command_metadata.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.chat.v1;
+
+/**
+ *
+ *
+ *
*
*
+ * Metadata about a [Chat app
+ * command](https://developers.google.com/workspace/chat/commands).
+ *
+ *
+ * Protobuf type {@code google.chat.v1.AppCommandMetadata}
+ */
+@com.google.protobuf.Generated
+public final class AppCommandMetadata extends com.google.protobuf.GeneratedMessage
+ implements
+ // @@protoc_insertion_point(message_implements:google.chat.v1.AppCommandMetadata)
+ AppCommandMetadataOrBuilder {
+ private static final long serialVersionUID = 0L;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "AppCommandMetadata");
+ }
+
+ // Use AppCommandMetadata.newBuilder() to construct.
+ private AppCommandMetadata(com.google.protobuf.GeneratedMessage.Builder> builder) {
+ super(builder);
+ }
+
+ private AppCommandMetadata() {
+ appCommandType_ = 0;
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.chat.v1.AppCommandMetadataProto
+ .internal_static_google_chat_v1_AppCommandMetadata_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.chat.v1.AppCommandMetadataProto
+ .internal_static_google_chat_v1_AppCommandMetadata_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.chat.v1.AppCommandMetadata.class,
+ com.google.chat.v1.AppCommandMetadata.Builder.class);
+ }
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command. For details, see [Types of Chat
+ * app commands](https://developers.google.com/workspace/chat/commands#types).
+ *
+ *
+ * Protobuf enum {@code google.chat.v1.AppCommandMetadata.AppCommandType}
+ */
+ public enum AppCommandType implements com.google.protobuf.ProtocolMessageEnum {
+ /**
+ *
+ *
+ *
+ * Default value. Unspecified.
+ *
+ *
+ * APP_COMMAND_TYPE_UNSPECIFIED = 0;
+ */
+ APP_COMMAND_TYPE_UNSPECIFIED(0),
+ /**
+ *
+ *
+ *
+ * A slash command. The user sends the command in a Chat message.
+ *
+ *
+ * SLASH_COMMAND = 1;
+ */
+ SLASH_COMMAND(1),
+ /**
+ *
+ *
+ *
+ * A quick command. The user selects the command from the Chat menu
+ * in the message reply area.
+ *
+ *
+ * QUICK_COMMAND = 3;
+ */
+ QUICK_COMMAND(3),
+ /**
+ *
+ *
+ *
+ * A message action. The user selects the command from the message context
+ * menu in Chat.
+ *
+ *
+ * MESSAGE_ACTION = 4;
+ */
+ MESSAGE_ACTION(4),
+ UNRECOGNIZED(-1),
+ ;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "AppCommandType");
+ }
+
+ /**
+ *
+ *
+ *
+ * Default value. Unspecified.
+ *
+ *
+ * APP_COMMAND_TYPE_UNSPECIFIED = 0;
+ */
+ public static final int APP_COMMAND_TYPE_UNSPECIFIED_VALUE = 0;
+
+ /**
+ *
+ *
+ *
+ * A slash command. The user sends the command in a Chat message.
+ *
+ *
+ * SLASH_COMMAND = 1;
+ */
+ public static final int SLASH_COMMAND_VALUE = 1;
+
+ /**
+ *
+ *
+ *
+ * A quick command. The user selects the command from the Chat menu
+ * in the message reply area.
+ *
+ *
+ * QUICK_COMMAND = 3;
+ */
+ public static final int QUICK_COMMAND_VALUE = 3;
+
+ /**
+ *
+ *
+ *
+ * A message action. The user selects the command from the message context
+ * menu in Chat.
+ *
+ *
+ * MESSAGE_ACTION = 4;
+ */
+ public static final int MESSAGE_ACTION_VALUE = 4;
+
+ public final int getNumber() {
+ if (this == UNRECOGNIZED) {
+ throw new java.lang.IllegalArgumentException(
+ "Can't get the number of an unknown enum value.");
+ }
+ return value;
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ * @deprecated Use {@link #forNumber(int)} instead.
+ */
+ @java.lang.Deprecated
+ public static AppCommandType valueOf(int value) {
+ return forNumber(value);
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ */
+ public static AppCommandType forNumber(int value) {
+ switch (value) {
+ case 0:
+ return APP_COMMAND_TYPE_UNSPECIFIED;
+ case 1:
+ return SLASH_COMMAND;
+ case 3:
+ return QUICK_COMMAND;
+ case 4:
+ return MESSAGE_ACTION;
+ default:
+ return null;
+ }
+ }
+
+ public static com.google.protobuf.Internal.EnumLiteMap
+ * The ID for the command specified in the Chat API configuration.
+ *
+ *
+ * int32 app_command_id = 1;
+ *
+ * @return The appCommandId.
+ */
+ @java.lang.Override
+ public int getAppCommandId() {
+ return appCommandId_;
+ }
+
+ public static final int APP_COMMAND_TYPE_FIELD_NUMBER = 2;
+ private int appCommandType_ = 0;
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @return The enum numeric value on the wire for appCommandType.
+ */
+ @java.lang.Override
+ public int getAppCommandTypeValue() {
+ return appCommandType_;
+ }
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @return The appCommandType.
+ */
+ @java.lang.Override
+ public com.google.chat.v1.AppCommandMetadata.AppCommandType getAppCommandType() {
+ com.google.chat.v1.AppCommandMetadata.AppCommandType result =
+ com.google.chat.v1.AppCommandMetadata.AppCommandType.forNumber(appCommandType_);
+ return result == null
+ ? com.google.chat.v1.AppCommandMetadata.AppCommandType.UNRECOGNIZED
+ : result;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (appCommandId_ != 0) {
+ output.writeInt32(1, appCommandId_);
+ }
+ if (appCommandType_
+ != com.google.chat.v1.AppCommandMetadata.AppCommandType.APP_COMMAND_TYPE_UNSPECIFIED
+ .getNumber()) {
+ output.writeEnum(2, appCommandType_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (appCommandId_ != 0) {
+ size += com.google.protobuf.CodedOutputStream.computeInt32Size(1, appCommandId_);
+ }
+ if (appCommandType_
+ != com.google.chat.v1.AppCommandMetadata.AppCommandType.APP_COMMAND_TYPE_UNSPECIFIED
+ .getNumber()) {
+ size += com.google.protobuf.CodedOutputStream.computeEnumSize(2, appCommandType_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.chat.v1.AppCommandMetadata)) {
+ return super.equals(obj);
+ }
+ com.google.chat.v1.AppCommandMetadata other = (com.google.chat.v1.AppCommandMetadata) obj;
+
+ if (getAppCommandId() != other.getAppCommandId()) return false;
+ if (appCommandType_ != other.appCommandType_) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + APP_COMMAND_ID_FIELD_NUMBER;
+ hash = (53 * hash) + getAppCommandId();
+ hash = (37 * hash) + APP_COMMAND_TYPE_FIELD_NUMBER;
+ hash = (53 * hash) + appCommandType_;
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.chat.v1.AppCommandMetadata prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ *
+ * Metadata about a [Chat app
+ * command](https://developers.google.com/workspace/chat/commands).
+ *
+ *
+ * Protobuf type {@code google.chat.v1.AppCommandMetadata}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * The ID for the command specified in the Chat API configuration.
+ *
+ *
+ * int32 app_command_id = 1;
+ *
+ * @return The appCommandId.
+ */
+ @java.lang.Override
+ public int getAppCommandId() {
+ return appCommandId_;
+ }
+
+ /**
+ *
+ *
+ *
+ * The ID for the command specified in the Chat API configuration.
+ *
+ *
+ * int32 app_command_id = 1;
+ *
+ * @param value The appCommandId to set.
+ * @return This builder for chaining.
+ */
+ public Builder setAppCommandId(int value) {
+
+ appCommandId_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The ID for the command specified in the Chat API configuration.
+ *
+ *
+ * int32 app_command_id = 1;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearAppCommandId() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ appCommandId_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private int appCommandType_ = 0;
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @return The enum numeric value on the wire for appCommandType.
+ */
+ @java.lang.Override
+ public int getAppCommandTypeValue() {
+ return appCommandType_;
+ }
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @param value The enum numeric value on the wire for appCommandType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setAppCommandTypeValue(int value) {
+ appCommandType_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @return The appCommandType.
+ */
+ @java.lang.Override
+ public com.google.chat.v1.AppCommandMetadata.AppCommandType getAppCommandType() {
+ com.google.chat.v1.AppCommandMetadata.AppCommandType result =
+ com.google.chat.v1.AppCommandMetadata.AppCommandType.forNumber(appCommandType_);
+ return result == null
+ ? com.google.chat.v1.AppCommandMetadata.AppCommandType.UNRECOGNIZED
+ : result;
+ }
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @param value The appCommandType to set.
+ * @return This builder for chaining.
+ */
+ public Builder setAppCommandType(com.google.chat.v1.AppCommandMetadata.AppCommandType value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000002;
+ appCommandType_ = value.getNumber();
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearAppCommandType() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ appCommandType_ = 0;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.chat.v1.AppCommandMetadata)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.chat.v1.AppCommandMetadata)
+ private static final com.google.chat.v1.AppCommandMetadata DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.chat.v1.AppCommandMetadata();
+ }
+
+ public static com.google.chat.v1.AppCommandMetadata getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * The ID for the command specified in the Chat API configuration.
+ *
+ *
+ * int32 app_command_id = 1;
+ *
+ * @return The appCommandId.
+ */
+ int getAppCommandId();
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @return The enum numeric value on the wire for appCommandType.
+ */
+ int getAppCommandTypeValue();
+
+ /**
+ *
+ *
+ *
+ * The type of Chat app command.
+ *
+ *
+ * .google.chat.v1.AppCommandMetadata.AppCommandType app_command_type = 2;
+ *
+ * @return The appCommandType.
+ */
+ com.google.chat.v1.AppCommandMetadata.AppCommandType getAppCommandType();
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/AppCommandMetadataProto.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/AppCommandMetadataProto.java
new file mode 100644
index 000000000000..1ab674b1ffc6
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/AppCommandMetadataProto.java
@@ -0,0 +1,84 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/chat/v1/app_command_metadata.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.chat.v1;
+
+@com.google.protobuf.Generated
+public final class AppCommandMetadataProto extends com.google.protobuf.GeneratedFile {
+ private AppCommandMetadataProto() {}
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "AppCommandMetadataProto");
+ }
+
+ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {}
+
+ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) {
+ registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry);
+ }
+
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_chat_v1_AppCommandMetadata_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_chat_v1_AppCommandMetadata_fieldAccessorTable;
+
+ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ return descriptor;
+ }
+
+ private static com.google.protobuf.Descriptors.FileDescriptor descriptor;
+
+ static {
+ java.lang.String[] descriptorData = {
+ "\n)google/chat/v1/app_command_metadata.pr"
+ + "oto\022\016google.chat.v1\"\347\001\n\022AppCommandMetada"
+ + "ta\022\026\n\016app_command_id\030\001 \001(\005\022K\n\020app_comman"
+ + "d_type\030\002 \001(\01621.google.chat.v1.AppCommand"
+ + "Metadata.AppCommandType\"l\n\016AppCommandTyp"
+ + "e\022 \n\034APP_COMMAND_TYPE_UNSPECIFIED\020\000\022\021\n\rS"
+ + "LASH_COMMAND\020\001\022\021\n\rQUICK_COMMAND\020\003\022\022\n\016MES"
+ + "SAGE_ACTION\020\004B\242\001\n\022com.google.chat.v1B\027Ap"
+ + "pCommandMetadataProtoP\001Z,cloud.google.co"
+ + "m/go/chat/apiv1/chatpb;chatpb\252\002\023Google.A"
+ + "pps.Chat.V1\312\002\023Google\\Apps\\Chat\\V1\352\002\026Goog"
+ + "le::Apps::Chat::V1b\006proto3"
+ };
+ descriptor =
+ com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
+ descriptorData, new com.google.protobuf.Descriptors.FileDescriptor[] {});
+ internal_static_google_chat_v1_AppCommandMetadata_descriptor =
+ getDescriptor().getMessageType(0);
+ internal_static_google_chat_v1_AppCommandMetadata_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_chat_v1_AppCommandMetadata_descriptor,
+ new java.lang.String[] {
+ "AppCommandId", "AppCommandType",
+ });
+ descriptor.resolveAllFeaturesImmutable();
+ }
+
+ // @@protoc_insertion_point(outer_class_scope)
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ChatServiceProto.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ChatServiceProto.java
index 0bb68e601132..58e6b9c6a477 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ChatServiceProto.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ChatServiceProto.java
@@ -53,258 +53,273 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "o\032\027google/api/client.proto\032\037google/chat/"
+ "v1/attachment.proto\032!google/chat/v1/avai"
+ "lability.proto\032\037google/chat/v1/membershi"
- + "p.proto\032\034google/chat/v1/message.proto\032\035g"
- + "oogle/chat/v1/reaction.proto\032\034google/cha"
- + "t/v1/section.proto\032\032google/chat/v1/space"
- + ".proto\032 google/chat/v1/space_event.proto"
- + "\032/google/chat/v1/space_notification_sett"
- + "ing.proto\032%google/chat/v1/space_read_sta"
- + "te.proto\032 google/chat/v1/space_setup.pro"
- + "to\032&google/chat/v1/thread_read_state.pro"
- + "to\032\033google/protobuf/empty.proto2\250J\n\013Chat"
- + "Service\022\233\001\n\rCreateMessage\022$.google.chat."
- + "v1.CreateMessageRequest\032\027.google.chat.v1"
- + ".Message\"K\332A\031parent,message,message_id\202\323"
- + "\344\223\002)\"\036/v1/{parent=spaces/*}/messages:\007me"
- + "ssage\022\212\001\n\014ListMessages\022#.google.chat.v1."
- + "ListMessagesRequest\032$.google.chat.v1.Lis"
- + "tMessagesResponse\"/\332A\006parent\202\323\344\223\002 \022\036/v1/"
- + "{parent=spaces/*}/messages\022\222\001\n\017ListMembe"
- + "rships\022&.google.chat.v1.ListMembershipsR"
- + "equest\032\'.google.chat.v1.ListMembershipsR"
- + "esponse\".\332A\006parent\202\323\344\223\002\037\022\035/v1/{parent=sp"
- + "aces/*}/members\022\177\n\rGetMembership\022$.googl"
- + "e.chat.v1.GetMembershipRequest\032\032.google."
- + "chat.v1.Membership\",\332A\004name\202\323\344\223\002\037\022\035/v1/{"
- + "name=spaces/*/members/*}\022w\n\nGetMessage\022!"
- + ".google.chat.v1.GetMessageRequest\032\027.goog"
- + "le.chat.v1.Message\"-\332A\004name\202\323\344\223\002 \022\036/v1/{"
- + "name=spaces/*/messages/*}\022\321\001\n\rUpdateMess"
- + "age\022$.google.chat.v1.UpdateMessageReques"
- + "t\032\027.google.chat.v1.Message\"\200\001\332A\023message,"
- + "update_mask\202\323\344\223\002d\032&/v1/{message.name=spa"
- + "ces/*/messages/*}:\007messageZ12&/v1/{messa"
- + "ge.name=spaces/*/messages/*}:\007message\022|\n"
- + "\rDeleteMessage\022$.google.chat.v1.DeleteMe"
- + "ssageRequest\032\026.google.protobuf.Empty\"-\332A"
- + "\004name\202\323\344\223\002 *\036/v1/{name=spaces/*/messages"
- + "/*}\022\241\001\n\016SearchMessages\022%.google.chat.v1."
- + "SearchMessagesRequest\032&.google.chat.v1.S"
- + "earchMessagesResponse\"@\332A\rparent,filter\202"
- + "\323\344\223\002*\"%/v1/{parent=spaces/*}/messages:se"
- + "arch:\001*\022\216\001\n\rGetAttachment\022$.google.chat."
- + "v1.GetAttachmentRequest\032\032.google.chat.v1"
- + ".Attachment\";\332A\004name\202\323\344\223\002.\022,/v1/{name=sp"
- + "aces/*/messages/*/attachments/*}\022\232\001\n\020Upl"
- + "oadAttachment\022\'.google.chat.v1.UploadAtt"
- + "achmentRequest\032(.google.chat.v1.UploadAt"
- + "tachmentResponse\"3\202\323\344\223\002-\"(/v1/{parent=sp"
- + "aces/*}/attachments:upload:\001*\022j\n\nListSpa"
- + "ces\022!.google.chat.v1.ListSpacesRequest\032\""
- + ".google.chat.v1.ListSpacesResponse\"\025\332A\000\202"
- + "\323\344\223\002\014\022\n/v1/spaces\022w\n\014SearchSpaces\022#.goog"
- + "le.chat.v1.SearchSpacesRequest\032$.google."
- + "chat.v1.SearchSpacesResponse\"\034\332A\000\202\323\344\223\002\023\022"
- + "\021/v1/spaces:search\022f\n\010GetSpace\022\037.google."
- + "chat.v1.GetSpaceRequest\032\025.google.chat.v1"
- + ".Space\"\"\332A\004name\202\323\344\223\002\025\022\023/v1/{name=spaces/"
- + "*}\022k\n\013CreateSpace\022\".google.chat.v1.Creat"
- + "eSpaceRequest\032\025.google.chat.v1.Space\"!\332A"
- + "\005space\202\323\344\223\002\023\"\n/v1/spaces:\005space\022c\n\nSetUp"
- + "Space\022!.google.chat.v1.SetUpSpaceRequest"
- + "\032\025.google.chat.v1.Space\"\033\202\323\344\223\002\025\"\020/v1/spa"
- + "ces:setup:\001*\022\206\001\n\013UpdateSpace\022\".google.ch"
- + "at.v1.UpdateSpaceRequest\032\025.google.chat.v"
- + "1.Space\"<\332A\021space,update_mask\202\323\344\223\002\"2\031/v1"
- + "/{space.name=spaces/*}:\005space\022m\n\013DeleteS"
- + "pace\022\".google.chat.v1.DeleteSpaceRequest"
- + "\032\026.google.protobuf.Empty\"\"\332A\004name\202\323\344\223\002\025*"
- + "\023/v1/{name=spaces/*}\022\235\001\n\023CompleteImportS"
- + "pace\022*.google.chat.v1.CompleteImportSpac"
- + "eRequest\032+.google.chat.v1.CompleteImport"
- + "SpaceResponse\"-\202\323\344\223\002\'\"\"/v1/{name=spaces/"
- + "*}:completeImport:\001*\022z\n\021FindDirectMessag"
- + "e\022(.google.chat.v1.FindDirectMessageRequ"
- + "est\032\025.google.chat.v1.Space\"$\202\323\344\223\002\036\022\034/v1/"
- + "spaces:findDirectMessage\022\202\001\n\016FindGroupCh"
- + "ats\022%.google.chat.v1.FindGroupChatsReque"
- + "st\032&.google.chat.v1.FindGroupChatsRespon"
- + "se\"!\202\323\344\223\002\033\022\031/v1/spaces:findGroupChats\022\236\001"
- + "\n\020CreateMembership\022\'.google.chat.v1.Crea"
- + "teMembershipRequest\032\032.google.chat.v1.Mem"
- + "bership\"E\332A\021parent,membership\202\323\344\223\002+\"\035/v1"
- + "/{parent=spaces/*}/members:\nmembership\022\256"
- + "\001\n\020UpdateMembership\022\'.google.chat.v1.Upd"
- + "ateMembershipRequest\032\032.google.chat.v1.Me"
- + "mbership\"U\332A\026membership,update_mask\202\323\344\223\002"
- + "62(/v1/{membership.name=spaces/*/members"
- + "/*}:\nmembership\022\205\001\n\020DeleteMembership\022\'.g"
- + "oogle.chat.v1.DeleteMembershipRequest\032\032."
- + "google.chat.v1.Membership\",\332A\004name\202\323\344\223\002\037"
- + "*\035/v1/{name=spaces/*/members/*}\022\241\001\n\016Crea"
- + "teReaction\022%.google.chat.v1.CreateReacti"
- + "onRequest\032\030.google.chat.v1.Reaction\"N\332A\017"
- + "parent,reaction\202\323\344\223\0026\"*/v1/{parent=space"
- + "s/*/messages/*}/reactions:\010reaction\022\231\001\n\r"
- + "ListReactions\022$.google.chat.v1.ListReact"
- + "ionsRequest\032%.google.chat.v1.ListReactio"
- + "nsResponse\";\332A\006parent\202\323\344\223\002,\022*/v1/{parent"
- + "=spaces/*/messages/*}/reactions\022\212\001\n\016Dele"
- + "teReaction\022%.google.chat.v1.DeleteReacti"
- + "onRequest\032\026.google.protobuf.Empty\"9\332A\004na"
- + "me\202\323\344\223\002,**/v1/{name=spaces/*/messages/*/"
- + "reactions/*}\022\221\001\n\021CreateCustomEmoji\022(.goo"
- + "gle.chat.v1.CreateCustomEmojiRequest\032\033.g"
- + "oogle.chat.v1.CustomEmoji\"5\332A\014custom_emo"
- + "ji\202\323\344\223\002 \"\020/v1/customEmojis:\014custom_emoji"
- + "\022~\n\016GetCustomEmoji\022%.google.chat.v1.GetC"
- + "ustomEmojiRequest\032\033.google.chat.v1.Custo"
- + "mEmoji\"(\332A\004name\202\323\344\223\002\033\022\031/v1/{name=customE"
- + "mojis/*}\022\202\001\n\020ListCustomEmojis\022\'.google.c"
- + "hat.v1.ListCustomEmojisRequest\032(.google."
- + "chat.v1.ListCustomEmojisResponse\"\033\332A\000\202\323\344"
- + "\223\002\022\022\020/v1/customEmojis\022\177\n\021DeleteCustomEmo"
- + "ji\022(.google.chat.v1.DeleteCustomEmojiReq"
- + "uest\032\026.google.protobuf.Empty\"(\332A\004name\202\323\344"
- + "\223\002\033*\031/v1/{name=customEmojis/*}\022\230\001\n\021GetSp"
- + "aceReadState\022(.google.chat.v1.GetSpaceRe"
- + "adStateRequest\032\036.google.chat.v1.SpaceRea"
- + "dState\"9\332A\004name\202\323\344\223\002,\022*/v1/{name=users/*"
- + "/spaces/*/spaceReadState}\022\331\001\n\024UpdateSpac"
- + "eReadState\022+.google.chat.v1.UpdateSpaceR"
- + "eadStateRequest\032\036.google.chat.v1.SpaceRe"
- + "adState\"t\332A\034space_read_state,update_mask"
- + "\202\323\344\223\002O2;/v1/{space_read_state.name=users"
- + "/*/spaces/*/spaceReadState}:\020space_read_"
- + "state\022\246\001\n\022GetThreadReadState\022).google.ch"
- + "at.v1.GetThreadReadStateRequest\032\037.google"
- + ".chat.v1.ThreadReadState\"D\332A\004name\202\323\344\223\0027\022"
- + "5/v1/{name=users/*/spaces/*/threads/*/th"
- + "readReadState}\022\207\001\n\017GetAvailability\022&.goo"
- + "gle.chat.v1.GetAvailabilityRequest\032\034.goo"
- + "gle.chat.v1.Availability\".\332A\004name\202\323\344\223\002!\022"
- + "\037/v1/{name=users/*/availability}\022\212\001\n\014Mar"
- + "kAsActive\022#.google.chat.v1.MarkAsActiveR"
- + "equest\032\034.google.chat.v1.Availability\"7\202\323"
- + "\344\223\0021\",/v1/{name=users/*/availability}:ma"
- + "rkAsActive:\001*\022\204\001\n\nMarkAsAway\022!.google.ch"
- + "at.v1.MarkAsAwayRequest\032\034.google.chat.v1"
- + ".Availability\"5\202\323\344\223\002/\"*/v1/{name=users/*"
- + "/availability}:markAsAway:\001*\022\234\001\n\022MarkAsD"
- + "oNotDisturb\022).google.chat.v1.MarkAsDoNot"
- + "DisturbRequest\032\034.google.chat.v1.Availabi"
- + "lity\"=\202\323\344\223\0027\"2/v1/{name=users/*/availabi"
- + "lity}:markAsDoNotDisturb:\001*\022\274\001\n\022UpdateAv"
- + "ailability\022).google.chat.v1.UpdateAvaila"
- + "bilityRequest\032\034.google.chat.v1.Availabil"
- + "ity\"]\332A\030availability,update_mask\202\323\344\223\002<2,"
- + "/v1/{availability.name=users/*/availabil"
- + "ity}:\014availability\022\203\001\n\rGetSpaceEvent\022$.g"
- + "oogle.chat.v1.GetSpaceEventRequest\032\032.goo"
- + "gle.chat.v1.SpaceEvent\"0\332A\004name\202\323\344\223\002#\022!/"
- + "v1/{name=spaces/*/spaceEvents/*}\022\235\001\n\017Lis"
- + "tSpaceEvents\022&.google.chat.v1.ListSpaceE"
- + "ventsRequest\032\'.google.chat.v1.ListSpaceE"
- + "ventsResponse\"9\332A\rparent,filter\202\323\344\223\002#\022!/"
- + "v1/{parent=spaces/*}/spaceEvents\022\300\001\n\033Get"
- + "SpaceNotificationSetting\0222.google.chat.v"
- + "1.GetSpaceNotificationSettingRequest\032(.g"
- + "oogle.chat.v1.SpaceNotificationSetting\"C"
- + "\332A\004name\202\323\344\223\0026\0224/v1/{name=users/*/spaces/"
- + "*/spaceNotificationSetting}\022\240\002\n\036UpdateSp"
- + "aceNotificationSetting\0225.google.chat.v1."
- + "UpdateSpaceNotificationSettingRequest\032(."
- + "google.chat.v1.SpaceNotificationSetting\""
- + "\234\001\332A&space_notification_setting,update_m"
- + "ask\202\323\344\223\002m2O/v1/{space_notification_setti"
- + "ng.name=users/*/spaces/*/spaceNotificati"
- + "onSetting}:\032space_notification_setting\022\217"
- + "\001\n\rCreateSection\022$.google.chat.v1.Create"
- + "SectionRequest\032\027.google.chat.v1.Section\""
- + "?\332A\016parent,section\202\323\344\223\002(\"\035/v1/{parent=us"
- + "ers/*}/sections:\007section\022{\n\rDeleteSectio"
- + "n\022$.google.chat.v1.DeleteSectionRequest\032"
- + "\026.google.protobuf.Empty\",\332A\004name\202\323\344\223\002\037*\035"
- + "/v1/{name=users/*/sections/*}\022\234\001\n\rUpdate"
- + "Section\022$.google.chat.v1.UpdateSectionRe"
- + "quest\032\027.google.chat.v1.Section\"L\332A\023secti"
- + "on,update_mask\202\323\344\223\00202%/v1/{section.name="
- + "users/*/sections/*}:\007section\022\211\001\n\014ListSec"
- + "tions\022#.google.chat.v1.ListSectionsReque"
- + "st\032$.google.chat.v1.ListSectionsResponse"
- + "\".\332A\006parent\202\323\344\223\002\037\022\035/v1/{parent=users/*}/"
- + "sections\022\225\001\n\017PositionSection\022&.google.ch"
- + "at.v1.PositionSectionRequest\032\'.google.ch"
- + "at.v1.PositionSectionResponse\"1\202\323\344\223\002+\"&/"
- + "v1/{name=users/*/sections/*}:position:\001*"
- + "\022\235\001\n\020ListSectionItems\022\'.google.chat.v1.L"
- + "istSectionItemsRequest\032(.google.chat.v1."
- + "ListSectionItemsResponse\"6\332A\006parent\202\323\344\223\002"
- + "\'\022%/v1/{parent=users/*/sections/*}/items"
- + "\022\257\001\n\017MoveSectionItem\022&.google.chat.v1.Mo"
- + "veSectionItemRequest\032\'.google.chat.v1.Mo"
- + "veSectionItemResponse\"K\332A\023name,target_se"
- + "ction\202\323\344\223\002/\"*/v1/{name=users/*/sections/"
- + "*/items/*}:move:\001*\032\365\020\312A\023chat.googleapis."
- + "com\322A\333\020https://www.googleapis.com/auth/c"
- + "hat.admin.delete,https://www.googleapis."
- + "com/auth/chat.admin.memberships,https://"
- + "www.googleapis.com/auth/chat.admin.membe"
- + "rships.readonly,https://www.googleapis.c"
- + "om/auth/chat.admin.spaces,https://www.go"
- + "ogleapis.com/auth/chat.admin.spaces.read"
+ + "p.proto\032\034google/chat/v1/message.proto\032 g"
+ + "oogle/chat/v1/message_pin.proto\032\035google/"
+ + "chat/v1/reaction.proto\032\034google/chat/v1/s"
+ + "ection.proto\032\032google/chat/v1/space.proto"
+ + "\032 google/chat/v1/space_event.proto\032/goog"
+ + "le/chat/v1/space_notification_setting.pr"
+ + "oto\032%google/chat/v1/space_read_state.pro"
+ + "to\032 google/chat/v1/space_setup.proto\032&go"
+ + "ogle/chat/v1/thread_read_state.proto\032\033go"
+ + "ogle/protobuf/empty.proto2\333N\n\013ChatServic"
+ + "e\022\233\001\n\rCreateMessage\022$.google.chat.v1.Cre"
+ + "ateMessageRequest\032\027.google.chat.v1.Messa"
+ + "ge\"K\332A\031parent,message,message_id\202\323\344\223\002)\"\036"
+ + "/v1/{parent=spaces/*}/messages:\007message\022"
+ + "\212\001\n\014ListMessages\022#.google.chat.v1.ListMe"
+ + "ssagesRequest\032$.google.chat.v1.ListMessa"
+ + "gesResponse\"/\332A\006parent\202\323\344\223\002 \022\036/v1/{paren"
+ + "t=spaces/*}/messages\022\222\001\n\017ListMemberships"
+ + "\022&.google.chat.v1.ListMembershipsRequest"
+ + "\032\'.google.chat.v1.ListMembershipsRespons"
+ + "e\".\332A\006parent\202\323\344\223\002\037\022\035/v1/{parent=spaces/*"
+ + "}/members\022\177\n\rGetMembership\022$.google.chat"
+ + ".v1.GetMembershipRequest\032\032.google.chat.v"
+ + "1.Membership\",\332A\004name\202\323\344\223\002\037\022\035/v1/{name=s"
+ + "paces/*/members/*}\022w\n\nGetMessage\022!.googl"
+ + "e.chat.v1.GetMessageRequest\032\027.google.cha"
+ + "t.v1.Message\"-\332A\004name\202\323\344\223\002 \022\036/v1/{name=s"
+ + "paces/*/messages/*}\022\321\001\n\rUpdateMessage\022$."
+ + "google.chat.v1.UpdateMessageRequest\032\027.go"
+ + "ogle.chat.v1.Message\"\200\001\332A\023message,update"
+ + "_mask\202\323\344\223\002d\032&/v1/{message.name=spaces/*/"
+ + "messages/*}:\007messageZ12&/v1/{message.nam"
+ + "e=spaces/*/messages/*}:\007message\022|\n\rDelet"
+ + "eMessage\022$.google.chat.v1.DeleteMessageR"
+ + "equest\032\026.google.protobuf.Empty\"-\332A\004name\202"
+ + "\323\344\223\002 *\036/v1/{name=spaces/*/messages/*}\022\241\001"
+ + "\n\016SearchMessages\022%.google.chat.v1.Search"
+ + "MessagesRequest\032&.google.chat.v1.SearchM"
+ + "essagesResponse\"@\332A\rparent,filter\202\323\344\223\002*\""
+ + "%/v1/{parent=spaces/*}/messages:search:\001"
+ + "*\022\216\001\n\rGetAttachment\022$.google.chat.v1.Get"
+ + "AttachmentRequest\032\032.google.chat.v1.Attac"
+ + "hment\";\332A\004name\202\323\344\223\002.\022,/v1/{name=spaces/*"
+ + "/messages/*/attachments/*}\022\232\001\n\020UploadAtt"
+ + "achment\022\'.google.chat.v1.UploadAttachmen"
+ + "tRequest\032(.google.chat.v1.UploadAttachme"
+ + "ntResponse\"3\202\323\344\223\002-\"(/v1/{parent=spaces/*"
+ + "}/attachments:upload:\001*\022j\n\nListSpaces\022!."
+ + "google.chat.v1.ListSpacesRequest\032\".googl"
+ + "e.chat.v1.ListSpacesResponse\"\025\332A\000\202\323\344\223\002\014\022"
+ + "\n/v1/spaces\022w\n\014SearchSpaces\022#.google.cha"
+ + "t.v1.SearchSpacesRequest\032$.google.chat.v"
+ + "1.SearchSpacesResponse\"\034\332A\000\202\323\344\223\002\023\022\021/v1/s"
+ + "paces:search\022f\n\010GetSpace\022\037.google.chat.v"
+ + "1.GetSpaceRequest\032\025.google.chat.v1.Space"
+ + "\"\"\332A\004name\202\323\344\223\002\025\022\023/v1/{name=spaces/*}\022k\n\013"
+ + "CreateSpace\022\".google.chat.v1.CreateSpace"
+ + "Request\032\025.google.chat.v1.Space\"!\332A\005space"
+ + "\202\323\344\223\002\023\"\n/v1/spaces:\005space\022c\n\nSetUpSpace\022"
+ + "!.google.chat.v1.SetUpSpaceRequest\032\025.goo"
+ + "gle.chat.v1.Space\"\033\202\323\344\223\002\025\"\020/v1/spaces:se"
+ + "tup:\001*\022\206\001\n\013UpdateSpace\022\".google.chat.v1."
+ + "UpdateSpaceRequest\032\025.google.chat.v1.Spac"
+ + "e\"<\332A\021space,update_mask\202\323\344\223\002\"2\031/v1/{spac"
+ + "e.name=spaces/*}:\005space\022m\n\013DeleteSpace\022\""
+ + ".google.chat.v1.DeleteSpaceRequest\032\026.goo"
+ + "gle.protobuf.Empty\"\"\332A\004name\202\323\344\223\002\025*\023/v1/{"
+ + "name=spaces/*}\022\235\001\n\023CompleteImportSpace\022*"
+ + ".google.chat.v1.CompleteImportSpaceReque"
+ + "st\032+.google.chat.v1.CompleteImportSpaceR"
+ + "esponse\"-\202\323\344\223\002\'\"\"/v1/{name=spaces/*}:com"
+ + "pleteImport:\001*\022z\n\021FindDirectMessage\022(.go"
+ + "ogle.chat.v1.FindDirectMessageRequest\032\025."
+ + "google.chat.v1.Space\"$\202\323\344\223\002\036\022\034/v1/spaces"
+ + ":findDirectMessage\022\202\001\n\016FindGroupChats\022%."
+ + "google.chat.v1.FindGroupChatsRequest\032&.g"
+ + "oogle.chat.v1.FindGroupChatsResponse\"!\202\323"
+ + "\344\223\002\033\022\031/v1/spaces:findGroupChats\022\236\001\n\020Crea"
+ + "teMembership\022\'.google.chat.v1.CreateMemb"
+ + "ershipRequest\032\032.google.chat.v1.Membershi"
+ + "p\"E\332A\021parent,membership\202\323\344\223\002+\"\035/v1/{pare"
+ + "nt=spaces/*}/members:\nmembership\022\256\001\n\020Upd"
+ + "ateMembership\022\'.google.chat.v1.UpdateMem"
+ + "bershipRequest\032\032.google.chat.v1.Membersh"
+ + "ip\"U\332A\026membership,update_mask\202\323\344\223\00262(/v1"
+ + "/{membership.name=spaces/*/members/*}:\nm"
+ + "embership\022\205\001\n\020DeleteMembership\022\'.google."
+ + "chat.v1.DeleteMembershipRequest\032\032.google"
+ + ".chat.v1.Membership\",\332A\004name\202\323\344\223\002\037*\035/v1/"
+ + "{name=spaces/*/members/*}\022\241\001\n\016CreateReac"
+ + "tion\022%.google.chat.v1.CreateReactionRequ"
+ + "est\032\030.google.chat.v1.Reaction\"N\332A\017parent"
+ + ",reaction\202\323\344\223\0026\"*/v1/{parent=spaces/*/me"
+ + "ssages/*}/reactions:\010reaction\022\231\001\n\rListRe"
+ + "actions\022$.google.chat.v1.ListReactionsRe"
+ + "quest\032%.google.chat.v1.ListReactionsResp"
+ + "onse\";\332A\006parent\202\323\344\223\002,\022*/v1/{parent=space"
+ + "s/*/messages/*}/reactions\022\212\001\n\016DeleteReac"
+ + "tion\022%.google.chat.v1.DeleteReactionRequ"
+ + "est\032\026.google.protobuf.Empty\"9\332A\004name\202\323\344\223"
+ + "\002,**/v1/{name=spaces/*/messages/*/reacti"
+ + "ons/*}\022\226\001\n\017ListMessagePins\022&.google.chat"
+ + ".v1.ListMessagePinsRequest\032\'.google.chat"
+ + ".v1.ListMessagePinsResponse\"2\332A\006parent\202\323"
+ + "\344\223\002#\022!/v1/{parent=spaces/*}/messagePins\022"
+ + "\244\001\n\020CreateMessagePin\022\'.google.chat.v1.Cr"
+ + "eateMessagePinRequest\032\032.google.chat.v1.M"
+ + "essagePin\"K\332A\022parent,message_pin\202\323\344\223\0020\"!"
+ + "/v1/{parent=spaces/*}/messagePins:\013messa"
+ + "ge_pin\022\205\001\n\020DeleteMessagePin\022\'.google.cha"
+ + "t.v1.DeleteMessagePinRequest\032\026.google.pr"
+ + "otobuf.Empty\"0\332A\004name\202\323\344\223\002#*!/v1/{name=s"
+ + "paces/*/messagePins/*}\022\221\001\n\021CreateCustomE"
+ + "moji\022(.google.chat.v1.CreateCustomEmojiR"
+ + "equest\032\033.google.chat.v1.CustomEmoji\"5\332A\014"
+ + "custom_emoji\202\323\344\223\002 \"\020/v1/customEmojis:\014cu"
+ + "stom_emoji\022~\n\016GetCustomEmoji\022%.google.ch"
+ + "at.v1.GetCustomEmojiRequest\032\033.google.cha"
+ + "t.v1.CustomEmoji\"(\332A\004name\202\323\344\223\002\033\022\031/v1/{na"
+ + "me=customEmojis/*}\022\202\001\n\020ListCustomEmojis\022"
+ + "\'.google.chat.v1.ListCustomEmojisRequest"
+ + "\032(.google.chat.v1.ListCustomEmojisRespon"
+ + "se\"\033\332A\000\202\323\344\223\002\022\022\020/v1/customEmojis\022\177\n\021Delet"
+ + "eCustomEmoji\022(.google.chat.v1.DeleteCust"
+ + "omEmojiRequest\032\026.google.protobuf.Empty\"("
+ + "\332A\004name\202\323\344\223\002\033*\031/v1/{name=customEmojis/*}"
+ + "\022\230\001\n\021GetSpaceReadState\022(.google.chat.v1."
+ + "GetSpaceReadStateRequest\032\036.google.chat.v"
+ + "1.SpaceReadState\"9\332A\004name\202\323\344\223\002,\022*/v1/{na"
+ + "me=users/*/spaces/*/spaceReadState}\022\331\001\n\024"
+ + "UpdateSpaceReadState\022+.google.chat.v1.Up"
+ + "dateSpaceReadStateRequest\032\036.google.chat."
+ + "v1.SpaceReadState\"t\332A\034space_read_state,u"
+ + "pdate_mask\202\323\344\223\002O2;/v1/{space_read_state."
+ + "name=users/*/spaces/*/spaceReadState}:\020s"
+ + "pace_read_state\022\246\001\n\022GetThreadReadState\022)"
+ + ".google.chat.v1.GetThreadReadStateReques"
+ + "t\032\037.google.chat.v1.ThreadReadState\"D\332A\004n"
+ + "ame\202\323\344\223\0027\0225/v1/{name=users/*/spaces/*/th"
+ + "reads/*/threadReadState}\022\207\001\n\017GetAvailabi"
+ + "lity\022&.google.chat.v1.GetAvailabilityReq"
+ + "uest\032\034.google.chat.v1.Availability\".\332A\004n"
+ + "ame\202\323\344\223\002!\022\037/v1/{name=users/*/availabilit"
+ + "y}\022\212\001\n\014MarkAsActive\022#.google.chat.v1.Mar"
+ + "kAsActiveRequest\032\034.google.chat.v1.Availa"
+ + "bility\"7\202\323\344\223\0021\",/v1/{name=users/*/availa"
+ + "bility}:markAsActive:\001*\022\204\001\n\nMarkAsAway\022!"
+ + ".google.chat.v1.MarkAsAwayRequest\032\034.goog"
+ + "le.chat.v1.Availability\"5\202\323\344\223\002/\"*/v1/{na"
+ + "me=users/*/availability}:markAsAway:\001*\022\234"
+ + "\001\n\022MarkAsDoNotDisturb\022).google.chat.v1.M"
+ + "arkAsDoNotDisturbRequest\032\034.google.chat.v"
+ + "1.Availability\"=\202\323\344\223\0027\"2/v1/{name=users/"
+ + "*/availability}:markAsDoNotDisturb:\001*\022\274\001"
+ + "\n\022UpdateAvailability\022).google.chat.v1.Up"
+ + "dateAvailabilityRequest\032\034.google.chat.v1"
+ + ".Availability\"]\332A\030availability,update_ma"
+ + "sk\202\323\344\223\002<2,/v1/{availability.name=users/*"
+ + "/availability}:\014availability\022\203\001\n\rGetSpac"
+ + "eEvent\022$.google.chat.v1.GetSpaceEventReq"
+ + "uest\032\032.google.chat.v1.SpaceEvent\"0\332A\004nam"
+ + "e\202\323\344\223\002#\022!/v1/{name=spaces/*/spaceEvents/"
+ + "*}\022\235\001\n\017ListSpaceEvents\022&.google.chat.v1."
+ + "ListSpaceEventsRequest\032\'.google.chat.v1."
+ + "ListSpaceEventsResponse\"9\332A\rparent,filte"
+ + "r\202\323\344\223\002#\022!/v1/{parent=spaces/*}/spaceEven"
+ + "ts\022\300\001\n\033GetSpaceNotificationSetting\0222.goo"
+ + "gle.chat.v1.GetSpaceNotificationSettingR"
+ + "equest\032(.google.chat.v1.SpaceNotificatio"
+ + "nSetting\"C\332A\004name\202\323\344\223\0026\0224/v1/{name=users"
+ + "/*/spaces/*/spaceNotificationSetting}\022\240\002"
+ + "\n\036UpdateSpaceNotificationSetting\0225.googl"
+ + "e.chat.v1.UpdateSpaceNotificationSetting"
+ + "Request\032(.google.chat.v1.SpaceNotificati"
+ + "onSetting\"\234\001\332A&space_notification_settin"
+ + "g,update_mask\202\323\344\223\002m2O/v1/{space_notifica"
+ + "tion_setting.name=users/*/spaces/*/space"
+ + "NotificationSetting}:\032space_notification"
+ + "_setting\022\217\001\n\rCreateSection\022$.google.chat"
+ + ".v1.CreateSectionRequest\032\027.google.chat.v"
+ + "1.Section\"?\332A\016parent,section\202\323\344\223\002(\"\035/v1/"
+ + "{parent=users/*}/sections:\007section\022{\n\rDe"
+ + "leteSection\022$.google.chat.v1.DeleteSecti"
+ + "onRequest\032\026.google.protobuf.Empty\",\332A\004na"
+ + "me\202\323\344\223\002\037*\035/v1/{name=users/*/sections/*}\022"
+ + "\234\001\n\rUpdateSection\022$.google.chat.v1.Updat"
+ + "eSectionRequest\032\027.google.chat.v1.Section"
+ + "\"L\332A\023section,update_mask\202\323\344\223\00202%/v1/{sec"
+ + "tion.name=users/*/sections/*}:\007section\022\211"
+ + "\001\n\014ListSections\022#.google.chat.v1.ListSec"
+ + "tionsRequest\032$.google.chat.v1.ListSectio"
+ + "nsResponse\".\332A\006parent\202\323\344\223\002\037\022\035/v1/{parent"
+ + "=users/*}/sections\022\225\001\n\017PositionSection\022&"
+ + ".google.chat.v1.PositionSectionRequest\032\'"
+ + ".google.chat.v1.PositionSectionResponse\""
+ + "1\202\323\344\223\002+\"&/v1/{name=users/*/sections/*}:p"
+ + "osition:\001*\022\235\001\n\020ListSectionItems\022\'.google"
+ + ".chat.v1.ListSectionItemsRequest\032(.googl"
+ + "e.chat.v1.ListSectionItemsResponse\"6\332A\006p"
+ + "arent\202\323\344\223\002\'\022%/v1/{parent=users/*/section"
+ + "s/*}/items\022\257\001\n\017MoveSectionItem\022&.google."
+ + "chat.v1.MoveSectionItemRequest\032\'.google."
+ + "chat.v1.MoveSectionItemResponse\"K\332A\023name"
+ + ",target_section\202\323\344\223\002/\"*/v1/{name=users/*"
+ + "/sections/*/items/*}:move:\001*\032\340\021\312A\023chat.g"
+ + "oogleapis.com\322A\306\021https://www.googleapis."
+ + "com/auth/chat.admin.delete,https://www.g"
+ + "oogleapis.com/auth/chat.admin.membership"
+ + "s,https://www.googleapis.com/auth/chat.a"
+ + "dmin.memberships.readonly,https://www.go"
+ + "ogleapis.com/auth/chat.admin.spaces,http"
+ + "s://www.googleapis.com/auth/chat.admin.s"
+ + "paces.readonly,https://www.googleapis.co"
+ + "m/auth/chat.app.all.memberships.readonly"
+ + ",https://www.googleapis.com/auth/chat.ap"
+ + "p.all.messages.readonly,https://www.goog"
+ + "leapis.com/auth/chat.app.all.spaces.read"
+ "only,https://www.googleapis.com/auth/cha"
- + "t.app.all.memberships.readonly,https://w"
- + "ww.googleapis.com/auth/chat.app.all.mess"
- + "ages.readonly,https://www.googleapis.com"
- + "/auth/chat.app.all.spaces.readonly,https"
- + "://www.googleapis.com/auth/chat.app.dele"
+ + "t.app.delete,https://www.googleapis.com/"
+ + "auth/chat.app.memberships,https://www.go"
+ + "ogleapis.com/auth/chat.app.memberships.r"
+ + "eadonly,https://www.googleapis.com/auth/"
+ + "chat.app.messages.readonly,https://www.g"
+ + "oogleapis.com/auth/chat.app.spaces,https"
+ + "://www.googleapis.com/auth/chat.app.spac"
+ + "es.create,https://www.googleapis.com/aut"
+ + "h/chat.app.spaces.readonly,https://www.g"
+ + "oogleapis.com/auth/chat.bot,https://www."
+ + "googleapis.com/auth/chat.customemojis,ht"
+ + "tps://www.googleapis.com/auth/chat.custo"
+ + "memojis.readonly,https://www.googleapis."
+ + "com/auth/chat.delete,https://www.googlea"
+ + "pis.com/auth/chat.import,https://www.goo"
+ + "gleapis.com/auth/chat.memberships,https:"
+ + "//www.googleapis.com/auth/chat.membershi"
+ + "ps.app,https://www.googleapis.com/auth/c"
+ + "hat.memberships.readonly,https://www.goo"
+ + "gleapis.com/auth/chat.messages,https://w"
+ + "ww.googleapis.com/auth/chat.messages.cre"
+ + "ate,https://www.googleapis.com/auth/chat"
+ + ".messages.reactions,https://www.googleap"
+ + "is.com/auth/chat.messages.reactions.crea"
+ "te,https://www.googleapis.com/auth/chat."
- + "app.memberships,https://www.googleapis.c"
- + "om/auth/chat.app.memberships.readonly,ht"
- + "tps://www.googleapis.com/auth/chat.app.m"
- + "essages.readonly,https://www.googleapis."
- + "com/auth/chat.app.spaces,https://www.goo"
- + "gleapis.com/auth/chat.app.spaces.create,"
- + "https://www.googleapis.com/auth/chat.app"
- + ".spaces.readonly,https://www.googleapis."
- + "com/auth/chat.bot,https://www.googleapis"
- + ".com/auth/chat.customemojis,https://www."
- + "googleapis.com/auth/chat.customemojis.re"
+ + "messages.reactions.readonly,https://www."
+ + "googleapis.com/auth/chat.messages.readon"
+ + "ly,https://www.googleapis.com/auth/chat."
+ + "spaces,https://www.googleapis.com/auth/c"
+ + "hat.spaces.create,https://www.googleapis"
+ + ".com/auth/chat.spaces.pins,https://www.g"
+ + "oogleapis.com/auth/chat.spaces.pins.read"
+ + "only,https://www.googleapis.com/auth/cha"
+ + "t.spaces.readonly,https://www.googleapis"
+ + ".com/auth/chat.users.availability,https:"
+ + "//www.googleapis.com/auth/chat.users.ava"
+ + "ilability.readonly,https://www.googleapi"
+ + "s.com/auth/chat.users.readstate,https://"
+ + "www.googleapis.com/auth/chat.users.reads"
+ + "tate.readonly,https://www.googleapis.com"
+ + "/auth/chat.users.sections,https://www.go"
+ + "ogleapis.com/auth/chat.users.sections.re"
+ "adonly,https://www.googleapis.com/auth/c"
- + "hat.delete,https://www.googleapis.com/au"
- + "th/chat.import,https://www.googleapis.co"
- + "m/auth/chat.memberships,https://www.goog"
- + "leapis.com/auth/chat.memberships.app,htt"
- + "ps://www.googleapis.com/auth/chat.member"
- + "ships.readonly,https://www.googleapis.co"
- + "m/auth/chat.messages,https://www.googlea"
- + "pis.com/auth/chat.messages.create,https:"
- + "//www.googleapis.com/auth/chat.messages."
- + "reactions,https://www.googleapis.com/aut"
- + "h/chat.messages.reactions.create,https:/"
- + "/www.googleapis.com/auth/chat.messages.r"
- + "eactions.readonly,https://www.googleapis"
- + ".com/auth/chat.messages.readonly,https:/"
- + "/www.googleapis.com/auth/chat.spaces,htt"
- + "ps://www.googleapis.com/auth/chat.spaces"
- + ".create,https://www.googleapis.com/auth/"
- + "chat.spaces.readonly,https://www.googlea"
- + "pis.com/auth/chat.users.availability,htt"
- + "ps://www.googleapis.com/auth/chat.users."
- + "availability.readonly,https://www.google"
- + "apis.com/auth/chat.users.readstate,https"
- + "://www.googleapis.com/auth/chat.users.re"
- + "adstate.readonly,https://www.googleapis."
- + "com/auth/chat.users.sections,https://www"
- + ".googleapis.com/auth/chat.users.sections"
- + ".readonly,https://www.googleapis.com/aut"
- + "h/chat.users.spacesettingsB\251\001\n\022com.googl"
- + "e.chat.v1B\020ChatServiceProtoP\001Z,cloud.goo"
- + "gle.com/go/chat/apiv1/chatpb;chatpb\242\002\013DY"
- + "NAPIProto\252\002\023Google.Apps.Chat.V1\312\002\023Google"
- + "\\Apps\\Chat\\V1\352\002\026Google::Apps::Chat::V1b\006"
- + "proto3"
+ + "hat.users.spacesettingsB\251\001\n\022com.google.c"
+ + "hat.v1B\020ChatServiceProtoP\001Z,cloud.google"
+ + ".com/go/chat/apiv1/chatpb;chatpb\242\002\013DYNAP"
+ + "IProto\252\002\023Google.Apps.Chat.V1\312\002\023Google\\Ap"
+ + "ps\\Chat\\V1\352\002\026Google::Apps::Chat::V1b\006pro"
+ + "to3"
};
descriptor =
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
@@ -316,6 +331,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
com.google.chat.v1.AvailabilityProto.getDescriptor(),
com.google.chat.v1.MembershipProto.getDescriptor(),
com.google.chat.v1.MessageProto.getDescriptor(),
+ com.google.chat.v1.MessagePinProto.getDescriptor(),
com.google.chat.v1.ReactionProto.getDescriptor(),
com.google.chat.v1.SectionProto.getDescriptor(),
com.google.chat.v1.SpaceProto.getDescriptor(),
@@ -333,6 +349,7 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
com.google.chat.v1.AvailabilityProto.getDescriptor();
com.google.chat.v1.MembershipProto.getDescriptor();
com.google.chat.v1.MessageProto.getDescriptor();
+ com.google.chat.v1.MessagePinProto.getDescriptor();
com.google.chat.v1.ReactionProto.getDescriptor();
com.google.chat.v1.SectionProto.getDescriptor();
com.google.chat.v1.SpaceProto.getDescriptor();
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessagePinRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessagePinRequest.java
new file mode 100644
index 000000000000..cd549f3fa264
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessagePinRequest.java
@@ -0,0 +1,916 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/chat/v1/message_pin.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.chat.v1;
+
+/**
+ *
+ *
+ *
+ * Request message for creating a message pin.
+ *
+ *
+ * Protobuf type {@code google.chat.v1.CreateMessagePinRequest}
+ */
+@com.google.protobuf.Generated
+public final class CreateMessagePinRequest extends com.google.protobuf.GeneratedMessage
+ implements
+ // @@protoc_insertion_point(message_implements:google.chat.v1.CreateMessagePinRequest)
+ CreateMessagePinRequestOrBuilder {
+ private static final long serialVersionUID = 0L;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "CreateMessagePinRequest");
+ }
+
+ // Use CreateMessagePinRequest.newBuilder() to construct.
+ private CreateMessagePinRequest(com.google.protobuf.GeneratedMessage.Builder> builder) {
+ super(builder);
+ }
+
+ private CreateMessagePinRequest() {
+ parent_ = "";
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_CreateMessagePinRequest_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_CreateMessagePinRequest_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.chat.v1.CreateMessagePinRequest.class,
+ com.google.chat.v1.CreateMessagePinRequest.Builder.class);
+ }
+
+ private int bitField0_;
+ public static final int PARENT_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object parent_ = "";
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The parent.
+ */
+ @java.lang.Override
+ public java.lang.String getParent() {
+ java.lang.Object ref = parent_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parent_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for parent.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getParentBytes() {
+ java.lang.Object ref = parent_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parent_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int MESSAGE_PIN_FIELD_NUMBER = 2;
+ private com.google.chat.v1.MessagePin messagePin_;
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ *
+ * @return Whether the messagePin field is set.
+ */
+ @java.lang.Override
+ public boolean hasMessagePin() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ *
+ * @return The messagePin.
+ */
+ @java.lang.Override
+ public com.google.chat.v1.MessagePin getMessagePin() {
+ return messagePin_ == null ? com.google.chat.v1.MessagePin.getDefaultInstance() : messagePin_;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ @java.lang.Override
+ public com.google.chat.v1.MessagePinOrBuilder getMessagePinOrBuilder() {
+ return messagePin_ == null ? com.google.chat.v1.MessagePin.getDefaultInstance() : messagePin_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(parent_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, parent_);
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeMessage(2, getMessagePin());
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(parent_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, parent_);
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(2, getMessagePin());
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.chat.v1.CreateMessagePinRequest)) {
+ return super.equals(obj);
+ }
+ com.google.chat.v1.CreateMessagePinRequest other =
+ (com.google.chat.v1.CreateMessagePinRequest) obj;
+
+ if (!getParent().equals(other.getParent())) return false;
+ if (hasMessagePin() != other.hasMessagePin()) return false;
+ if (hasMessagePin()) {
+ if (!getMessagePin().equals(other.getMessagePin())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + PARENT_FIELD_NUMBER;
+ hash = (53 * hash) + getParent().hashCode();
+ if (hasMessagePin()) {
+ hash = (37 * hash) + MESSAGE_PIN_FIELD_NUMBER;
+ hash = (53 * hash) + getMessagePin().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.chat.v1.CreateMessagePinRequest prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ *
+ * Request message for creating a message pin.
+ *
+ *
+ * Protobuf type {@code google.chat.v1.CreateMessagePinRequest}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The parent.
+ */
+ public java.lang.String getParent() {
+ java.lang.Object ref = parent_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parent_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for parent.
+ */
+ public com.google.protobuf.ByteString getParentBytes() {
+ java.lang.Object ref = parent_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parent_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The parent to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParent(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ parent_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearParent() {
+ parent_ = getDefaultInstance().getParent();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The bytes for parent to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParentBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ parent_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private com.google.chat.v1.MessagePin messagePin_;
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.chat.v1.MessagePin,
+ com.google.chat.v1.MessagePin.Builder,
+ com.google.chat.v1.MessagePinOrBuilder>
+ messagePinBuilder_;
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ *
+ * @return Whether the messagePin field is set.
+ */
+ public boolean hasMessagePin() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ *
+ * @return The messagePin.
+ */
+ public com.google.chat.v1.MessagePin getMessagePin() {
+ if (messagePinBuilder_ == null) {
+ return messagePin_ == null
+ ? com.google.chat.v1.MessagePin.getDefaultInstance()
+ : messagePin_;
+ } else {
+ return messagePinBuilder_.getMessage();
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ public Builder setMessagePin(com.google.chat.v1.MessagePin value) {
+ if (messagePinBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ messagePin_ = value;
+ } else {
+ messagePinBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ public Builder setMessagePin(com.google.chat.v1.MessagePin.Builder builderForValue) {
+ if (messagePinBuilder_ == null) {
+ messagePin_ = builderForValue.build();
+ } else {
+ messagePinBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ public Builder mergeMessagePin(com.google.chat.v1.MessagePin value) {
+ if (messagePinBuilder_ == null) {
+ if (((bitField0_ & 0x00000002) != 0)
+ && messagePin_ != null
+ && messagePin_ != com.google.chat.v1.MessagePin.getDefaultInstance()) {
+ getMessagePinBuilder().mergeFrom(value);
+ } else {
+ messagePin_ = value;
+ }
+ } else {
+ messagePinBuilder_.mergeFrom(value);
+ }
+ if (messagePin_ != null) {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ public Builder clearMessagePin() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ messagePin_ = null;
+ if (messagePinBuilder_ != null) {
+ messagePinBuilder_.dispose();
+ messagePinBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ public com.google.chat.v1.MessagePin.Builder getMessagePinBuilder() {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return internalGetMessagePinFieldBuilder().getBuilder();
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ public com.google.chat.v1.MessagePinOrBuilder getMessagePinOrBuilder() {
+ if (messagePinBuilder_ != null) {
+ return messagePinBuilder_.getMessageOrBuilder();
+ } else {
+ return messagePin_ == null
+ ? com.google.chat.v1.MessagePin.getDefaultInstance()
+ : messagePin_;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.chat.v1.MessagePin,
+ com.google.chat.v1.MessagePin.Builder,
+ com.google.chat.v1.MessagePinOrBuilder>
+ internalGetMessagePinFieldBuilder() {
+ if (messagePinBuilder_ == null) {
+ messagePinBuilder_ =
+ new com.google.protobuf.SingleFieldBuilder<
+ com.google.chat.v1.MessagePin,
+ com.google.chat.v1.MessagePin.Builder,
+ com.google.chat.v1.MessagePinOrBuilder>(
+ getMessagePin(), getParentForChildren(), isClean());
+ messagePin_ = null;
+ }
+ return messagePinBuilder_;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.chat.v1.CreateMessagePinRequest)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.chat.v1.CreateMessagePinRequest)
+ private static final com.google.chat.v1.CreateMessagePinRequest DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.chat.v1.CreateMessagePinRequest();
+ }
+
+ public static com.google.chat.v1.CreateMessagePinRequest getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The parent.
+ */
+ java.lang.String getParent();
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space in which to create the message pin.
+ * Format: spaces/{space}
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for parent.
+ */
+ com.google.protobuf.ByteString getParentBytes();
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ *
+ * @return Whether the messagePin field is set.
+ */
+ boolean hasMessagePin();
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ *
+ * @return The messagePin.
+ */
+ com.google.chat.v1.MessagePin getMessagePin();
+
+ /**
+ *
+ *
+ *
+ * Required. The MessagePin to create.
+ *
+ *
+ * .google.chat.v1.MessagePin message_pin = 2 [(.google.api.field_behavior) = REQUIRED];
+ *
+ */
+ com.google.chat.v1.MessagePinOrBuilder getMessagePinOrBuilder();
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessageRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessageRequest.java
index 517a7ae7992e..f9f38c80b822 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessageRequest.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessageRequest.java
@@ -398,7 +398,7 @@ public com.google.chat.v1.MessageOrBuilder getMessageOrBuilder() {
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @return The threadKey.
*/
@java.lang.Override
@@ -432,7 +432,7 @@ public java.lang.String getThreadKey() {
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @return The bytes for threadKey.
*/
@java.lang.Override
@@ -458,9 +458,24 @@ public com.google.protobuf.ByteString getThreadKeyBytes() {
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
@@ -484,9 +499,24 @@ public java.lang.String getRequestId() {
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
@@ -1543,7 +1573,7 @@ public com.google.chat.v1.MessageOrBuilder getMessageOrBuilder() {
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @return The threadKey.
*/
@java.lang.Deprecated
@@ -1576,7 +1606,7 @@ public java.lang.String getThreadKey() {
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @return The bytes for threadKey.
*/
@java.lang.Deprecated
@@ -1609,7 +1639,7 @@ public com.google.protobuf.ByteString getThreadKeyBytes() {
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @param value The threadKey to set.
* @return This builder for chaining.
*/
@@ -1641,7 +1671,7 @@ public Builder setThreadKey(java.lang.String value) {
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @return This builder for chaining.
*/
@java.lang.Deprecated
@@ -1669,7 +1699,7 @@ public Builder clearThreadKey() {
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @param value The bytes for threadKey to set.
* @return This builder for chaining.
*/
@@ -1691,9 +1721,24 @@ public Builder setThreadKeyBytes(com.google.protobuf.ByteString value) {
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
@@ -1716,9 +1761,24 @@ public java.lang.String getRequestId() {
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
@@ -1741,9 +1801,24 @@ public com.google.protobuf.ByteString getRequestIdBytes() {
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
@@ -1765,9 +1840,24 @@ public Builder setRequestId(java.lang.String value) {
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
@@ -1785,9 +1875,24 @@ public Builder clearRequestId() {
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessageRequestOrBuilder.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessageRequestOrBuilder.java
index 5d7a3938a4cb..50a702f5f3fc 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessageRequestOrBuilder.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateMessageRequestOrBuilder.java
@@ -114,7 +114,7 @@ public interface CreateMessageRequestOrBuilder
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @return The threadKey.
*/
@java.lang.Deprecated
@@ -137,7 +137,7 @@ public interface CreateMessageRequestOrBuilder
*
*
* @deprecated google.chat.v1.CreateMessageRequest.thread_key is deprecated. See
- * google/chat/v1/message.proto;l=633
+ * google/chat/v1/message.proto;l=635
* @return The bytes for threadKey.
*/
@java.lang.Deprecated
@@ -147,9 +147,24 @@ public interface CreateMessageRequestOrBuilder
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
@@ -162,9 +177,24 @@ public interface CreateMessageRequestOrBuilder
*
*
*
- * Optional. A unique request ID for this message. Specifying an existing
- * request ID returns the message created with that ID instead of creating a
- * new message.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single message being created. Subsequent requests with the same request
+ * ID return the existing message and do not update the message, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a message was already created with the provided request ID, the
+ * request returns that message. Note that the returned message might not be
+ * fully populated; the API echoes the message in your request with the
+ * system-assigned resource names populated. To retrieve the latest metadata
+ * for the message, call `GetMessage`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 7 [(.google.api.field_behavior) = OPTIONAL];
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateSpaceRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateSpaceRequest.java
index c467a72e6186..527c5b872e50 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateSpaceRequest.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateSpaceRequest.java
@@ -159,12 +159,24 @@ public com.google.chat.v1.SpaceOrBuilder getSpaceOrBuilder() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -188,12 +200,24 @@ public java.lang.String getRequestId() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -848,12 +872,24 @@ public com.google.chat.v1.SpaceOrBuilder getSpaceOrBuilder() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -876,12 +912,24 @@ public java.lang.String getRequestId() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -904,12 +952,24 @@ public com.google.protobuf.ByteString getRequestIdBytes() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -931,12 +991,24 @@ public Builder setRequestId(java.lang.String value) {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -954,12 +1026,24 @@ public Builder clearRequestId() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateSpaceRequestOrBuilder.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateSpaceRequestOrBuilder.java
index 6625324713e8..4c6420fe9dfa 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateSpaceRequestOrBuilder.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/CreateSpaceRequestOrBuilder.java
@@ -97,12 +97,24 @@ public interface CreateSpaceRequestOrBuilder
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -115,12 +127,24 @@ public interface CreateSpaceRequestOrBuilder
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/DeleteMessagePinRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/DeleteMessagePinRequest.java
new file mode 100644
index 000000000000..6968e0feeb64
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/DeleteMessagePinRequest.java
@@ -0,0 +1,616 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/chat/v1/message_pin.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.chat.v1;
+
+/**
+ *
+ *
+ *
+ * Request message for deleting a message pin.
+ *
+ *
+ * Protobuf type {@code google.chat.v1.DeleteMessagePinRequest}
+ */
+@com.google.protobuf.Generated
+public final class DeleteMessagePinRequest extends com.google.protobuf.GeneratedMessage
+ implements
+ // @@protoc_insertion_point(message_implements:google.chat.v1.DeleteMessagePinRequest)
+ DeleteMessagePinRequestOrBuilder {
+ private static final long serialVersionUID = 0L;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "DeleteMessagePinRequest");
+ }
+
+ // Use DeleteMessagePinRequest.newBuilder() to construct.
+ private DeleteMessagePinRequest(com.google.protobuf.GeneratedMessage.Builder> builder) {
+ super(builder);
+ }
+
+ private DeleteMessagePinRequest() {
+ name_ = "";
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_DeleteMessagePinRequest_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_DeleteMessagePinRequest_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.chat.v1.DeleteMessagePinRequest.class,
+ com.google.chat.v1.DeleteMessagePinRequest.Builder.class);
+ }
+
+ public static final int NAME_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object name_ = "";
+
+ /**
+ *
+ *
+ *
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The name.
+ */
+ @java.lang.Override
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for name.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.chat.v1.DeleteMessagePinRequest)) {
+ return super.equals(obj);
+ }
+ com.google.chat.v1.DeleteMessagePinRequest other =
+ (com.google.chat.v1.DeleteMessagePinRequest) obj;
+
+ if (!getName().equals(other.getName())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getName().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.chat.v1.DeleteMessagePinRequest prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ *
+ * Request message for deleting a message pin.
+ *
+ *
+ * Protobuf type {@code google.chat.v1.DeleteMessagePinRequest}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The name.
+ */
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for name.
+ */
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ name_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearName() {
+ name_ = getDefaultInstance().getName();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The bytes for name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ name_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.chat.v1.DeleteMessagePinRequest)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.chat.v1.DeleteMessagePinRequest)
+ private static final com.google.chat.v1.DeleteMessagePinRequest DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.chat.v1.DeleteMessagePinRequest();
+ }
+
+ public static com.google.chat.v1.DeleteMessagePinRequest getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The name.
+ */
+ java.lang.String getName();
+
+ /**
+ *
+ *
+ *
+ * Required. The resource name of the message pin to remove.
+ * Format: spaces/{space}/messagePins/{message_pin}
+ *
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for name.
+ */
+ com.google.protobuf.ByteString getNameBytes();
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ListMessagePinsRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ListMessagePinsRequest.java
new file mode 100644
index 000000000000..1dbed1bf7701
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ListMessagePinsRequest.java
@@ -0,0 +1,953 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/chat/v1/message_pin.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.chat.v1;
+
+/**
+ *
+ *
+ *
+ * Request message for listing message pins.
+ *
+ *
+ * Protobuf type {@code google.chat.v1.ListMessagePinsRequest}
+ */
+@com.google.protobuf.Generated
+public final class ListMessagePinsRequest extends com.google.protobuf.GeneratedMessage
+ implements
+ // @@protoc_insertion_point(message_implements:google.chat.v1.ListMessagePinsRequest)
+ ListMessagePinsRequestOrBuilder {
+ private static final long serialVersionUID = 0L;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "ListMessagePinsRequest");
+ }
+
+ // Use ListMessagePinsRequest.newBuilder() to construct.
+ private ListMessagePinsRequest(com.google.protobuf.GeneratedMessage.Builder> builder) {
+ super(builder);
+ }
+
+ private ListMessagePinsRequest() {
+ parent_ = "";
+ pageToken_ = "";
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_ListMessagePinsRequest_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_ListMessagePinsRequest_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.chat.v1.ListMessagePinsRequest.class,
+ com.google.chat.v1.ListMessagePinsRequest.Builder.class);
+ }
+
+ public static final int PARENT_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object parent_ = "";
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The parent.
+ */
+ @java.lang.Override
+ public java.lang.String getParent() {
+ java.lang.Object ref = parent_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parent_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for parent.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getParentBytes() {
+ java.lang.Object ref = parent_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parent_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int PAGE_SIZE_FIELD_NUMBER = 2;
+ private int pageSize_ = 0;
+
+ /**
+ *
+ *
+ *
+ * Optional. The maximum number of message pins returned. The service might
+ * return fewer messages than this value. The maximum value is 100. If you use
+ * a value more than 100, it's automatically changed to 100. If unspecified,
+ * at most 100 message pins will be returned. Negative values return an
+ * `INVALID_ARGUMENT` error.
+ *
+ *
+ * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The pageSize.
+ */
+ @java.lang.Override
+ public int getPageSize() {
+ return pageSize_;
+ }
+
+ public static final int PAGE_TOKEN_FIELD_NUMBER = 3;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object pageToken_ = "";
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The pageToken.
+ */
+ @java.lang.Override
+ public java.lang.String getPageToken() {
+ java.lang.Object ref = pageToken_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ pageToken_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The bytes for pageToken.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getPageTokenBytes() {
+ java.lang.Object ref = pageToken_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ pageToken_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(parent_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, parent_);
+ }
+ if (pageSize_ != 0) {
+ output.writeInt32(2, pageSize_);
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 3, pageToken_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(parent_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, parent_);
+ }
+ if (pageSize_ != 0) {
+ size += com.google.protobuf.CodedOutputStream.computeInt32Size(2, pageSize_);
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(pageToken_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(3, pageToken_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.chat.v1.ListMessagePinsRequest)) {
+ return super.equals(obj);
+ }
+ com.google.chat.v1.ListMessagePinsRequest other =
+ (com.google.chat.v1.ListMessagePinsRequest) obj;
+
+ if (!getParent().equals(other.getParent())) return false;
+ if (getPageSize() != other.getPageSize()) return false;
+ if (!getPageToken().equals(other.getPageToken())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + PARENT_FIELD_NUMBER;
+ hash = (53 * hash) + getParent().hashCode();
+ hash = (37 * hash) + PAGE_SIZE_FIELD_NUMBER;
+ hash = (53 * hash) + getPageSize();
+ hash = (37 * hash) + PAGE_TOKEN_FIELD_NUMBER;
+ hash = (53 * hash) + getPageToken().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.chat.v1.ListMessagePinsRequest prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ *
+ * Request message for listing message pins.
+ *
+ *
+ * Protobuf type {@code google.chat.v1.ListMessagePinsRequest}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The parent.
+ */
+ public java.lang.String getParent() {
+ java.lang.Object ref = parent_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ parent_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for parent.
+ */
+ public com.google.protobuf.ByteString getParentBytes() {
+ java.lang.Object ref = parent_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ parent_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The parent to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParent(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ parent_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearParent() {
+ parent_ = getDefaultInstance().getParent();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The bytes for parent to set.
+ * @return This builder for chaining.
+ */
+ public Builder setParentBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ parent_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private int pageSize_;
+
+ /**
+ *
+ *
+ *
+ * Optional. The maximum number of message pins returned. The service might
+ * return fewer messages than this value. The maximum value is 100. If you use
+ * a value more than 100, it's automatically changed to 100. If unspecified,
+ * at most 100 message pins will be returned. Negative values return an
+ * `INVALID_ARGUMENT` error.
+ *
+ *
+ * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The pageSize.
+ */
+ @java.lang.Override
+ public int getPageSize() {
+ return pageSize_;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. The maximum number of message pins returned. The service might
+ * return fewer messages than this value. The maximum value is 100. If you use
+ * a value more than 100, it's automatically changed to 100. If unspecified,
+ * at most 100 message pins will be returned. Negative values return an
+ * `INVALID_ARGUMENT` error.
+ *
+ *
+ * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @param value The pageSize to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPageSize(int value) {
+
+ pageSize_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. The maximum number of message pins returned. The service might
+ * return fewer messages than this value. The maximum value is 100. If you use
+ * a value more than 100, it's automatically changed to 100. If unspecified,
+ * at most 100 message pins will be returned. Negative values return an
+ * `INVALID_ARGUMENT` error.
+ *
+ *
+ * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearPageSize() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ pageSize_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object pageToken_ = "";
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The pageToken.
+ */
+ public java.lang.String getPageToken() {
+ java.lang.Object ref = pageToken_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ pageToken_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The bytes for pageToken.
+ */
+ public com.google.protobuf.ByteString getPageTokenBytes() {
+ java.lang.Object ref = pageToken_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ pageToken_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @param value The pageToken to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPageToken(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ pageToken_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearPageToken() {
+ pageToken_ = getDefaultInstance().getPageToken();
+ bitField0_ = (bitField0_ & ~0x00000004);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @param value The bytes for pageToken to set.
+ * @return This builder for chaining.
+ */
+ public Builder setPageTokenBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ pageToken_ = value;
+ bitField0_ |= 0x00000004;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.chat.v1.ListMessagePinsRequest)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.chat.v1.ListMessagePinsRequest)
+ private static final com.google.chat.v1.ListMessagePinsRequest DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.chat.v1.ListMessagePinsRequest();
+ }
+
+ public static com.google.chat.v1.ListMessagePinsRequest getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The parent.
+ */
+ java.lang.String getParent();
+
+ /**
+ *
+ *
+ *
+ * Required. The parent space which owns the collection of pinned items
+ * Format: `spaces/{space}`
+ *
+ *
+ *
+ * string parent = 1 [(.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for parent.
+ */
+ com.google.protobuf.ByteString getParentBytes();
+
+ /**
+ *
+ *
+ *
+ * Optional. The maximum number of message pins returned. The service might
+ * return fewer messages than this value. The maximum value is 100. If you use
+ * a value more than 100, it's automatically changed to 100. If unspecified,
+ * at most 100 message pins will be returned. Negative values return an
+ * `INVALID_ARGUMENT` error.
+ *
+ *
+ * int32 page_size = 2 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The pageSize.
+ */
+ int getPageSize();
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The pageToken.
+ */
+ java.lang.String getPageToken();
+
+ /**
+ *
+ *
+ *
+ * Optional. A page token received from a previous list message pins call.
+ * Provide this parameter to retrieve the subsequent page.
+ *
+ * When paginating, all other parameters provided should match the call that
+ * provided the page token. Passing different values to the other parameters
+ * might lead to unexpected results.
+ *
+ *
+ * string page_token = 3 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ * @return The bytes for pageToken.
+ */
+ com.google.protobuf.ByteString getPageTokenBytes();
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ListMessagePinsResponse.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ListMessagePinsResponse.java
new file mode 100644
index 000000000000..5bbf29c70339
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/ListMessagePinsResponse.java
@@ -0,0 +1,1114 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/chat/v1/message_pin.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.chat.v1;
+
+/**
+ *
+ *
+ *
+ * Response message for listing message pins.
+ *
+ *
+ * Protobuf type {@code google.chat.v1.ListMessagePinsResponse}
+ */
+@com.google.protobuf.Generated
+public final class ListMessagePinsResponse extends com.google.protobuf.GeneratedMessage
+ implements
+ // @@protoc_insertion_point(message_implements:google.chat.v1.ListMessagePinsResponse)
+ ListMessagePinsResponseOrBuilder {
+ private static final long serialVersionUID = 0L;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "ListMessagePinsResponse");
+ }
+
+ // Use ListMessagePinsResponse.newBuilder() to construct.
+ private ListMessagePinsResponse(com.google.protobuf.GeneratedMessage.Builder> builder) {
+ super(builder);
+ }
+
+ private ListMessagePinsResponse() {
+ messagePins_ = java.util.Collections.emptyList();
+ nextPageToken_ = "";
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_ListMessagePinsResponse_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_ListMessagePinsResponse_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.chat.v1.ListMessagePinsResponse.class,
+ com.google.chat.v1.ListMessagePinsResponse.Builder.class);
+ }
+
+ public static final int MESSAGE_PINS_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private java.util.List
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ @java.lang.Override
+ public java.util.List
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ @java.lang.Override
+ public java.util.List extends com.google.chat.v1.MessagePinOrBuilder>
+ getMessagePinsOrBuilderList() {
+ return messagePins_;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ @java.lang.Override
+ public int getMessagePinsCount() {
+ return messagePins_.size();
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ @java.lang.Override
+ public com.google.chat.v1.MessagePin getMessagePins(int index) {
+ return messagePins_.get(index);
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ @java.lang.Override
+ public com.google.chat.v1.MessagePinOrBuilder getMessagePinsOrBuilder(int index) {
+ return messagePins_.get(index);
+ }
+
+ public static final int NEXT_PAGE_TOKEN_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object nextPageToken_ = "";
+
+ /**
+ *
+ *
+ *
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @return The nextPageToken.
+ */
+ @java.lang.Override
+ public java.lang.String getNextPageToken() {
+ java.lang.Object ref = nextPageToken_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ nextPageToken_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @return The bytes for nextPageToken.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getNextPageTokenBytes() {
+ java.lang.Object ref = nextPageToken_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ nextPageToken_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ for (int i = 0; i < messagePins_.size(); i++) {
+ output.writeMessage(1, messagePins_.get(i));
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nextPageToken_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 2, nextPageToken_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ for (int i = 0; i < messagePins_.size(); i++) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(1, messagePins_.get(i));
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(nextPageToken_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(2, nextPageToken_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.chat.v1.ListMessagePinsResponse)) {
+ return super.equals(obj);
+ }
+ com.google.chat.v1.ListMessagePinsResponse other =
+ (com.google.chat.v1.ListMessagePinsResponse) obj;
+
+ if (!getMessagePinsList().equals(other.getMessagePinsList())) return false;
+ if (!getNextPageToken().equals(other.getNextPageToken())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ if (getMessagePinsCount() > 0) {
+ hash = (37 * hash) + MESSAGE_PINS_FIELD_NUMBER;
+ hash = (53 * hash) + getMessagePinsList().hashCode();
+ }
+ hash = (37 * hash) + NEXT_PAGE_TOKEN_FIELD_NUMBER;
+ hash = (53 * hash) + getNextPageToken().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.chat.v1.ListMessagePinsResponse prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ *
+ * Response message for listing message pins.
+ *
+ *
+ * Protobuf type {@code google.chat.v1.ListMessagePinsResponse}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public java.util.List
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public int getMessagePinsCount() {
+ if (messagePinsBuilder_ == null) {
+ return messagePins_.size();
+ } else {
+ return messagePinsBuilder_.getCount();
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public com.google.chat.v1.MessagePin getMessagePins(int index) {
+ if (messagePinsBuilder_ == null) {
+ return messagePins_.get(index);
+ } else {
+ return messagePinsBuilder_.getMessage(index);
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder setMessagePins(int index, com.google.chat.v1.MessagePin value) {
+ if (messagePinsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureMessagePinsIsMutable();
+ messagePins_.set(index, value);
+ onChanged();
+ } else {
+ messagePinsBuilder_.setMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder setMessagePins(
+ int index, com.google.chat.v1.MessagePin.Builder builderForValue) {
+ if (messagePinsBuilder_ == null) {
+ ensureMessagePinsIsMutable();
+ messagePins_.set(index, builderForValue.build());
+ onChanged();
+ } else {
+ messagePinsBuilder_.setMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder addMessagePins(com.google.chat.v1.MessagePin value) {
+ if (messagePinsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureMessagePinsIsMutable();
+ messagePins_.add(value);
+ onChanged();
+ } else {
+ messagePinsBuilder_.addMessage(value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder addMessagePins(int index, com.google.chat.v1.MessagePin value) {
+ if (messagePinsBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureMessagePinsIsMutable();
+ messagePins_.add(index, value);
+ onChanged();
+ } else {
+ messagePinsBuilder_.addMessage(index, value);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder addMessagePins(com.google.chat.v1.MessagePin.Builder builderForValue) {
+ if (messagePinsBuilder_ == null) {
+ ensureMessagePinsIsMutable();
+ messagePins_.add(builderForValue.build());
+ onChanged();
+ } else {
+ messagePinsBuilder_.addMessage(builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder addMessagePins(
+ int index, com.google.chat.v1.MessagePin.Builder builderForValue) {
+ if (messagePinsBuilder_ == null) {
+ ensureMessagePinsIsMutable();
+ messagePins_.add(index, builderForValue.build());
+ onChanged();
+ } else {
+ messagePinsBuilder_.addMessage(index, builderForValue.build());
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder addAllMessagePins(
+ java.lang.Iterable extends com.google.chat.v1.MessagePin> values) {
+ if (messagePinsBuilder_ == null) {
+ ensureMessagePinsIsMutable();
+ com.google.protobuf.AbstractMessageLite.Builder.addAll(values, messagePins_);
+ onChanged();
+ } else {
+ messagePinsBuilder_.addAllMessages(values);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder clearMessagePins() {
+ if (messagePinsBuilder_ == null) {
+ messagePins_ = java.util.Collections.emptyList();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ } else {
+ messagePinsBuilder_.clear();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public Builder removeMessagePins(int index) {
+ if (messagePinsBuilder_ == null) {
+ ensureMessagePinsIsMutable();
+ messagePins_.remove(index);
+ onChanged();
+ } else {
+ messagePinsBuilder_.remove(index);
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public com.google.chat.v1.MessagePin.Builder getMessagePinsBuilder(int index) {
+ return internalGetMessagePinsFieldBuilder().getBuilder(index);
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public com.google.chat.v1.MessagePinOrBuilder getMessagePinsOrBuilder(int index) {
+ if (messagePinsBuilder_ == null) {
+ return messagePins_.get(index);
+ } else {
+ return messagePinsBuilder_.getMessageOrBuilder(index);
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public java.util.List extends com.google.chat.v1.MessagePinOrBuilder>
+ getMessagePinsOrBuilderList() {
+ if (messagePinsBuilder_ != null) {
+ return messagePinsBuilder_.getMessageOrBuilderList();
+ } else {
+ return java.util.Collections.unmodifiableList(messagePins_);
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public com.google.chat.v1.MessagePin.Builder addMessagePinsBuilder() {
+ return internalGetMessagePinsFieldBuilder()
+ .addBuilder(com.google.chat.v1.MessagePin.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public com.google.chat.v1.MessagePin.Builder addMessagePinsBuilder(int index) {
+ return internalGetMessagePinsFieldBuilder()
+ .addBuilder(index, com.google.chat.v1.MessagePin.getDefaultInstance());
+ }
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ public java.util.List
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @return The nextPageToken.
+ */
+ public java.lang.String getNextPageToken() {
+ java.lang.Object ref = nextPageToken_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ nextPageToken_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @return The bytes for nextPageToken.
+ */
+ public com.google.protobuf.ByteString getNextPageTokenBytes() {
+ java.lang.Object ref = nextPageToken_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ nextPageToken_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @param value The nextPageToken to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNextPageToken(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ nextPageToken_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearNextPageToken() {
+ nextPageToken_ = getDefaultInstance().getNextPageToken();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @param value The bytes for nextPageToken to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNextPageTokenBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ nextPageToken_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.chat.v1.ListMessagePinsResponse)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.chat.v1.ListMessagePinsResponse)
+ private static final com.google.chat.v1.ListMessagePinsResponse DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.chat.v1.ListMessagePinsResponse();
+ }
+
+ public static com.google.chat.v1.ListMessagePinsResponse getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ java.util.List
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ com.google.chat.v1.MessagePin getMessagePins(int index);
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ int getMessagePinsCount();
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ java.util.List extends com.google.chat.v1.MessagePinOrBuilder> getMessagePinsOrBuilderList();
+
+ /**
+ *
+ *
+ *
+ * The pinned messages from the specified space.
+ *
+ *
+ * repeated .google.chat.v1.MessagePin message_pins = 1;
+ */
+ com.google.chat.v1.MessagePinOrBuilder getMessagePinsOrBuilder(int index);
+
+ /**
+ *
+ *
+ *
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @return The nextPageToken.
+ */
+ java.lang.String getNextPageToken();
+
+ /**
+ *
+ *
+ *
+ * You can send a token as `pageToken` to retrieve the next page of
+ * results. If empty, there are no subsequent pages.
+ *
+ *
+ * string next_page_token = 2;
+ *
+ * @return The bytes for nextPageToken.
+ */
+ com.google.protobuf.ByteString getNextPageTokenBytes();
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessagePin.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessagePin.java
new file mode 100644
index 000000000000..0d434e684691
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessagePin.java
@@ -0,0 +1,836 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/chat/v1/message_pin.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.chat.v1;
+
+/**
+ *
+ *
+ *
+ * A pin on a Chat message. For more information see [Pin a
+ * message](https://support.google.com/chat?p=chat-board-hc).
+ *
+ *
+ * Protobuf type {@code google.chat.v1.MessagePin}
+ */
+@com.google.protobuf.Generated
+public final class MessagePin extends com.google.protobuf.GeneratedMessage
+ implements
+ // @@protoc_insertion_point(message_implements:google.chat.v1.MessagePin)
+ MessagePinOrBuilder {
+ private static final long serialVersionUID = 0L;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "MessagePin");
+ }
+
+ // Use MessagePin.newBuilder() to construct.
+ private MessagePin(com.google.protobuf.GeneratedMessage.Builder> builder) {
+ super(builder);
+ }
+
+ private MessagePin() {
+ name_ = "";
+ message_ = "";
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.chat.v1.MessagePinProto.internal_static_google_chat_v1_MessagePin_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.chat.v1.MessagePinProto
+ .internal_static_google_chat_v1_MessagePin_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.chat.v1.MessagePin.class, com.google.chat.v1.MessagePin.Builder.class);
+ }
+
+ public static final int NAME_FIELD_NUMBER = 1;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object name_ = "";
+
+ /**
+ *
+ *
+ *
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @return The name.
+ */
+ @java.lang.Override
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @return The bytes for name.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ public static final int MESSAGE_FIELD_NUMBER = 2;
+
+ @SuppressWarnings("serial")
+ private volatile java.lang.Object message_ = "";
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The message.
+ */
+ @java.lang.Override
+ public java.lang.String getMessage() {
+ java.lang.Object ref = message_;
+ if (ref instanceof java.lang.String) {
+ return (java.lang.String) ref;
+ } else {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ message_ = s;
+ return s;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for message.
+ */
+ @java.lang.Override
+ public com.google.protobuf.ByteString getMessageBytes() {
+ java.lang.Object ref = message_;
+ if (ref instanceof java.lang.String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ message_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 1, name_);
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(message_)) {
+ com.google.protobuf.GeneratedMessage.writeString(output, 2, message_);
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(name_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(1, name_);
+ }
+ if (!com.google.protobuf.GeneratedMessage.isStringEmpty(message_)) {
+ size += com.google.protobuf.GeneratedMessage.computeStringSize(2, message_);
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.chat.v1.MessagePin)) {
+ return super.equals(obj);
+ }
+ com.google.chat.v1.MessagePin other = (com.google.chat.v1.MessagePin) obj;
+
+ if (!getName().equals(other.getName())) return false;
+ if (!getMessage().equals(other.getMessage())) return false;
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + NAME_FIELD_NUMBER;
+ hash = (53 * hash) + getName().hashCode();
+ hash = (37 * hash) + MESSAGE_FIELD_NUMBER;
+ hash = (53 * hash) + getMessage().hashCode();
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(java.nio.ByteBuffer data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.MessagePin parseDelimitedFrom(java.io.InputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.MessagePin parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(com.google.protobuf.CodedInputStream input)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.chat.v1.MessagePin parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(com.google.chat.v1.MessagePin prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ *
+ * A pin on a Chat message. For more information see [Pin a
+ * message](https://support.google.com/chat?p=chat-board-hc).
+ *
+ *
+ * Protobuf type {@code google.chat.v1.MessagePin}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @return The name.
+ */
+ public java.lang.String getName() {
+ java.lang.Object ref = name_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ name_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @return The bytes for name.
+ */
+ public com.google.protobuf.ByteString getNameBytes() {
+ java.lang.Object ref = name_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ name_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @param value The name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setName(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ name_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearName() {
+ name_ = getDefaultInstance().getName();
+ bitField0_ = (bitField0_ & ~0x00000001);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @param value The bytes for name to set.
+ * @return This builder for chaining.
+ */
+ public Builder setNameBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ name_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ private java.lang.Object message_ = "";
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The message.
+ */
+ public java.lang.String getMessage() {
+ java.lang.Object ref = message_;
+ if (!(ref instanceof java.lang.String)) {
+ com.google.protobuf.ByteString bs = (com.google.protobuf.ByteString) ref;
+ java.lang.String s = bs.toStringUtf8();
+ message_ = s;
+ return s;
+ } else {
+ return (java.lang.String) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for message.
+ */
+ public com.google.protobuf.ByteString getMessageBytes() {
+ java.lang.Object ref = message_;
+ if (ref instanceof String) {
+ com.google.protobuf.ByteString b =
+ com.google.protobuf.ByteString.copyFromUtf8((java.lang.String) ref);
+ message_ = b;
+ return b;
+ } else {
+ return (com.google.protobuf.ByteString) ref;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The message to set.
+ * @return This builder for chaining.
+ */
+ public Builder setMessage(java.lang.String value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ message_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearMessage() {
+ message_ = getDefaultInstance().getMessage();
+ bitField0_ = (bitField0_ & ~0x00000002);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @param value The bytes for message to set.
+ * @return This builder for chaining.
+ */
+ public Builder setMessageBytes(com.google.protobuf.ByteString value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ checkByteStringIsUtf8(value);
+ message_ = value;
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.chat.v1.MessagePin)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.chat.v1.MessagePin)
+ private static final com.google.chat.v1.MessagePin DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.chat.v1.MessagePin();
+ }
+
+ public static com.google.chat.v1.MessagePin getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @return The name.
+ */
+ java.lang.String getName();
+
+ /**
+ *
+ *
+ *
+ * Identifier. The resource name of the message pin.
+ * Format: `spaces/{space}/messagePins/{message_pin}`
+ * The resource ID component matches the resource ID component of the
+ * message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ * corresponds to the message pin with the resource name
+ * `spaces/AAA/messagePins/bbb.ccc`.
+ *
+ *
+ * string name = 1 [(.google.api.field_behavior) = IDENTIFIER];
+ *
+ * @return The bytes for name.
+ */
+ com.google.protobuf.ByteString getNameBytes();
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The message.
+ */
+ java.lang.String getMessage();
+
+ /**
+ *
+ *
+ *
+ * Required. Immutable. The resource name of the message that is pinned.
+ * Format: `spaces/{space}/messages/{message}`
+ *
+ *
+ *
+ * string message = 2 [(.google.api.field_behavior) = IMMUTABLE, (.google.api.field_behavior) = REQUIRED, (.google.api.resource_reference) = { ... }
+ *
+ *
+ * @return The bytes for message.
+ */
+ com.google.protobuf.ByteString getMessageBytes();
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessagePinProto.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessagePinProto.java
new file mode 100644
index 000000000000..c76b1d8f4725
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessagePinProto.java
@@ -0,0 +1,161 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+// Generated by the protocol buffer compiler. DO NOT EDIT!
+// NO CHECKED-IN PROTOBUF GENCODE
+// source: google/chat/v1/message_pin.proto
+// Protobuf Java Version: 4.33.6
+
+package com.google.chat.v1;
+
+@com.google.protobuf.Generated
+public final class MessagePinProto extends com.google.protobuf.GeneratedFile {
+ private MessagePinProto() {}
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "MessagePinProto");
+ }
+
+ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistryLite registry) {}
+
+ public static void registerAllExtensions(com.google.protobuf.ExtensionRegistry registry) {
+ registerAllExtensions((com.google.protobuf.ExtensionRegistryLite) registry);
+ }
+
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_chat_v1_MessagePin_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_chat_v1_MessagePin_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_chat_v1_ListMessagePinsRequest_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_chat_v1_ListMessagePinsRequest_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_chat_v1_ListMessagePinsResponse_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_chat_v1_ListMessagePinsResponse_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_chat_v1_CreateMessagePinRequest_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_chat_v1_CreateMessagePinRequest_fieldAccessorTable;
+ static final com.google.protobuf.Descriptors.Descriptor
+ internal_static_google_chat_v1_DeleteMessagePinRequest_descriptor;
+ static final com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internal_static_google_chat_v1_DeleteMessagePinRequest_fieldAccessorTable;
+
+ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ return descriptor;
+ }
+
+ private static com.google.protobuf.Descriptors.FileDescriptor descriptor;
+
+ static {
+ java.lang.String[] descriptorData = {
+ "\n"
+ + " google/chat/v1/message_pin.proto\022\016goog"
+ + "le.chat.v1\032\037google/api/field_behavior.proto\032\031google/api/resource.proto\"\300\001\n\n"
+ + "MessagePin\022\021\n"
+ + "\004name\030\001 \001(\tB\003\340A\010\0227\n"
+ + "\007message\030\002 \001(\tB&\340A\005\340A\002\372A\035\n"
+ + "\033chat.googleapis.com/Message:f\352Ac\n"
+ + "\036chat.googleapis.com/MessagePin\022("
+ + "spaces/{space}/messagePins/{message_pin}*\013messagePins2\n"
+ + "messagePin\"\201\001\n"
+ + "\026ListMessagePinsRequest\0226\n"
+ + "\006parent\030\001 \001(\tB&\340A\002\372A"
+ + " \022\036chat.googleapis.com/MessagePin\022\026\n"
+ + "\tpage_size\030\002 \001(\005B\003\340A\001\022\027\n\n"
+ + "page_token\030\003 \001(\tB\003\340A\001\"d\n"
+ + "\027ListMessagePinsResponse\0220\n"
+ + "\014message_pins\030\001 \003(\0132\032.google.chat.v1.MessagePin\022\027\n"
+ + "\017next_page_token\030\002 \001(\t\"\202\001\n"
+ + "\027CreateMessagePinRequest\0221\n"
+ + "\006parent\030\001 \001(\tB!\340A\002\372A\033\n"
+ + "\031chat.googleapis.com/Space\0224\n"
+ + "\013message_pin\030\002 \001(\0132\032.google.chat.v1.MessagePinB\003\340A\002\"O\n"
+ + "\027DeleteMessagePinRequest\0224\n"
+ + "\004name\030\001 \001(\tB&\340A\002\372A \n"
+ + "\036chat.googleapis.com/MessagePinB\250\001\n"
+ + "\022com.google.chat.v1B\017MessagePinProtoP\001Z,clo"
+ + "ud.google.com/go/chat/apiv1/chatpb;chatp"
+ + "b\242\002\013DYNAPIProto\252\002\023Google.Apps.Chat.V1\312\002\023"
+ + "Google\\Apps\\Chat\\V1\352\002\026Google::Apps::Chat::V1b\006proto3"
+ };
+ descriptor =
+ com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
+ descriptorData,
+ new com.google.protobuf.Descriptors.FileDescriptor[] {
+ com.google.api.FieldBehaviorProto.getDescriptor(),
+ com.google.api.ResourceProto.getDescriptor(),
+ });
+ internal_static_google_chat_v1_MessagePin_descriptor = getDescriptor().getMessageType(0);
+ internal_static_google_chat_v1_MessagePin_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_chat_v1_MessagePin_descriptor,
+ new java.lang.String[] {
+ "Name", "Message",
+ });
+ internal_static_google_chat_v1_ListMessagePinsRequest_descriptor =
+ getDescriptor().getMessageType(1);
+ internal_static_google_chat_v1_ListMessagePinsRequest_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_chat_v1_ListMessagePinsRequest_descriptor,
+ new java.lang.String[] {
+ "Parent", "PageSize", "PageToken",
+ });
+ internal_static_google_chat_v1_ListMessagePinsResponse_descriptor =
+ getDescriptor().getMessageType(2);
+ internal_static_google_chat_v1_ListMessagePinsResponse_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_chat_v1_ListMessagePinsResponse_descriptor,
+ new java.lang.String[] {
+ "MessagePins", "NextPageToken",
+ });
+ internal_static_google_chat_v1_CreateMessagePinRequest_descriptor =
+ getDescriptor().getMessageType(3);
+ internal_static_google_chat_v1_CreateMessagePinRequest_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_chat_v1_CreateMessagePinRequest_descriptor,
+ new java.lang.String[] {
+ "Parent", "MessagePin",
+ });
+ internal_static_google_chat_v1_DeleteMessagePinRequest_descriptor =
+ getDescriptor().getMessageType(4);
+ internal_static_google_chat_v1_DeleteMessagePinRequest_fieldAccessorTable =
+ new com.google.protobuf.GeneratedMessage.FieldAccessorTable(
+ internal_static_google_chat_v1_DeleteMessagePinRequest_descriptor,
+ new java.lang.String[] {
+ "Name",
+ });
+ descriptor.resolveAllFeaturesImmutable();
+ com.google.api.FieldBehaviorProto.getDescriptor();
+ com.google.api.ResourceProto.getDescriptor();
+ com.google.protobuf.ExtensionRegistry registry =
+ com.google.protobuf.ExtensionRegistry.newInstance();
+ registry.add(com.google.api.FieldBehaviorProto.fieldBehavior);
+ registry.add(com.google.api.ResourceProto.resource);
+ registry.add(com.google.api.ResourceProto.resourceReference);
+ com.google.protobuf.Descriptors.FileDescriptor.internalUpdateFileDescriptor(
+ descriptor, registry);
+ }
+
+ // @@protoc_insertion_point(outer_class_scope)
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessageProto.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessageProto.java
index 7a555b118e82..5f6cff6c4a10 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessageProto.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/MessageProto.java
@@ -228,24 +228,25 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\021ForwardedMetadata\0220\n"
+ "\005space\030\001 \001(\tB!\340A\003\372A\033\n"
+ "\031chat.googleapis.com/Space\022\037\n"
- + "\022space_display_name\030\002 \001(\tB\003\340A\003\"v\n"
+ + "\022space_display_name\030\002 \001(\tB\003\340A\003\"\207\001\n"
+ "\006Thread\022\021\n"
+ "\004name\030\001 \001(\tB\003\340A\010\022\027\n\n"
- + "thread_key\030\003 \001(\tB\003\340A\001:@\352A=\n"
- + "\032chat.googleapis.com/Thread\022\037spaces/{space}/threads/{thread}\"\322\004\n"
+ + "thread_key\030\003 \001(\tB\003\340A\001:Q\352AN\n"
+ + "\032chat.googleap"
+ + "is.com/Thread\022\037spaces/{space}/threads/{thread}*\007threads2\006thread\"\322\004\n"
+ "\016ActionResponse\022>\n"
- + "\004type\030\001 \001(\0162+"
- + ".google.chat.v1.ActionResponse.ResponseTypeB\003\340A\004\022\020\n"
+ + "\004type\030\001"
+ + " \001(\0162+.google.chat.v1.ActionResponse.ResponseTypeB\003\340A\004\022\020\n"
+ "\003url\030\002 \001(\tB\003\340A\004\0228\n\r"
+ "dialog_action\030\003 \001(\0132\034.google.chat.v1.DialogActionB\003\340A\004\022I\n"
- + "\016updated_widget\030\004 \001(\0132,.google.ch"
- + "at.v1.ActionResponse.UpdatedWidgetB\003\340A\004\032R\n"
+ + "\016updated_widget\030\004"
+ + " \001(\0132,.google.chat.v1.ActionResponse.UpdatedWidgetB\003\340A\004\032R\n"
+ "\016SelectionItems\022@\n"
- + "\005items\030\001 \003(\01321.googl"
- + "e.apps.card.v1.SelectionInput.SelectionItem\032w\n\r"
+ + "\005items\030\001"
+ + " \003(\01321.google.apps.card.v1.SelectionInput.SelectionItem\032w\n\r"
+ "UpdatedWidget\022D\n"
- + "\013suggestions\030\001 \001("
- + "\0132-.google.chat.v1.ActionResponse.SelectionItemsH\000\022\016\n"
+ + "\013suggestions\030\001"
+ + " \001(\0132-.google.chat.v1.ActionResponse.SelectionItemsH\000\022\016\n"
+ "\006widget\030\002 \001(\tB\020\n"
+ "\016updated_widget\"\233\001\n"
+ "\014ResponseType\022\024\n"
@@ -276,10 +277,11 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\006parent\030\001 \001("
+ "\tB#\340A\002\372A\035\022\033chat.googleapis.com/Message\022-\n"
+ "\007message\030\004 \001(\0132\027.google.chat.v1.MessageB\003\340A\002\022\031\n\n"
- + "thread_key\030\006 \001(\tB\005\030\001\340A\001\022\027\n\n"
+ + "thread_key\030\006 \001(\tB\005\030\001\340A\001\022\027\n"
+ + "\n"
+ "request_id\030\007 \001(\tB\003\340A\001\022Z\n"
- + "\024message_reply_option\030\010 \001(\01627.goo"
- + "gle.chat.v1.CreateMessageRequest.MessageReplyOptionB\003\340A\001\022\027\n\n"
+ + "\024message_reply_option\030\010"
+ + " \001(\01627.google.chat.v1.CreateMessageRequest.MessageReplyOptionB\003\340A\001\022\027\n\n"
+ "message_id\030\t \001(\tB\003\340A\001\022b\n"
+ "#create_message_notification_options\030\n"
+ " \001(\01320.google.chat.v1.CreateMessageNotificationOptionsB\003\340A\001\"\177\n"
@@ -288,8 +290,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "$REPLY_MESSAGE_FALLBACK_TO_NEW_THREAD\020\001\022\031\n"
+ "\025REPLY_MESSAGE_OR_FAIL\020\002\"\362\001\n"
+ " CreateMessageNotificationOptions\022\\\n"
- + "\021notification_type\030\001 \001(\0162A.google.chat.v1.CreateMe"
- + "ssageNotificationOptions.NotificationType\"p\n"
+ + "\021notification_type\030\001 \001(\0162A.googl"
+ + "e.chat.v1.CreateMessageNotificationOptions.NotificationType\"p\n"
+ "\020NotificationType\022\032\n"
+ "\026NOTIFICATION_TYPE_NONE\020\000\022\"\n"
+ "\036NOTIFICATION_TYPE_FORCE_NOTIFY\020\002\022\034\n"
@@ -323,8 +325,8 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "page_token\030\004 \001(\tB\003\340A\001\022\025\n"
+ "\010order_by\030\005 \001(\tB\003\340A\001\0228\n\r"
+ "markup_syntax\030\006 \001(\0162\034.google.chat.v1.MarkupSyntaxB\003\340A\001\022K\n"
- + "\004view\030\007"
- + " \001(\01628.google.chat.v1.SearchMessagesRequest.SearchMessagesViewB\003\340A\001\"y\n"
+ + "\004view\030\007 \001(\01628.google.chat.v1."
+ + "SearchMessagesRequest.SearchMessagesViewB\003\340A\001\"y\n"
+ "\022SearchMessagesView\022$\n"
+ " SEARCH_MESSAGES_VIEW_UNSPECIFIED\020\000\022\036\n"
+ "\032SEARCH_MESSAGES_VIEW_BASIC\020\001\022\035\n"
@@ -335,13 +337,13 @@ public static com.google.protobuf.Descriptors.FileDescriptor getDescriptor() {
+ "\023SearchMessageResult\022(\n"
+ "\007message\030\001 \001(\0132\027.google.chat.v1.Message\022\021\n"
+ "\004read\030\003 \001(\010H\000\210\001\001\022P\n"
- + "\022space_mute_setting\030\004"
- + " \001(\01624.google.chat.v1.SpaceNotificationSetting.MuteSettingB\007\n"
+ + "\022space_mute_setting\030\004 \001(\01624.google.chat"
+ + ".v1.SpaceNotificationSetting.MuteSettingB\007\n"
+ "\005_readB\245\001\n"
- + "\022com.google.chat.v1B\014MessageProtoP\001Z,cloud.go"
- + "ogle.com/go/chat/apiv1/chatpb;chatpb\242\002\013D"
- + "YNAPIProto\252\002\023Google.Apps.Chat.V1\312\002\023Googl"
- + "e\\Apps\\Chat\\V1\352\002\026Google::Apps::Chat::V1b\006proto3"
+ + "\022com.google.chat.v1B\014MessageProtoP\001Z,cloud.google.com/go/chat/apiv1"
+ + "/chatpb;chatpb\242\002\013DYNAPIProto\252\002\023Google.Ap"
+ + "ps.Chat.V1\312\002\023Google\\Apps\\Chat\\V1\352\002\026Googl"
+ + "e::Apps::Chat::V1b\006proto3"
};
descriptor =
com.google.protobuf.Descriptors.FileDescriptor.internalBuildGeneratedFileFrom(
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchMessagesRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchMessagesRequest.java
index c4e6c38f393b..755586db3e46 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchMessagesRequest.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchMessagesRequest.java
@@ -356,6 +356,10 @@ public com.google.protobuf.ByteString getParentBytes() {
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -375,8 +379,8 @@ public com.google.protobuf.ByteString getParentBytes() {
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -414,6 +418,8 @@ public com.google.protobuf.ByteString getParentBytes() {
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
@@ -503,6 +509,10 @@ public java.lang.String getFilter() {
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -522,8 +532,8 @@ public java.lang.String getFilter() {
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -561,6 +571,8 @@ public java.lang.String getFilter() {
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
@@ -1509,6 +1521,10 @@ public Builder setParentBytes(com.google.protobuf.ByteString value) {
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -1528,8 +1544,8 @@ public Builder setParentBytes(com.google.protobuf.ByteString value) {
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -1567,6 +1583,8 @@ public Builder setParentBytes(com.google.protobuf.ByteString value) {
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
@@ -1655,6 +1673,10 @@ public java.lang.String getFilter() {
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -1674,8 +1696,8 @@ public java.lang.String getFilter() {
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -1713,6 +1735,8 @@ public java.lang.String getFilter() {
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
@@ -1801,6 +1825,10 @@ public com.google.protobuf.ByteString getFilterBytes() {
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -1820,8 +1848,8 @@ public com.google.protobuf.ByteString getFilterBytes() {
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -1859,6 +1887,8 @@ public com.google.protobuf.ByteString getFilterBytes() {
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
@@ -1946,6 +1976,10 @@ public Builder setFilter(java.lang.String value) {
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -1965,8 +1999,8 @@ public Builder setFilter(java.lang.String value) {
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -2004,6 +2038,8 @@ public Builder setFilter(java.lang.String value) {
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
@@ -2087,6 +2123,10 @@ public Builder clearFilter() {
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -2106,8 +2146,8 @@ public Builder clearFilter() {
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -2145,6 +2185,8 @@ public Builder clearFilter() {
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchMessagesRequestOrBuilder.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchMessagesRequestOrBuilder.java
index 99dd999b5a46..e2f39c2bd2a4 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchMessagesRequestOrBuilder.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchMessagesRequestOrBuilder.java
@@ -97,6 +97,10 @@ public interface SearchMessagesRequestOrBuilder
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -116,8 +120,8 @@ public interface SearchMessagesRequestOrBuilder
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -155,6 +159,8 @@ public interface SearchMessagesRequestOrBuilder
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
@@ -233,6 +239,10 @@ public interface SearchMessagesRequestOrBuilder
* the top five space matches. For example, `space.display_name:Project`
* searches for messages in the top five spaces that contain the word
* "Project" in their display names.
+ * - `space.space_type`: The type of the space. Only supports `=`. For
+ * example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ * direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ * and `SPACE`.
* - `attachment`: Supports the operator `:*` (has any) to check for the
* presence of attachments. If `attachment:*` is specified, only messages
* that have at least one attachment are returned.
@@ -252,8 +262,8 @@ public interface SearchMessagesRequestOrBuilder
* - `is_unread()`: Filters out messages that have been read by the calling
* user.
*
- * Using the `space.display_name` filter requires that the calling credentials
- * include one of the following [authorization
+ * Using the `space.display_name` or the `space.space_type` filters requires
+ * that the calling credentials include one of the following [authorization
* scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
*
* - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -291,6 +301,8 @@ public interface SearchMessagesRequestOrBuilder
* `space.display_name:Project OR space.display_name:Tasks` returns messages
* that are in spaces with display names containing either `Project` or
* `Tasks` or both.
+ * - `space.space_type` supports only the `OR` operator, for example:
+ * `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
* - `annotations.user_mentions.user.name` supports the operators `AND` and
* `OR`, but not a mix of both. For example:
* `annotations.user_mentions.user.name:"users/1234567890" AND
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesRequest.java
index 61d7b5002f13..0e62ab11694c 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesRequest.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesRequest.java
@@ -112,8 +112,9 @@ public boolean getUseAdminAccess() {
*
* If unspecified, at most 100 spaces are returned.
*
- * The maximum value is 1000. If you use a value more than 1000, it's
- * automatically changed to 1000.
+ * The maximum value is 1000 when `useAdminAccess` is set to `true`.
+ * Otherwise, the maximum value is 100. If you use a value more than the
+ * maximum value, it's automatically changed to the maximum value.
* int32 page_size = 2;
@@ -291,6 +292,11 @@ public com.google.protobuf.ByteString getPageTokenBytes() {
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -408,6 +414,11 @@ public java.lang.String getQuery() {
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
*
*
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -1040,8 +1051,9 @@ public Builder clearUseAdminAccess() {
*
* If unspecified, at most 100 spaces are returned.
*
- * The maximum value is 1000. If you use a value more than 1000, it's
- * automatically changed to 1000.
+ * The maximum value is 1000 when `useAdminAccess` is set to `true`.
+ * Otherwise, the maximum value is 100. If you use a value more than the
+ * maximum value, it's automatically changed to the maximum value.
*
*
* int32 page_size = 2;
@@ -1062,8 +1074,9 @@ public int getPageSize() {
*
* If unspecified, at most 100 spaces are returned.
*
- * The maximum value is 1000. If you use a value more than 1000, it's
- * automatically changed to 1000.
+ * The maximum value is 1000 when `useAdminAccess` is set to `true`.
+ * Otherwise, the maximum value is 100. If you use a value more than the
+ * maximum value, it's automatically changed to the maximum value.
*
*
* int32 page_size = 2;
@@ -1088,8 +1101,9 @@ public Builder setPageSize(int value) {
*
* If unspecified, at most 100 spaces are returned.
*
- * The maximum value is 1000. If you use a value more than 1000, it's
- * automatically changed to 1000.
+ * The maximum value is 1000 when `useAdminAccess` is set to `true`.
+ * Otherwise, the maximum value is 100. If you use a value more than the
+ * maximum value, it's automatically changed to the maximum value.
*
*
* int32 page_size = 2;
@@ -1339,6 +1353,11 @@ public Builder setPageTokenBytes(com.google.protobuf.ByteString value) {
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
*
*
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -1455,6 +1474,11 @@ public java.lang.String getQuery() {
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
*
*
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -1571,6 +1595,11 @@ public com.google.protobuf.ByteString getQueryBytes() {
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
*
*
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -1686,6 +1715,11 @@ public Builder setQuery(java.lang.String value) {
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
*
*
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -1797,6 +1831,11 @@ public Builder clearQuery() {
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
*
*
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesRequestOrBuilder.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesRequestOrBuilder.java
index ecbf9d79a93a..d88f35209de7 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesRequestOrBuilder.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesRequestOrBuilder.java
@@ -57,8 +57,9 @@ public interface SearchSpacesRequestOrBuilder
*
* If unspecified, at most 100 spaces are returned.
*
- * The maximum value is 1000. If you use a value more than 1000, it's
- * automatically changed to 1000.
+ * The maximum value is 1000 when `useAdminAccess` is set to `true`.
+ * Otherwise, the maximum value is 100. If you use a value more than the
+ * maximum value, it's automatically changed to the maximum value.
*
*
* int32 page_size = 2;
@@ -201,6 +202,11 @@ public interface SearchSpacesRequestOrBuilder
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
*
*
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
@@ -307,6 +313,11 @@ public interface SearchSpacesRequestOrBuilder
* (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
* "SPACE")
* ```
+ *
+ * The maximum query length is 1,000 characters.
+ *
+ * Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ * error.
*
*
* string query = 4 [(.google.api.field_behavior) = REQUIRED];
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesResponse.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesResponse.java
index b65d1b1ce107..7a68c2973c9c 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesResponse.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesResponse.java
@@ -889,6 +889,8 @@ public com.google.chat.v1.SpaceOrBuilder getSpacesOrBuilder(int index) {
*
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -914,6 +916,8 @@ public java.lang.String getNextPageToken() {
*
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -942,6 +946,8 @@ public com.google.protobuf.ByteString getNextPageTokenBytes() {
*
* The total number of spaces that match the query, across all pages. If the
* result is over 10,000 spaces, this value is an estimate.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* int32 total_size = 3;
@@ -1950,6 +1956,8 @@ public java.util.List
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -1974,6 +1982,8 @@ public java.lang.String getNextPageToken() {
*
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -1998,6 +2008,8 @@ public com.google.protobuf.ByteString getNextPageTokenBytes() {
*
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -2021,6 +2033,8 @@ public Builder setNextPageToken(java.lang.String value) {
*
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -2040,6 +2054,8 @@ public Builder clearNextPageToken() {
*
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -2066,6 +2082,8 @@ public Builder setNextPageTokenBytes(com.google.protobuf.ByteString value) {
*
* The total number of spaces that match the query, across all pages. If the
* result is over 10,000 spaces, this value is an estimate.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* int32 total_size = 3;
@@ -2083,6 +2101,8 @@ public int getTotalSize() {
*
* The total number of spaces that match the query, across all pages. If the
* result is over 10,000 spaces, this value is an estimate.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* int32 total_size = 3;
@@ -2104,6 +2124,8 @@ public Builder setTotalSize(int value) {
*
* The total number of spaces that match the query, across all pages. If the
* result is over 10,000 spaces, this value is an estimate.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* int32 total_size = 3;
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesResponseOrBuilder.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesResponseOrBuilder.java
index 7adc69628619..64c60bf813c8 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesResponseOrBuilder.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SearchSpacesResponseOrBuilder.java
@@ -107,6 +107,8 @@ public interface SearchSpacesResponseOrBuilder
*
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -121,6 +123,8 @@ public interface SearchSpacesResponseOrBuilder
*
* A token that can be used to retrieve the next page. If this field is empty,
* there are no subsequent pages.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* string next_page_token = 2;
@@ -135,6 +139,8 @@ public interface SearchSpacesResponseOrBuilder
*
* The total number of spaces that match the query, across all pages. If the
* result is over 10,000 spaces, this value is an estimate.
+ *
+ * Only populated when `useAdminAccess` is set to `true`.
*
*
* int32 total_size = 3;
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequest.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequest.java
index 37930e044634..4ab1f917634b 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequest.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequest.java
@@ -196,12 +196,24 @@ public com.google.chat.v1.SpaceOrBuilder getSpaceOrBuilder() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -225,12 +237,24 @@ public java.lang.String getRequestId() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -1289,12 +1313,24 @@ public com.google.chat.v1.SpaceOrBuilder getSpaceOrBuilder() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -1317,12 +1353,24 @@ public java.lang.String getRequestId() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -1345,12 +1393,24 @@ public com.google.protobuf.ByteString getRequestIdBytes() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -1372,12 +1432,24 @@ public Builder setRequestId(java.lang.String value) {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -1395,12 +1467,24 @@ public Builder clearRequestId() {
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequestOrBuilder.java b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequestOrBuilder.java
index 09917ab25b1c..fdb40118ae90 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequestOrBuilder.java
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/java/com/google/chat/v1/SetUpSpaceRequestOrBuilder.java
@@ -133,12 +133,24 @@ public interface SetUpSpaceRequestOrBuilder
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
@@ -151,12 +163,24 @@ public interface SetUpSpaceRequestOrBuilder
*
*
*
- * Optional. A unique identifier for this request.
- * A random UUID is recommended.
- * Specifying an existing request ID returns the space created with that ID
- * instead of creating a new space.
- * Specifying an existing request ID from the same Chat app with a different
- * authenticated user returns an error.
+ * Optional. A unique ID for this request. A random UUID is recommended.
+ * Specifying a request ID makes the request idempotent, which ensures that
+ * multiple identical requests with the same request ID result in only a
+ * single space being created. Subsequent requests with the same request ID
+ * return the existing space and do not update the space, even if the
+ * requested details differ from the current state.
+ *
+ * To use this field effectively:
+ *
+ * - Ensure that subsequent requests are identical and use the same
+ * authentication credentials as the original request.
+ * - If a space was already created with the provided request ID, the request
+ * returns that space. Note that the returned space might not be fully
+ * populated; the API echoes the space in your request with the
+ * system-assigned resource name populated. To retrieve the latest metadata
+ * for the space, call `GetSpace`.
+ * - Reusing an existing request ID with a different authenticated user
+ * results in an error.
*
*
* string request_id = 2 [(.google.api.field_behavior) = OPTIONAL];
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/annotation.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/annotation.proto
index 105f19dfb979..277ef349c5fb 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/annotation.proto
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/annotation.proto
@@ -31,10 +31,10 @@ option objc_class_prefix = "DYNAPIProto";
option php_namespace = "Google\\Apps\\Chat\\V1";
option ruby_package = "Google::Apps::Chat::V1";
-// Output only. Annotations can be associated with the plain-text body of the
-// message or with chips that link to Google Workspace resources like Google
-// Docs or Sheets with `start_index` and `length` of 0. To add basic formatting
-// to a text message, see [Format text
+// Annotations can be associated with the plain-text body of the message or
+// with chips that link to Google Workspace resources like Google Docs or Sheets
+// with `start_index` and `length` of 0. To add basic formatting to a text
+// message, see [Format text
// messages](https://developers.google.com/workspace/chat/format-messages).
//
// Example plain-text message body:
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/app_command_metadata.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/app_command_metadata.proto
new file mode 100644
index 000000000000..39735c9d66ac
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/app_command_metadata.proto
@@ -0,0 +1,53 @@
+// Copyright 2026 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.chat.v1;
+
+option csharp_namespace = "Google.Apps.Chat.V1";
+option go_package = "cloud.google.com/go/chat/apiv1/chatpb;chatpb";
+option java_multiple_files = true;
+option java_outer_classname = "AppCommandMetadataProto";
+option java_package = "com.google.chat.v1";
+option php_namespace = "Google\\Apps\\Chat\\V1";
+option ruby_package = "Google::Apps::Chat::V1";
+
+// Metadata about a [Chat app
+// command](https://developers.google.com/workspace/chat/commands).
+message AppCommandMetadata {
+ // The type of Chat app command. For details, see [Types of Chat
+ // app commands](https://developers.google.com/workspace/chat/commands#types).
+ enum AppCommandType {
+ // Default value. Unspecified.
+ APP_COMMAND_TYPE_UNSPECIFIED = 0;
+
+ // A slash command. The user sends the command in a Chat message.
+ SLASH_COMMAND = 1;
+
+ // A quick command. The user selects the command from the Chat menu
+ // in the message reply area.
+ QUICK_COMMAND = 3;
+
+ // A message action. The user selects the command from the message context
+ // menu in Chat.
+ MESSAGE_ACTION = 4;
+ }
+
+ // The ID for the command specified in the Chat API configuration.
+ int32 app_command_id = 1;
+
+ // The type of Chat app command.
+ AppCommandType app_command_type = 2;
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/chat_service.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/chat_service.proto
index 455ba073ced7..68859a407be9 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/chat_service.proto
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/chat_service.proto
@@ -22,6 +22,7 @@ import "google/chat/v1/attachment.proto";
import "google/chat/v1/availability.proto";
import "google/chat/v1/membership.proto";
import "google/chat/v1/message.proto";
+import "google/chat/v1/message_pin.proto";
import "google/chat/v1/reaction.proto";
import "google/chat/v1/section.proto";
import "google/chat/v1/space.proto";
@@ -77,6 +78,8 @@ service ChatService {
"https://www.googleapis.com/auth/chat.messages.readonly,"
"https://www.googleapis.com/auth/chat.spaces,"
"https://www.googleapis.com/auth/chat.spaces.create,"
+ "https://www.googleapis.com/auth/chat.spaces.pins,"
+ "https://www.googleapis.com/auth/chat.spaces.pins.readonly,"
"https://www.googleapis.com/auth/chat.spaces.readonly,"
"https://www.googleapis.com/auth/chat.users.availability,"
"https://www.googleapis.com/auth/chat.users.availability.readonly,"
@@ -981,6 +984,61 @@ service ChatService {
option (google.api.method_signature) = "name";
}
+ // Lists message pins in a space. Users can pin important messages in spaces
+ // for easy access. For more information, see [Pin or unpin a conversation in
+ // Google Chat](https://support.google.com/chat/answer/15622437).
+ //
+ // Requires [user
+ // authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ // with one of the following [authorization
+ // scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ //
+ // - `https://www.googleapis.com/auth/chat.spaces.pins.readonly`
+ // - `https://www.googleapis.com/auth/chat.spaces.pins`
+ // - `https://www.googleapis.com/auth/chat.spaces.readonly`
+ // - `https://www.googleapis.com/auth/chat.spaces`
+ rpc ListMessagePins(ListMessagePinsRequest)
+ returns (ListMessagePinsResponse) {
+ option (google.api.http) = {
+ get: "/v1/{parent=spaces/*}/messagePins"
+ };
+ option (google.api.method_signature) = "parent";
+ }
+
+ // Creates a message pin.
+ //
+ // Requires [user
+ // authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ // with one of the following [authorization
+ // scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ //
+ // - `https://www.googleapis.com/auth/chat.spaces.pins`
+ // - `https://www.googleapis.com/auth/chat.spaces`
+ rpc CreateMessagePin(CreateMessagePinRequest) returns (MessagePin) {
+ option (google.api.http) = {
+ post: "/v1/{parent=spaces/*}/messagePins"
+ body: "message_pin"
+ };
+ option (google.api.method_signature) = "parent,message_pin";
+ }
+
+ // Deletes a message pin.
+ //
+ // Requires [user
+ // authentication](https://developers.google.com/workspace/chat/authenticate-authorize-chat-user)
+ // with one of the following [authorization
+ // scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
+ //
+ // - `https://www.googleapis.com/auth/chat.spaces.pins`
+ // - `https://www.googleapis.com/auth/chat.spaces`
+ rpc DeleteMessagePin(DeleteMessagePinRequest)
+ returns (google.protobuf.Empty) {
+ option (google.api.http) = {
+ delete: "/v1/{name=spaces/*/messagePins/*}"
+ };
+ option (google.api.method_signature) = "name";
+ }
+
// Creates a custom emoji.
//
// Custom emojis are only available for Google Workspace accounts, and the
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/message.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/message.proto
index 37a07c0b9f41..806d2aa91dc6 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/message.proto
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/message.proto
@@ -413,6 +413,8 @@ message Thread {
option (google.api.resource) = {
type: "chat.googleapis.com/Thread"
pattern: "spaces/{space}/threads/{thread}"
+ plural: "threads"
+ singular: "thread"
};
// Identifier. Resource name of the thread.
@@ -634,9 +636,24 @@ message CreateMessageRequest {
string thread_key = 6
[deprecated = true, (google.api.field_behavior) = OPTIONAL];
- // Optional. A unique request ID for this message. Specifying an existing
- // request ID returns the message created with that ID instead of creating a
- // new message.
+ // Optional. A unique ID for this request. A random UUID is recommended.
+ // Specifying a request ID makes the request idempotent, which ensures that
+ // multiple identical requests with the same request ID result in only a
+ // single message being created. Subsequent requests with the same request
+ // ID return the existing message and do not update the message, even if the
+ // requested details differ from the current state.
+ //
+ // To use this field effectively:
+ //
+ // - Ensure that subsequent requests are identical and use the same
+ // authentication credentials as the original request.
+ // - If a message was already created with the provided request ID, the
+ // request returns that message. Note that the returned message might not be
+ // fully populated; the API echoes the message in your request with the
+ // system-assigned resource names populated. To retrieve the latest metadata
+ // for the message, call `GetMessage`.
+ // - Reusing an existing request ID with a different authenticated user
+ // results in an error.
string request_id = 7 [(google.api.field_behavior) = OPTIONAL];
// Optional. Specifies whether a message starts a thread or replies to one.
@@ -911,6 +928,10 @@ message SearchMessagesRequest {
// the top five space matches. For example, `space.display_name:Project`
// searches for messages in the top five spaces that contain the word
// "Project" in their display names.
+ // - `space.space_type`: The type of the space. Only supports `=`. For
+ // example, `space.space_type="DIRECT_MESSAGE"` returns only messages from
+ // direct messages. The possible values are `DIRECT_MESSAGE`, `GROUP_CHAT`,
+ // and `SPACE`.
// - `attachment`: Supports the operator `:*` (has any) to check for the
// presence of attachments. If `attachment:*` is specified, only messages
// that have at least one attachment are returned.
@@ -930,8 +951,8 @@ message SearchMessagesRequest {
// - `is_unread()`: Filters out messages that have been read by the calling
// user.
//
- // Using the `space.display_name` filter requires that the calling credentials
- // include one of the following [authorization
+ // Using the `space.display_name` or the `space.space_type` filters requires
+ // that the calling credentials include one of the following [authorization
// scopes](https://developers.google.com/workspace/chat/authenticate-authorize#chat-api-scopes):
//
// - `https://www.googleapis.com/auth/chat.spaces.readonly`
@@ -969,6 +990,8 @@ message SearchMessagesRequest {
// `space.display_name:Project OR space.display_name:Tasks` returns messages
// that are in spaces with display names containing either `Project` or
// `Tasks` or both.
+ // - `space.space_type` supports only the `OR` operator, for example:
+ // `space.space_type = "DIRECT_MESSAGE" OR space.space_type = "GROUP_CHAT"`.
// - `annotations.user_mentions.user.name` supports the operators `AND` and
// `OR`, but not a mix of both. For example:
// `annotations.user_mentions.user.name:"users/1234567890" AND
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/message_pin.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/message_pin.proto
new file mode 100644
index 000000000000..9b4263be2b44
--- /dev/null
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/message_pin.proto
@@ -0,0 +1,116 @@
+// Copyright 2026 Google LLC
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+
+syntax = "proto3";
+
+package google.chat.v1;
+
+import "google/api/field_behavior.proto";
+import "google/api/resource.proto";
+
+option csharp_namespace = "Google.Apps.Chat.V1";
+option go_package = "cloud.google.com/go/chat/apiv1/chatpb;chatpb";
+option java_multiple_files = true;
+option java_outer_classname = "MessagePinProto";
+option java_package = "com.google.chat.v1";
+option objc_class_prefix = "DYNAPIProto";
+option php_namespace = "Google\\Apps\\Chat\\V1";
+option ruby_package = "Google::Apps::Chat::V1";
+
+// A pin on a Chat message. For more information see [Pin a
+// message](https://support.google.com/chat?p=chat-board-hc).
+message MessagePin {
+ option (google.api.resource) = {
+ type: "chat.googleapis.com/MessagePin"
+ pattern: "spaces/{space}/messagePins/{message_pin}"
+ plural: "messagePins"
+ singular: "messagePin"
+ };
+
+ // Identifier. The resource name of the message pin.
+ // Format: `spaces/{space}/messagePins/{message_pin}`
+ // The resource ID component matches the resource ID component of the
+ // message. For example, a message with `spaces/AAA/messages/bbb.ccc`
+ // corresponds to the message pin with the resource name
+ // `spaces/AAA/messagePins/bbb.ccc`.
+ string name = 1 [(google.api.field_behavior) = IDENTIFIER];
+
+ // Required. Immutable. The resource name of the message that is pinned.
+ // Format: `spaces/{space}/messages/{message}`
+ string message = 2 [
+ (google.api.field_behavior) = IMMUTABLE,
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "chat.googleapis.com/Message" }
+ ];
+}
+
+// Request message for listing message pins.
+message ListMessagePinsRequest {
+ // Required. The parent space which owns the collection of pinned items
+ // Format: `spaces/{space}`
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = {
+ child_type: "chat.googleapis.com/MessagePin"
+ }
+ ];
+
+ // Optional. The maximum number of message pins returned. The service might
+ // return fewer messages than this value. The maximum value is 100. If you use
+ // a value more than 100, it's automatically changed to 100. If unspecified,
+ // at most 100 message pins will be returned. Negative values return an
+ // `INVALID_ARGUMENT` error.
+ int32 page_size = 2 [(google.api.field_behavior) = OPTIONAL];
+
+ // Optional. A page token received from a previous list message pins call.
+ // Provide this parameter to retrieve the subsequent page.
+ //
+ // When paginating, all other parameters provided should match the call that
+ // provided the page token. Passing different values to the other parameters
+ // might lead to unexpected results.
+ string page_token = 3 [(google.api.field_behavior) = OPTIONAL];
+}
+
+// Response message for listing message pins.
+message ListMessagePinsResponse {
+ // The pinned messages from the specified space.
+ repeated MessagePin message_pins = 1;
+
+ // You can send a token as `pageToken` to retrieve the next page of
+ // results. If empty, there are no subsequent pages.
+ string next_page_token = 2;
+}
+
+// Request message for creating a message pin.
+message CreateMessagePinRequest {
+ // Required. The parent space in which to create the message pin.
+ // Format: spaces/{space}
+ string parent = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "chat.googleapis.com/Space" }
+ ];
+
+ // Required. The MessagePin to create.
+ MessagePin message_pin = 2 [(google.api.field_behavior) = REQUIRED];
+}
+
+// Request message for deleting a message pin.
+message DeleteMessagePinRequest {
+ // Required. The resource name of the message pin to remove.
+ // Format: spaces/{space}/messagePins/{message_pin}
+ string name = 1 [
+ (google.api.field_behavior) = REQUIRED,
+ (google.api.resource_reference) = { type: "chat.googleapis.com/MessagePin" }
+ ];
+}
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space.proto
index 8c3cf641fd8e..2472d4a3751d 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space.proto
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space.proto
@@ -489,12 +489,24 @@ message CreateSpaceRequest {
// field will be ignored.
Space space = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. A unique identifier for this request.
- // A random UUID is recommended.
- // Specifying an existing request ID returns the space created with that ID
- // instead of creating a new space.
- // Specifying an existing request ID from the same Chat app with a different
- // authenticated user returns an error.
+ // Optional. A unique ID for this request. A random UUID is recommended.
+ // Specifying a request ID makes the request idempotent, which ensures that
+ // multiple identical requests with the same request ID result in only a
+ // single space being created. Subsequent requests with the same request ID
+ // return the existing space and do not update the space, even if the
+ // requested details differ from the current state.
+ //
+ // To use this field effectively:
+ //
+ // - Ensure that subsequent requests are identical and use the same
+ // authentication credentials as the original request.
+ // - If a space was already created with the provided request ID, the request
+ // returns that space. Note that the returned space might not be fully
+ // populated; the API echoes the space in your request with the
+ // system-assigned resource name populated. To retrieve the latest metadata
+ // for the space, call `GetSpace`.
+ // - Reusing an existing request ID with a different authenticated user
+ // results in an error.
string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
}
@@ -775,8 +787,9 @@ message SearchSpacesRequest {
//
// If unspecified, at most 100 spaces are returned.
//
- // The maximum value is 1000. If you use a value more than 1000, it's
- // automatically changed to 1000.
+ // The maximum value is 1000 when `useAdminAccess` is set to `true`.
+ // Otherwise, the maximum value is 100. If you use a value more than the
+ // maximum value, it's automatically changed to the maximum value.
int32 page_size = 2;
// A token, received from the previous search spaces call. Provide this
@@ -881,6 +894,11 @@ message SearchSpacesRequest {
// (external_user_allowed = "true" AND display_name:"Hello" AND space_type =
// "SPACE")
// ```
+ //
+ // The maximum query length is 1,000 characters.
+ //
+ // Invalid queries are rejected by the server with an `INVALID_ARGUMENT`
+ // error.
string query = 4 [(google.api.field_behavior) = REQUIRED];
// Optional. How the list of spaces is ordered.
@@ -936,10 +954,14 @@ message SearchSpacesResponse {
// A token that can be used to retrieve the next page. If this field is empty,
// there are no subsequent pages.
+ //
+ // Only populated when `useAdminAccess` is set to `true`.
string next_page_token = 2;
// The total number of spaces that match the query, across all pages. If the
// result is over 10,000 spaces, this value is an estimate.
+ //
+ // Only populated when `useAdminAccess` is set to `true`.
int32 total_size = 3;
// Output only. The list of search results that matched the query.
diff --git a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space_setup.proto b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space_setup.proto
index 085843e49c9b..baa14cb44f70 100644
--- a/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space_setup.proto
+++ b/java-chat/proto-google-cloud-chat-v1/src/main/proto/google/chat/v1/space_setup.proto
@@ -56,12 +56,24 @@ message SetUpSpaceRequest {
// of creating a new space.
Space space = 1 [(google.api.field_behavior) = REQUIRED];
- // Optional. A unique identifier for this request.
- // A random UUID is recommended.
- // Specifying an existing request ID returns the space created with that ID
- // instead of creating a new space.
- // Specifying an existing request ID from the same Chat app with a different
- // authenticated user returns an error.
+ // Optional. A unique ID for this request. A random UUID is recommended.
+ // Specifying a request ID makes the request idempotent, which ensures that
+ // multiple identical requests with the same request ID result in only a
+ // single space being created. Subsequent requests with the same request ID
+ // return the existing space and do not update the space, even if the
+ // requested details differ from the current state.
+ //
+ // To use this field effectively:
+ //
+ // - Ensure that subsequent requests are identical and use the same
+ // authentication credentials as the original request.
+ // - If a space was already created with the provided request ID, the request
+ // returns that space. Note that the returned space might not be fully
+ // populated; the API echoes the space in your request with the
+ // system-assigned resource name populated. To retrieve the latest metadata
+ // for the space, call `GetSpace`.
+ // - Reusing an existing request ID with a different authenticated user
+ // results in an error.
string request_id = 2 [(google.api.field_behavior) = OPTIONAL];
// Optional. The Google Chat users or groups to invite to join the space. Omit
diff --git a/java-chat/samples/snippets/generated/com/google/chat/v1/chatservice/createmessagepin/AsyncCreateMessagePin.java b/java-chat/samples/snippets/generated/com/google/chat/v1/chatservice/createmessagepin/AsyncCreateMessagePin.java
new file mode 100644
index 000000000000..323e9e0ed781
--- /dev/null
+++ b/java-chat/samples/snippets/generated/com/google/chat/v1/chatservice/createmessagepin/AsyncCreateMessagePin.java
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2026 Google LLC
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.google.chat.v1.samples;
+
+// [START chat_v1_generated_ChatService_CreateMessagePin_async]
+import com.google.api.core.ApiFuture;
+import com.google.chat.v1.ChatServiceClient;
+import com.google.chat.v1.CreateMessagePinRequest;
+import com.google.chat.v1.MessagePin;
+import com.google.chat.v1.SpaceName;
+
+public class AsyncCreateMessagePin {
+
+ public static void main(String[] args) throws Exception {
+ asyncCreateMessagePin();
+ }
+
+ public static void asyncCreateMessagePin() throws Exception {
+ // This snippet has been automatically generated and should be regarded as a code template only.
+ // It will require modifications to work:
+ // - It may require correct/in-range values for request initialization.
+ // - It may require specifying regional endpoints when creating the service client as shown in
+ // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
+ try (ChatServiceClient chatServiceClient = ChatServiceClient.create()) {
+ CreateMessagePinRequest request =
+ CreateMessagePinRequest.newBuilder()
+ .setParent(SpaceName.of("[SPACE]").toString())
+ .setMessagePin(MessagePin.newBuilder().build())
+ .build();
+ ApiFuture
+ * Additional building information such as roof geometry and
+ * solar panel arrays that can be returned in BuildingInsights.
+ *
+ * New values may be added to this enum in the future.
+ *
+ *
+ * Protobuf enum {@code google.maps.solar.v1.AdditionalInsights}
+ */
+@com.google.protobuf.Generated
+public enum AdditionalInsights implements com.google.protobuf.ProtocolMessageEnum {
+ /**
+ *
+ *
+ *
+ * The default value. The default BuildingInsights will be returned.
+ *
+ *
+ * ADDITIONAL_INSIGHTS_UNSPECIFIED = 0;
+ */
+ ADDITIONAL_INSIGHTS_UNSPECIFIED(0),
+ /**
+ *
+ *
+ *
+ * Determines whether the response will include the detected arrays.
+ *
+ * If specified, the `detected_arrays` field will be populated in the
+ * response.
+ *
+ *
+ * DETECTED_ARRAYS = 2;
+ */
+ DETECTED_ARRAYS(2),
+ UNRECOGNIZED(-1),
+ ;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "AdditionalInsights");
+ }
+
+ /**
+ *
+ *
+ *
+ * The default value. The default BuildingInsights will be returned.
+ *
+ *
+ * ADDITIONAL_INSIGHTS_UNSPECIFIED = 0;
+ */
+ public static final int ADDITIONAL_INSIGHTS_UNSPECIFIED_VALUE = 0;
+
+ /**
+ *
+ *
+ *
+ * Determines whether the response will include the detected arrays.
+ *
+ * If specified, the `detected_arrays` field will be populated in the
+ * response.
+ *
+ *
+ * DETECTED_ARRAYS = 2;
+ */
+ public static final int DETECTED_ARRAYS_VALUE = 2;
+
+ public final int getNumber() {
+ if (this == UNRECOGNIZED) {
+ throw new java.lang.IllegalArgumentException(
+ "Can't get the number of an unknown enum value.");
+ }
+ return value;
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ * @deprecated Use {@link #forNumber(int)} instead.
+ */
+ @java.lang.Deprecated
+ public static AdditionalInsights valueOf(int value) {
+ return forNumber(value);
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ */
+ public static AdditionalInsights forNumber(int value) {
+ switch (value) {
+ case 0:
+ return ADDITIONAL_INSIGHTS_UNSPECIFIED;
+ case 2:
+ return DETECTED_ARRAYS;
+ default:
+ return null;
+ }
+ }
+
+ public static com.google.protobuf.Internal.EnumLiteMap
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @return The enum numeric value on the wire for detectionStatus.
+ */
+ int getDetectionStatusValue();
+
+ /**
+ *
+ *
+ *
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @return The detectionStatus.
+ */
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus getDetectionStatus();
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ *
+ * @return Whether the latestCaptureDate field is set.
+ */
+ boolean hasLatestCaptureDate();
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ *
+ * @return The latestCaptureDate.
+ */
+ com.google.type.Date getLatestCaptureDate();
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ com.google.type.DateOrBuilder getLatestCaptureDateOrBuilder();
+ }
+
+ /**
+ *
+ *
+ *
+ * Information about solar arrays detected on the building.
+ *
+ *
+ * Protobuf type {@code google.maps.solar.v1.BuildingInsights.DetectedArrays}
+ */
+ public static final class DetectedArrays extends com.google.protobuf.GeneratedMessage
+ implements
+ // @@protoc_insertion_point(message_implements:google.maps.solar.v1.BuildingInsights.DetectedArrays)
+ DetectedArraysOrBuilder {
+ private static final long serialVersionUID = 0L;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "DetectedArrays");
+ }
+
+ // Use DetectedArrays.newBuilder() to construct.
+ private DetectedArrays(com.google.protobuf.GeneratedMessage.Builder> builder) {
+ super(builder);
+ }
+
+ private DetectedArrays() {
+ detectionStatus_ = 0;
+ }
+
+ public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
+ return com.google.maps.solar.v1.SolarServiceProto
+ .internal_static_google_maps_solar_v1_BuildingInsights_DetectedArrays_descriptor;
+ }
+
+ @java.lang.Override
+ protected com.google.protobuf.GeneratedMessage.FieldAccessorTable
+ internalGetFieldAccessorTable() {
+ return com.google.maps.solar.v1.SolarServiceProto
+ .internal_static_google_maps_solar_v1_BuildingInsights_DetectedArrays_fieldAccessorTable
+ .ensureFieldAccessorsInitialized(
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.class,
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.Builder.class);
+ }
+
+ /**
+ *
+ *
+ *
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ * Protobuf enum {@code google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus}
+ */
+ public enum DetectionStatus implements com.google.protobuf.ProtocolMessageEnum {
+ /**
+ *
+ *
+ *
+ * Unspecified status.
+ *
+ *
+ * DETECTION_STATUS_UNSPECIFIED = 0;
+ */
+ DETECTION_STATUS_UNSPECIFIED(0),
+ /**
+ *
+ *
+ *
+ * Detected solar array data is unavailable for this building.
+ *
+ *
+ * DETECTION_STATUS_DATA_UNAVAILABLE = 1;
+ */
+ DETECTION_STATUS_DATA_UNAVAILABLE(1),
+ /**
+ *
+ *
+ *
+ * At least one solar array has been detected for this building.
+ *
+ *
+ * DETECTION_STATUS_ARRAYS_DETECTED = 2;
+ */
+ DETECTION_STATUS_ARRAYS_DETECTED(2),
+ /**
+ *
+ *
+ *
+ * No solar arrays detected for this building.
+ *
+ *
+ * DETECTION_STATUS_NO_ARRAYS_DETECTED = 3;
+ */
+ DETECTION_STATUS_NO_ARRAYS_DETECTED(3),
+ UNRECOGNIZED(-1),
+ ;
+
+ static {
+ com.google.protobuf.RuntimeVersion.validateProtobufGencodeVersion(
+ com.google.protobuf.RuntimeVersion.RuntimeDomain.PUBLIC,
+ /* major= */ 4,
+ /* minor= */ 33,
+ /* patch= */ 6,
+ /* suffix= */ "",
+ "DetectionStatus");
+ }
+
+ /**
+ *
+ *
+ *
+ * Unspecified status.
+ *
+ *
+ * DETECTION_STATUS_UNSPECIFIED = 0;
+ */
+ public static final int DETECTION_STATUS_UNSPECIFIED_VALUE = 0;
+
+ /**
+ *
+ *
+ *
+ * Detected solar array data is unavailable for this building.
+ *
+ *
+ * DETECTION_STATUS_DATA_UNAVAILABLE = 1;
+ */
+ public static final int DETECTION_STATUS_DATA_UNAVAILABLE_VALUE = 1;
+
+ /**
+ *
+ *
+ *
+ * At least one solar array has been detected for this building.
+ *
+ *
+ * DETECTION_STATUS_ARRAYS_DETECTED = 2;
+ */
+ public static final int DETECTION_STATUS_ARRAYS_DETECTED_VALUE = 2;
+
+ /**
+ *
+ *
+ *
+ * No solar arrays detected for this building.
+ *
+ *
+ * DETECTION_STATUS_NO_ARRAYS_DETECTED = 3;
+ */
+ public static final int DETECTION_STATUS_NO_ARRAYS_DETECTED_VALUE = 3;
+
+ public final int getNumber() {
+ if (this == UNRECOGNIZED) {
+ throw new java.lang.IllegalArgumentException(
+ "Can't get the number of an unknown enum value.");
+ }
+ return value;
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ * @deprecated Use {@link #forNumber(int)} instead.
+ */
+ @java.lang.Deprecated
+ public static DetectionStatus valueOf(int value) {
+ return forNumber(value);
+ }
+
+ /**
+ * @param value The numeric wire value of the corresponding enum entry.
+ * @return The enum associated with the given numeric wire value.
+ */
+ public static DetectionStatus forNumber(int value) {
+ switch (value) {
+ case 0:
+ return DETECTION_STATUS_UNSPECIFIED;
+ case 1:
+ return DETECTION_STATUS_DATA_UNAVAILABLE;
+ case 2:
+ return DETECTION_STATUS_ARRAYS_DETECTED;
+ case 3:
+ return DETECTION_STATUS_NO_ARRAYS_DETECTED;
+ default:
+ return null;
+ }
+ }
+
+ public static com.google.protobuf.Internal.EnumLiteMap
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @return The enum numeric value on the wire for detectionStatus.
+ */
+ @java.lang.Override
+ public int getDetectionStatusValue() {
+ return detectionStatus_;
+ }
+
+ /**
+ *
+ *
+ *
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @return The detectionStatus.
+ */
+ @java.lang.Override
+ public com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus
+ getDetectionStatus() {
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus result =
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus.forNumber(
+ detectionStatus_);
+ return result == null
+ ? com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus.UNRECOGNIZED
+ : result;
+ }
+
+ public static final int LATEST_CAPTURE_DATE_FIELD_NUMBER = 3;
+ private com.google.type.Date latestCaptureDate_;
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ *
+ * @return Whether the latestCaptureDate field is set.
+ */
+ @java.lang.Override
+ public boolean hasLatestCaptureDate() {
+ return ((bitField0_ & 0x00000001) != 0);
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ *
+ * @return The latestCaptureDate.
+ */
+ @java.lang.Override
+ public com.google.type.Date getLatestCaptureDate() {
+ return latestCaptureDate_ == null
+ ? com.google.type.Date.getDefaultInstance()
+ : latestCaptureDate_;
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ @java.lang.Override
+ public com.google.type.DateOrBuilder getLatestCaptureDateOrBuilder() {
+ return latestCaptureDate_ == null
+ ? com.google.type.Date.getDefaultInstance()
+ : latestCaptureDate_;
+ }
+
+ private byte memoizedIsInitialized = -1;
+
+ @java.lang.Override
+ public final boolean isInitialized() {
+ byte isInitialized = memoizedIsInitialized;
+ if (isInitialized == 1) return true;
+ if (isInitialized == 0) return false;
+
+ memoizedIsInitialized = 1;
+ return true;
+ }
+
+ @java.lang.Override
+ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io.IOException {
+ if (detectionStatus_
+ != com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus
+ .DETECTION_STATUS_UNSPECIFIED
+ .getNumber()) {
+ output.writeEnum(1, detectionStatus_);
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ output.writeMessage(3, getLatestCaptureDate());
+ }
+ getUnknownFields().writeTo(output);
+ }
+
+ @java.lang.Override
+ public int getSerializedSize() {
+ int size = memoizedSize;
+ if (size != -1) return size;
+
+ size = 0;
+ if (detectionStatus_
+ != com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus
+ .DETECTION_STATUS_UNSPECIFIED
+ .getNumber()) {
+ size += com.google.protobuf.CodedOutputStream.computeEnumSize(1, detectionStatus_);
+ }
+ if (((bitField0_ & 0x00000001) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(3, getLatestCaptureDate());
+ }
+ size += getUnknownFields().getSerializedSize();
+ memoizedSize = size;
+ return size;
+ }
+
+ @java.lang.Override
+ public boolean equals(final java.lang.Object obj) {
+ if (obj == this) {
+ return true;
+ }
+ if (!(obj instanceof com.google.maps.solar.v1.BuildingInsights.DetectedArrays)) {
+ return super.equals(obj);
+ }
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays other =
+ (com.google.maps.solar.v1.BuildingInsights.DetectedArrays) obj;
+
+ if (detectionStatus_ != other.detectionStatus_) return false;
+ if (hasLatestCaptureDate() != other.hasLatestCaptureDate()) return false;
+ if (hasLatestCaptureDate()) {
+ if (!getLatestCaptureDate().equals(other.getLatestCaptureDate())) return false;
+ }
+ if (!getUnknownFields().equals(other.getUnknownFields())) return false;
+ return true;
+ }
+
+ @java.lang.Override
+ public int hashCode() {
+ if (memoizedHashCode != 0) {
+ return memoizedHashCode;
+ }
+ int hash = 41;
+ hash = (19 * hash) + getDescriptor().hashCode();
+ hash = (37 * hash) + DETECTION_STATUS_FIELD_NUMBER;
+ hash = (53 * hash) + detectionStatus_;
+ if (hasLatestCaptureDate()) {
+ hash = (37 * hash) + LATEST_CAPTURE_DATE_FIELD_NUMBER;
+ hash = (53 * hash) + getLatestCaptureDate().hashCode();
+ }
+ hash = (29 * hash) + getUnknownFields().hashCode();
+ memoizedHashCode = hash;
+ return hash;
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ java.nio.ByteBuffer data) throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ java.nio.ByteBuffer data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ com.google.protobuf.ByteString data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ com.google.protobuf.ByteString data,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(byte[] data)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ byte[] data, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws com.google.protobuf.InvalidProtocolBufferException {
+ return PARSER.parseFrom(data, extensionRegistry);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseDelimitedFrom(
+ java.io.InputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(PARSER, input);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseDelimitedFrom(
+ java.io.InputStream input, com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseDelimitedWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ com.google.protobuf.CodedInputStream input) throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(PARSER, input);
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays parseFrom(
+ com.google.protobuf.CodedInputStream input,
+ com.google.protobuf.ExtensionRegistryLite extensionRegistry)
+ throws java.io.IOException {
+ return com.google.protobuf.GeneratedMessage.parseWithIOException(
+ PARSER, input, extensionRegistry);
+ }
+
+ @java.lang.Override
+ public Builder newBuilderForType() {
+ return newBuilder();
+ }
+
+ public static Builder newBuilder() {
+ return DEFAULT_INSTANCE.toBuilder();
+ }
+
+ public static Builder newBuilder(
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays prototype) {
+ return DEFAULT_INSTANCE.toBuilder().mergeFrom(prototype);
+ }
+
+ @java.lang.Override
+ public Builder toBuilder() {
+ return this == DEFAULT_INSTANCE ? new Builder() : new Builder().mergeFrom(this);
+ }
+
+ @java.lang.Override
+ protected Builder newBuilderForType(com.google.protobuf.GeneratedMessage.BuilderParent parent) {
+ Builder builder = new Builder(parent);
+ return builder;
+ }
+
+ /**
+ *
+ *
+ *
+ * Information about solar arrays detected on the building.
+ *
+ *
+ * Protobuf type {@code google.maps.solar.v1.BuildingInsights.DetectedArrays}
+ */
+ public static final class Builder extends com.google.protobuf.GeneratedMessage.Builder
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @return The enum numeric value on the wire for detectionStatus.
+ */
+ @java.lang.Override
+ public int getDetectionStatusValue() {
+ return detectionStatus_;
+ }
+
+ /**
+ *
+ *
+ *
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @param value The enum numeric value on the wire for detectionStatus to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDetectionStatusValue(int value) {
+ detectionStatus_ = value;
+ bitField0_ |= 0x00000001;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @return The detectionStatus.
+ */
+ @java.lang.Override
+ public com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus
+ getDetectionStatus() {
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus result =
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus.forNumber(
+ detectionStatus_);
+ return result == null
+ ? com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus.UNRECOGNIZED
+ : result;
+ }
+
+ /**
+ *
+ *
+ *
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @param value The detectionStatus to set.
+ * @return This builder for chaining.
+ */
+ public Builder setDetectionStatus(
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ bitField0_ |= 0x00000001;
+ detectionStatus_ = value.getNumber();
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Indicates the detection status of solar arrays for this building.
+ *
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays.DetectionStatus detection_status = 1;
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearDetectionStatus() {
+ bitField0_ = (bitField0_ & ~0x00000001);
+ detectionStatus_ = 0;
+ onChanged();
+ return this;
+ }
+
+ private com.google.type.Date latestCaptureDate_;
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder>
+ latestCaptureDateBuilder_;
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ *
+ * @return Whether the latestCaptureDate field is set.
+ */
+ public boolean hasLatestCaptureDate() {
+ return ((bitField0_ & 0x00000002) != 0);
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ *
+ * @return The latestCaptureDate.
+ */
+ public com.google.type.Date getLatestCaptureDate() {
+ if (latestCaptureDateBuilder_ == null) {
+ return latestCaptureDate_ == null
+ ? com.google.type.Date.getDefaultInstance()
+ : latestCaptureDate_;
+ } else {
+ return latestCaptureDateBuilder_.getMessage();
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ public Builder setLatestCaptureDate(com.google.type.Date value) {
+ if (latestCaptureDateBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ latestCaptureDate_ = value;
+ } else {
+ latestCaptureDateBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ public Builder setLatestCaptureDate(com.google.type.Date.Builder builderForValue) {
+ if (latestCaptureDateBuilder_ == null) {
+ latestCaptureDate_ = builderForValue.build();
+ } else {
+ latestCaptureDateBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ public Builder mergeLatestCaptureDate(com.google.type.Date value) {
+ if (latestCaptureDateBuilder_ == null) {
+ if (((bitField0_ & 0x00000002) != 0)
+ && latestCaptureDate_ != null
+ && latestCaptureDate_ != com.google.type.Date.getDefaultInstance()) {
+ getLatestCaptureDateBuilder().mergeFrom(value);
+ } else {
+ latestCaptureDate_ = value;
+ }
+ } else {
+ latestCaptureDateBuilder_.mergeFrom(value);
+ }
+ if (latestCaptureDate_ != null) {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ public Builder clearLatestCaptureDate() {
+ bitField0_ = (bitField0_ & ~0x00000002);
+ latestCaptureDate_ = null;
+ if (latestCaptureDateBuilder_ != null) {
+ latestCaptureDateBuilder_.dispose();
+ latestCaptureDateBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ public com.google.type.Date.Builder getLatestCaptureDateBuilder() {
+ bitField0_ |= 0x00000002;
+ onChanged();
+ return internalGetLatestCaptureDateFieldBuilder().getBuilder();
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ public com.google.type.DateOrBuilder getLatestCaptureDateOrBuilder() {
+ if (latestCaptureDateBuilder_ != null) {
+ return latestCaptureDateBuilder_.getMessageOrBuilder();
+ } else {
+ return latestCaptureDate_ == null
+ ? com.google.type.Date.getDefaultInstance()
+ : latestCaptureDate_;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * The date indicating when the latest solar array data was captured.
+ *
+ *
+ * .google.type.Date latest_capture_date = 3;
+ */
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.type.Date, com.google.type.Date.Builder, com.google.type.DateOrBuilder>
+ internalGetLatestCaptureDateFieldBuilder() {
+ if (latestCaptureDateBuilder_ == null) {
+ latestCaptureDateBuilder_ =
+ new com.google.protobuf.SingleFieldBuilder<
+ com.google.type.Date,
+ com.google.type.Date.Builder,
+ com.google.type.DateOrBuilder>(
+ getLatestCaptureDate(), getParentForChildren(), isClean());
+ latestCaptureDate_ = null;
+ }
+ return latestCaptureDateBuilder_;
+ }
+
+ // @@protoc_insertion_point(builder_scope:google.maps.solar.v1.BuildingInsights.DetectedArrays)
+ }
+
+ // @@protoc_insertion_point(class_scope:google.maps.solar.v1.BuildingInsights.DetectedArrays)
+ private static final com.google.maps.solar.v1.BuildingInsights.DetectedArrays DEFAULT_INSTANCE;
+
+ static {
+ DEFAULT_INSTANCE = new com.google.maps.solar.v1.BuildingInsights.DetectedArrays();
+ }
+
+ public static com.google.maps.solar.v1.BuildingInsights.DetectedArrays getDefaultInstance() {
+ return DEFAULT_INSTANCE;
+ }
+
+ private static final com.google.protobuf.Parser
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ *
+ * @return Whether the detectedArrays field is set.
+ */
+ @java.lang.Override
+ public boolean hasDetectedArrays() {
+ return ((bitField0_ & 0x00000020) != 0);
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ *
+ * @return The detectedArrays.
+ */
+ @java.lang.Override
+ public com.google.maps.solar.v1.BuildingInsights.DetectedArrays getDetectedArrays() {
+ return detectedArrays_ == null
+ ? com.google.maps.solar.v1.BuildingInsights.DetectedArrays.getDefaultInstance()
+ : detectedArrays_;
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ @java.lang.Override
+ public com.google.maps.solar.v1.BuildingInsights.DetectedArraysOrBuilder
+ getDetectedArraysOrBuilder() {
+ return detectedArrays_ == null
+ ? com.google.maps.solar.v1.BuildingInsights.DetectedArrays.getDefaultInstance()
+ : detectedArrays_;
+ }
+
private byte memoizedIsInitialized = -1;
@java.lang.Override
@@ -687,6 +1879,9 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
if (((bitField0_ & 0x00000008) != 0)) {
output.writeMessage(11, getImageryProcessedDate());
}
+ if (((bitField0_ & 0x00000020) != 0)) {
+ output.writeMessage(12, getDetectedArrays());
+ }
getUnknownFields().writeTo(output);
}
@@ -731,6 +1926,9 @@ public int getSerializedSize() {
size +=
com.google.protobuf.CodedOutputStream.computeMessageSize(11, getImageryProcessedDate());
}
+ if (((bitField0_ & 0x00000020) != 0)) {
+ size += com.google.protobuf.CodedOutputStream.computeMessageSize(12, getDetectedArrays());
+ }
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
@@ -773,6 +1971,10 @@ public boolean equals(final java.lang.Object obj) {
if (!getSolarPotential().equals(other.getSolarPotential())) return false;
}
if (imageryQuality_ != other.imageryQuality_) return false;
+ if (hasDetectedArrays() != other.hasDetectedArrays()) return false;
+ if (hasDetectedArrays()) {
+ if (!getDetectedArrays().equals(other.getDetectedArrays())) return false;
+ }
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@@ -816,6 +2018,10 @@ public int hashCode() {
}
hash = (37 * hash) + IMAGERY_QUALITY_FIELD_NUMBER;
hash = (53 * hash) + imageryQuality_;
+ if (hasDetectedArrays()) {
+ hash = (37 * hash) + DETECTED_ARRAYS_FIELD_NUMBER;
+ hash = (53 * hash) + getDetectedArrays().hashCode();
+ }
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
@@ -964,6 +2170,7 @@ private void maybeForceBuilderInitialization() {
internalGetImageryDateFieldBuilder();
internalGetImageryProcessedDateFieldBuilder();
internalGetSolarPotentialFieldBuilder();
+ internalGetDetectedArraysFieldBuilder();
}
}
@@ -1002,6 +2209,11 @@ public Builder clear() {
solarPotentialBuilder_ = null;
}
imageryQuality_ = 0;
+ detectedArrays_ = null;
+ if (detectedArraysBuilder_ != null) {
+ detectedArraysBuilder_.dispose();
+ detectedArraysBuilder_ = null;
+ }
return this;
}
@@ -1083,6 +2295,11 @@ private void buildPartial0(com.google.maps.solar.v1.BuildingInsights result) {
if (((from_bitField0_ & 0x00000400) != 0)) {
result.imageryQuality_ = imageryQuality_;
}
+ if (((from_bitField0_ & 0x00000800) != 0)) {
+ result.detectedArrays_ =
+ detectedArraysBuilder_ == null ? detectedArrays_ : detectedArraysBuilder_.build();
+ to_bitField0_ |= 0x00000020;
+ }
result.bitField0_ |= to_bitField0_;
}
@@ -1141,6 +2358,9 @@ public Builder mergeFrom(com.google.maps.solar.v1.BuildingInsights other) {
if (other.imageryQuality_ != 0) {
setImageryQualityValue(other.getImageryQualityValue());
}
+ if (other.hasDetectedArrays()) {
+ mergeDetectedArrays(other.getDetectedArrays());
+ }
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
@@ -1237,6 +2457,13 @@ public Builder mergeFrom(
bitField0_ |= 0x00000010;
break;
} // case 90
+ case 98:
+ {
+ input.readMessage(
+ internalGetDetectedArraysFieldBuilder().getBuilder(), extensionRegistry);
+ bitField0_ |= 0x00000800;
+ break;
+ } // case 98
default:
{
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
@@ -2857,6 +4084,224 @@ public Builder clearImageryQuality() {
return this;
}
+ private com.google.maps.solar.v1.BuildingInsights.DetectedArrays detectedArrays_;
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays,
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.Builder,
+ com.google.maps.solar.v1.BuildingInsights.DetectedArraysOrBuilder>
+ detectedArraysBuilder_;
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ *
+ * @return Whether the detectedArrays field is set.
+ */
+ public boolean hasDetectedArrays() {
+ return ((bitField0_ & 0x00000800) != 0);
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ *
+ * @return The detectedArrays.
+ */
+ public com.google.maps.solar.v1.BuildingInsights.DetectedArrays getDetectedArrays() {
+ if (detectedArraysBuilder_ == null) {
+ return detectedArrays_ == null
+ ? com.google.maps.solar.v1.BuildingInsights.DetectedArrays.getDefaultInstance()
+ : detectedArrays_;
+ } else {
+ return detectedArraysBuilder_.getMessage();
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ public Builder setDetectedArrays(
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays value) {
+ if (detectedArraysBuilder_ == null) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ detectedArrays_ = value;
+ } else {
+ detectedArraysBuilder_.setMessage(value);
+ }
+ bitField0_ |= 0x00000800;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ public Builder setDetectedArrays(
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.Builder builderForValue) {
+ if (detectedArraysBuilder_ == null) {
+ detectedArrays_ = builderForValue.build();
+ } else {
+ detectedArraysBuilder_.setMessage(builderForValue.build());
+ }
+ bitField0_ |= 0x00000800;
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ public Builder mergeDetectedArrays(
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays value) {
+ if (detectedArraysBuilder_ == null) {
+ if (((bitField0_ & 0x00000800) != 0)
+ && detectedArrays_ != null
+ && detectedArrays_
+ != com.google.maps.solar.v1.BuildingInsights.DetectedArrays.getDefaultInstance()) {
+ getDetectedArraysBuilder().mergeFrom(value);
+ } else {
+ detectedArrays_ = value;
+ }
+ } else {
+ detectedArraysBuilder_.mergeFrom(value);
+ }
+ if (detectedArrays_ != null) {
+ bitField0_ |= 0x00000800;
+ onChanged();
+ }
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ public Builder clearDetectedArrays() {
+ bitField0_ = (bitField0_ & ~0x00000800);
+ detectedArrays_ = null;
+ if (detectedArraysBuilder_ != null) {
+ detectedArraysBuilder_.dispose();
+ detectedArraysBuilder_ = null;
+ }
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ public com.google.maps.solar.v1.BuildingInsights.DetectedArrays.Builder
+ getDetectedArraysBuilder() {
+ bitField0_ |= 0x00000800;
+ onChanged();
+ return internalGetDetectedArraysFieldBuilder().getBuilder();
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ public com.google.maps.solar.v1.BuildingInsights.DetectedArraysOrBuilder
+ getDetectedArraysOrBuilder() {
+ if (detectedArraysBuilder_ != null) {
+ return detectedArraysBuilder_.getMessageOrBuilder();
+ } else {
+ return detectedArrays_ == null
+ ? com.google.maps.solar.v1.BuildingInsights.DetectedArrays.getDefaultInstance()
+ : detectedArrays_;
+ }
+ }
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ private com.google.protobuf.SingleFieldBuilder<
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays,
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.Builder,
+ com.google.maps.solar.v1.BuildingInsights.DetectedArraysOrBuilder>
+ internalGetDetectedArraysFieldBuilder() {
+ if (detectedArraysBuilder_ == null) {
+ detectedArraysBuilder_ =
+ new com.google.protobuf.SingleFieldBuilder<
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays,
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays.Builder,
+ com.google.maps.solar.v1.BuildingInsights.DetectedArraysOrBuilder>(
+ getDetectedArrays(), getParentForChildren(), isClean());
+ detectedArrays_ = null;
+ }
+ return detectedArraysBuilder_;
+ }
+
// @@protoc_insertion_point(builder_scope:google.maps.solar.v1.BuildingInsights)
}
diff --git a/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/BuildingInsightsOrBuilder.java b/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/BuildingInsightsOrBuilder.java
index 1ba54f95ed68..f610af7c2b0a 100644
--- a/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/BuildingInsightsOrBuilder.java
+++ b/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/BuildingInsightsOrBuilder.java
@@ -368,4 +368,47 @@ public interface BuildingInsightsOrBuilder
* @return The imageryQuality.
*/
com.google.maps.solar.v1.ImageryQuality getImageryQuality();
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ *
+ * @return Whether the detectedArrays field is set.
+ */
+ boolean hasDetectedArrays();
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ *
+ * @return The detectedArrays.
+ */
+ com.google.maps.solar.v1.BuildingInsights.DetectedArrays getDetectedArrays();
+
+ /**
+ *
+ *
+ *
+ * Solar arrays detected on the building. This field is only populated if
+ * DETECTED_ARRAYS is included in the request's
+ * [FindClosestBuildingInsightsRequest.additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights].
+ *
+ *
+ * .google.maps.solar.v1.BuildingInsights.DetectedArrays detected_arrays = 12;
+ */
+ com.google.maps.solar.v1.BuildingInsights.DetectedArraysOrBuilder getDetectedArraysOrBuilder();
}
diff --git a/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/DataLayerView.java b/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/DataLayerView.java
index a3d21a6e209b..0694430bfc75 100644
--- a/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/DataLayerView.java
+++ b/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/DataLayerView.java
@@ -235,7 +235,7 @@ public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType
}
public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
- return com.google.maps.solar.v1.SolarServiceProto.getDescriptor().getEnumTypes().get(0);
+ return com.google.maps.solar.v1.SolarServiceProto.getDescriptor().getEnumTypes().get(1);
}
private static final DataLayerView[] VALUES = values();
diff --git a/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/Experiment.java b/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/Experiment.java
index 03089bdce4ae..ed5fe56d499f 100644
--- a/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/Experiment.java
+++ b/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/Experiment.java
@@ -156,7 +156,7 @@ public final com.google.protobuf.Descriptors.EnumDescriptor getDescriptorForType
}
public static com.google.protobuf.Descriptors.EnumDescriptor getDescriptor() {
- return com.google.maps.solar.v1.SolarServiceProto.getDescriptor().getEnumTypes().get(3);
+ return com.google.maps.solar.v1.SolarServiceProto.getDescriptor().getEnumTypes().get(4);
}
private static final Experiment[] VALUES = values();
diff --git a/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/FindClosestBuildingInsightsRequest.java b/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/FindClosestBuildingInsightsRequest.java
index 0b9a931275dd..9120742eff4a 100644
--- a/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/FindClosestBuildingInsightsRequest.java
+++ b/java-maps-solar/proto-google-maps-solar-v1/src/main/java/com/google/maps/solar/v1/FindClosestBuildingInsightsRequest.java
@@ -55,6 +55,7 @@ private FindClosestBuildingInsightsRequest(
private FindClosestBuildingInsightsRequest() {
requiredQuality_ = 0;
experiments_ = emptyIntList();
+ additionalInsights_ = emptyIntList();
}
public static final com.google.protobuf.Descriptors.Descriptor getDescriptor() {
@@ -215,7 +216,13 @@ public com.google.maps.solar.v1.Experiment convert(int from) {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -234,7 +241,13 @@ public java.util.List
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -252,7 +265,13 @@ public int getExperimentsCount() {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -271,7 +290,13 @@ public com.google.maps.solar.v1.Experiment getExperiments(int index) {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -289,7 +314,13 @@ public java.util.List
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -306,6 +337,131 @@ public int getExperimentsValue(int index) {
private int experimentsMemoizedSerializedSize;
+ public static final int ADDITIONAL_INSIGHTS_FIELD_NUMBER = 6;
+
+ @SuppressWarnings("serial")
+ private com.google.protobuf.Internal.IntList additionalInsights_ = emptyIntList();
+
+ private static final com.google.protobuf.Internal.IntListAdapter.IntConverter<
+ com.google.maps.solar.v1.AdditionalInsights>
+ additionalInsights_converter_ =
+ new com.google.protobuf.Internal.IntListAdapter.IntConverter<
+ com.google.maps.solar.v1.AdditionalInsights>() {
+ public com.google.maps.solar.v1.AdditionalInsights convert(int from) {
+ com.google.maps.solar.v1.AdditionalInsights result =
+ com.google.maps.solar.v1.AdditionalInsights.forNumber(from);
+ return result == null
+ ? com.google.maps.solar.v1.AdditionalInsights.UNRECOGNIZED
+ : result;
+ }
+ };
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return A list containing the additionalInsights.
+ */
+ @java.lang.Override
+ public java.util.List
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return The count of additionalInsights.
+ */
+ @java.lang.Override
+ public int getAdditionalInsightsCount() {
+ return additionalInsights_.size();
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param index The index of the element to return.
+ * @return The additionalInsights at the given index.
+ */
+ @java.lang.Override
+ public com.google.maps.solar.v1.AdditionalInsights getAdditionalInsights(int index) {
+ return additionalInsights_converter_.convert(additionalInsights_.getInt(index));
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return A list containing the enum numeric values on the wire for additionalInsights.
+ */
+ @java.lang.Override
+ public java.util.List
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param index The index of the value to return.
+ * @return The enum numeric value on the wire of additionalInsights at the given index.
+ */
+ @java.lang.Override
+ public int getAdditionalInsightsValue(int index) {
+ return additionalInsights_.getInt(index);
+ }
+
+ private int additionalInsightsMemoizedSerializedSize;
+
private byte memoizedIsInitialized = -1;
@java.lang.Override
@@ -338,6 +494,13 @@ public void writeTo(com.google.protobuf.CodedOutputStream output) throws java.io
for (int i = 0; i < experiments_.size(); i++) {
output.writeEnumNoTag(experiments_.getInt(i));
}
+ if (getAdditionalInsightsList().size() > 0) {
+ output.writeUInt32NoTag(50);
+ output.writeUInt32NoTag(additionalInsightsMemoizedSerializedSize);
+ }
+ for (int i = 0; i < additionalInsights_.size(); i++) {
+ output.writeEnumNoTag(additionalInsights_.getInt(i));
+ }
getUnknownFields().writeTo(output);
}
@@ -370,6 +533,20 @@ public int getSerializedSize() {
}
experimentsMemoizedSerializedSize = dataSize;
}
+ {
+ int dataSize = 0;
+ for (int i = 0; i < additionalInsights_.size(); i++) {
+ dataSize +=
+ com.google.protobuf.CodedOutputStream.computeEnumSizeNoTag(
+ additionalInsights_.getInt(i));
+ }
+ size += dataSize;
+ if (!getAdditionalInsightsList().isEmpty()) {
+ size += 1;
+ size += com.google.protobuf.CodedOutputStream.computeUInt32SizeNoTag(dataSize);
+ }
+ additionalInsightsMemoizedSerializedSize = dataSize;
+ }
size += getUnknownFields().getSerializedSize();
memoizedSize = size;
return size;
@@ -393,6 +570,7 @@ public boolean equals(final java.lang.Object obj) {
if (requiredQuality_ != other.requiredQuality_) return false;
if (getExactQualityRequired() != other.getExactQualityRequired()) return false;
if (!experiments_.equals(other.experiments_)) return false;
+ if (!additionalInsights_.equals(other.additionalInsights_)) return false;
if (!getUnknownFields().equals(other.getUnknownFields())) return false;
return true;
}
@@ -416,6 +594,10 @@ public int hashCode() {
hash = (37 * hash) + EXPERIMENTS_FIELD_NUMBER;
hash = (53 * hash) + experiments_.hashCode();
}
+ if (getAdditionalInsightsCount() > 0) {
+ hash = (37 * hash) + ADDITIONAL_INSIGHTS_FIELD_NUMBER;
+ hash = (53 * hash) + additionalInsights_.hashCode();
+ }
hash = (29 * hash) + getUnknownFields().hashCode();
memoizedHashCode = hash;
return hash;
@@ -574,6 +756,7 @@ public Builder clear() {
requiredQuality_ = 0;
exactQualityRequired_ = false;
experiments_ = emptyIntList();
+ additionalInsights_ = emptyIntList();
return this;
}
@@ -625,6 +808,10 @@ private void buildPartial0(com.google.maps.solar.v1.FindClosestBuildingInsightsR
experiments_.makeImmutable();
result.experiments_ = experiments_;
}
+ if (((from_bitField0_ & 0x00000010) != 0)) {
+ additionalInsights_.makeImmutable();
+ result.additionalInsights_ = additionalInsights_;
+ }
result.bitField0_ |= to_bitField0_;
}
@@ -661,6 +848,17 @@ public Builder mergeFrom(com.google.maps.solar.v1.FindClosestBuildingInsightsReq
}
onChanged();
}
+ if (!other.additionalInsights_.isEmpty()) {
+ if (additionalInsights_.isEmpty()) {
+ additionalInsights_ = other.additionalInsights_;
+ additionalInsights_.makeImmutable();
+ bitField0_ |= 0x00000010;
+ } else {
+ ensureAdditionalInsightsIsMutable();
+ additionalInsights_.addAll(other.additionalInsights_);
+ }
+ onChanged();
+ }
this.mergeUnknownFields(other.getUnknownFields());
onChanged();
return this;
@@ -724,6 +922,24 @@ public Builder mergeFrom(
input.popLimit(limit);
break;
} // case 42
+ case 48:
+ {
+ int tmpRaw = input.readEnum();
+ ensureAdditionalInsightsIsMutable();
+ additionalInsights_.addInt(tmpRaw);
+ break;
+ } // case 48
+ case 50:
+ {
+ int length = input.readRawVarint32();
+ int limit = input.pushLimit(length);
+ ensureAdditionalInsightsIsMutable();
+ while (input.getBytesUntilLimit() > 0) {
+ additionalInsights_.addInt(input.readEnum());
+ }
+ input.popLimit(limit);
+ break;
+ } // case 50
default:
{
if (!super.parseUnknownField(input, extensionRegistry, tag)) {
@@ -1136,7 +1352,13 @@ private void ensureExperimentsIsMutable() {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1154,7 +1376,13 @@ public java.util.List
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1171,7 +1399,13 @@ public int getExperimentsCount() {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1189,7 +1423,13 @@ public com.google.maps.solar.v1.Experiment getExperiments(int index) {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1214,7 +1454,13 @@ public Builder setExperiments(int index, com.google.maps.solar.v1.Experiment val
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1238,7 +1484,13 @@ public Builder addExperiments(com.google.maps.solar.v1.Experiment value) {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1262,7 +1514,13 @@ public Builder addAllExperiments(
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1282,7 +1540,13 @@ public Builder clearExperiments() {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1300,7 +1564,13 @@ public java.util.List
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1318,7 +1588,13 @@ public int getExperimentsValue(int index) {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1340,7 +1616,13 @@ public Builder setExperimentsValue(int index, int value) {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1361,7 +1643,13 @@ public Builder addExperimentsValue(int value) {
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -1380,6 +1668,289 @@ public Builder addAllExperimentsValue(java.lang.Iterable
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return A list containing the additionalInsights.
+ */
+ public java.util.List
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return The count of additionalInsights.
+ */
+ public int getAdditionalInsightsCount() {
+ return additionalInsights_.size();
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param index The index of the element to return.
+ * @return The additionalInsights at the given index.
+ */
+ public com.google.maps.solar.v1.AdditionalInsights getAdditionalInsights(int index) {
+ return additionalInsights_converter_.convert(additionalInsights_.getInt(index));
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param index The index to set the value at.
+ * @param value The additionalInsights to set.
+ * @return This builder for chaining.
+ */
+ public Builder setAdditionalInsights(
+ int index, com.google.maps.solar.v1.AdditionalInsights value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureAdditionalInsightsIsMutable();
+ additionalInsights_.setInt(index, value.getNumber());
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param value The additionalInsights to add.
+ * @return This builder for chaining.
+ */
+ public Builder addAdditionalInsights(com.google.maps.solar.v1.AdditionalInsights value) {
+ if (value == null) {
+ throw new NullPointerException();
+ }
+ ensureAdditionalInsightsIsMutable();
+ additionalInsights_.addInt(value.getNumber());
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param values The additionalInsights to add.
+ * @return This builder for chaining.
+ */
+ public Builder addAllAdditionalInsights(
+ java.lang.Iterable extends com.google.maps.solar.v1.AdditionalInsights> values) {
+ ensureAdditionalInsightsIsMutable();
+ for (com.google.maps.solar.v1.AdditionalInsights value : values) {
+ additionalInsights_.addInt(value.getNumber());
+ }
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return This builder for chaining.
+ */
+ public Builder clearAdditionalInsights() {
+ additionalInsights_ = emptyIntList();
+ bitField0_ = (bitField0_ & ~0x00000010);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @return A list containing the enum numeric values on the wire for additionalInsights.
+ */
+ public java.util.List
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param index The index of the value to return.
+ * @return The enum numeric value on the wire of additionalInsights at the given index.
+ */
+ public int getAdditionalInsightsValue(int index) {
+ return additionalInsights_.getInt(index);
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param index The index to set the value at.
+ * @param value The enum numeric value on the wire for additionalInsights to set.
+ * @return This builder for chaining.
+ */
+ public Builder setAdditionalInsightsValue(int index, int value) {
+ ensureAdditionalInsightsIsMutable();
+ additionalInsights_.setInt(index, value);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param value The enum numeric value on the wire for additionalInsights to add.
+ * @return This builder for chaining.
+ */
+ public Builder addAdditionalInsightsValue(int value) {
+ ensureAdditionalInsightsIsMutable();
+ additionalInsights_.addInt(value);
+ onChanged();
+ return this;
+ }
+
+ /**
+ *
+ *
+ *
+ * Optional. A list of
+ * [additional_insights][google.maps.solar.v1.FindClosestBuildingInsightsRequest.additional_insights]
+ * to be included in the response.
+ *
+ *
+ *
+ * repeated .google.maps.solar.v1.AdditionalInsights additional_insights = 6 [(.google.api.field_behavior) = OPTIONAL];
+ *
+ *
+ * @param values The enum numeric values on the wire for additionalInsights to add.
+ * @return This builder for chaining.
+ */
+ public Builder addAllAdditionalInsightsValue(java.lang.Iterable
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -137,7 +143,13 @@ public interface FindClosestBuildingInsightsRequestOrBuilder
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -152,7 +164,13 @@ public interface FindClosestBuildingInsightsRequestOrBuilder
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -168,7 +186,13 @@ public interface FindClosestBuildingInsightsRequestOrBuilder
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -183,7 +207,13 @@ public interface FindClosestBuildingInsightsRequestOrBuilder
*
*
*
- * Optional. Specifies the pre-GA features to enable.
+ * Optional. Specifies the pre-GA experiments to enable. Requests using this
+ * field are classified as a pre-GA offering under the [Google Maps Platform
+ * Service Specific
+ * Terms](https://cloud.google.com/maps-platform/terms/maps-service-terms).
+ * See [launch stage
+ * descriptions](https://cloud.google.com/maps-platform/terms/launch-stages)
+ * for more details.
*
*
*
@@ -194,4 +224,91 @@ public interface FindClosestBuildingInsightsRequestOrBuilder
* @return The enum numeric value on the wire of experiments at the given index.
*/
int getExperimentsValue(int index);
+
+ /**
+ *
+ *
+ *